// Path: unsafe-tests/src/main/java/net/bramp/unsafe/examples/LongPoint.java
// public class LongPoint implements Comparable<LongPoint> {
//   public long x;
//   public long y;
// 
//   public LongPoint(long x, long y) {
//     this.x = x;
//     this.y = y;
//   }
// 
//   public String toString() {
//     return "Point(" + x + "," + y + ")";
//   }
// 
//   @Override public boolean equals(Object obj) {
//     if (this == obj) {
//       return true;
//     }
//     if (obj == null || getClass() != obj.getClass()) {
//       return false;
//     }
//     LongPoint longPoint = (LongPoint) obj;
//     return Objects.equal(x, longPoint.x) && Objects.equal(y, longPoint.y);
//   }
// 
//   @Override public int hashCode() {
//     return Objects.hashCode(x, y);
//   }
// 
//   public int compareTo(LongPoint obj) {
//     return ComparisonChain.start().compare(x, obj.x).compare(y, obj.y).result();
//   }
// }
// 
// Path: unsafe-tests/src/main/java/net/bramp/unsafe/examples/Person.java
// public class Person {
// 
//   final String name;
//   final long birthday; // Timestamp (as returned by currentTimeMillis)
//   final char gender;
// 
//   public Person(String name, long birthday, char gender) {
//     this.name = name;
//     this.birthday = birthday;
//     this.gender = gender;
//   }
// 
//   public String getName() {
//     return name;
//   }
// 
//   public long getBirthday() {
//     return birthday;
//   }
// 
//   public char getGender() {
//     return gender;
//   }
// 
//   /**
//    * Note: Not accurate, but only used as an example.
//    *
//    * @return the age of the person in years.
//    */
//   public int getAge() {
//     return (int) ((System.currentTimeMillis() - birthday) / 1000 / 60 / 60 / 24 / 365);
//   }
// 
//   public String toString() {
//     return "Person(" + getName() + ", " + new Date(getBirthday()) + ", " + getGender() + ")";
//   }
// }


import net.bramp.unsafe.examples.LongPoint;
import net.bramp.unsafe.examples.Person;
import com.google.common.base.Stopwatch;
import java.util.ArrayList;
import java.util.Random;
import java.util.concurrent.TimeUnit;
package net.bramp.unsafe;




public class Main {

  /**
   * Prints the memory layout of various test classes.
   */
  public static void printMemoryLayout2() {
    Object o1 = new Object();
    Object o2 = new Object();

    Byte b1 = new Byte((byte) 0x12);
    Byte b2 = new Byte((byte) 0x34);
    Byte b3 = new Byte((byte) 0x56);

    Long l = new Long(0x0123456789ABCDEFL);
// Path: unsafe-tests/src/main/java/net/bramp/unsafe/examples/LongPoint.java
// public class LongPoint implements Comparable<LongPoint> {
//   public long x;
//   public long y;
// 
//   public LongPoint(long x, long y) {
//     this.x = x;
//     this.y = y;
//   }
// 
//   public String toString() {
//     return "Point(" + x + "," + y + ")";
//   }
// 
//   @Override public boolean equals(Object obj) {
//     if (this == obj) {
//       return true;
//     }
//     if (obj == null || getClass() != obj.getClass()) {
//       return false;
//     }
//     LongPoint longPoint = (LongPoint) obj;
//     return Objects.equal(x, longPoint.x) && Objects.equal(y, longPoint.y);
//   }
// 
//   @Override public int hashCode() {
//     return Objects.hashCode(x, y);
//   }
// 
//   public int compareTo(LongPoint obj) {
//     return ComparisonChain.start().compare(x, obj.x).compare(y, obj.y).result();
//   }
// }
// 
// Path: unsafe-tests/src/main/java/net/bramp/unsafe/examples/Person.java
// public class Person {
// 
//   final String name;
//   final long birthday; // Timestamp (as returned by currentTimeMillis)
//   final char gender;
// 
//   public Person(String name, long birthday, char gender) {
//     this.name = name;
//     this.birthday = birthday;
//     this.gender = gender;
//   }
// 
//   public String getName() {
//     return name;
//   }
// 
//   public long getBirthday() {
//     return birthday;
//   }
// 
//   public char getGender() {
//     return gender;
//   }
// 
//   /**
//    * Note: Not accurate, but only used as an example.
//    *
//    * @return the age of the person in years.
//    */
//   public int getAge() {
//     return (int) ((System.currentTimeMillis() - birthday) / 1000 / 60 / 60 / 24 / 365);
//   }
// 
//   public String toString() {
//     return "Person(" + getName() + ", " + new Date(getBirthday()) + ", " + getGender() + ")";
//   }
// }


// Path: unsafe-benchmark/src/main/java/net/bramp/unsafe/Main.java
import net.bramp.unsafe.examples.LongPoint;
import net.bramp.unsafe.examples.Person;
import com.google.common.base.Stopwatch;
import java.util.ArrayList;
import java.util.Random;
import java.util.concurrent.TimeUnit;

package net.bramp.unsafe;




public class Main {

  /**
   * Prints the memory layout of various test classes.
   */
  public static void printMemoryLayout2() {
    Object o1 = new Object();
    Object o2 = new Object();

    Byte b1 = new Byte((byte) 0x12);
    Byte b2 = new Byte((byte) 0x34);
    Byte b3 = new Byte((byte) 0x56);

    Long l = new Long(0x0123456789ABCDEFL);
    Person p = new Person("Bob", 406425600000L, 'M');