commit 2dffaf22669b444df1eb5c48faa4ccd53d251556
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Mon Feb 13 15:32:21 2023 +0100

    - add the Pyraminx Duo solver to the list
    - make the signature of an object independent of its location in the ObjectType enum

diff --git a/src/main/java/org/distorted/objectlib/helpers/ObjectSignature.java b/src/main/java/org/distorted/objectlib/helpers/ObjectSignature.java
index 30c0fe6b..5beca2e4 100644
--- a/src/main/java/org/distorted/objectlib/helpers/ObjectSignature.java
+++ b/src/main/java/org/distorted/objectlib/helpers/ObjectSignature.java
@@ -60,15 +60,6 @@ public class ObjectSignature implements Comparable<ObjectSignature>
       }
     }
 
-///////////////////////////////////////////////////////////////////////////////////////////////////
-// built-in objects
-
-  public ObjectSignature(ObjectType type)
-    {
-    mSignature = new long[SIZE];
-    mSignature[SIZE-1] = type.ordinal();
-    }
-
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
   public ObjectSignature(ObjectSignature sig)
@@ -89,7 +80,7 @@ public class ObjectSignature implements Comparable<ObjectSignature>
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
-// built-in bandaged 3x3s; objects created from JSON (version1)
+// built-in objects; objects created from JSON (version1)
 
   public ObjectSignature(long signature)
     {
diff --git a/src/main/java/org/distorted/objectlib/main/ObjectSignatures.java b/src/main/java/org/distorted/objectlib/main/ObjectSignatures.java
index 5546ba3e..cdd2b02e 100644
--- a/src/main/java/org/distorted/objectlib/main/ObjectSignatures.java
+++ b/src/main/java/org/distorted/objectlib/main/ObjectSignatures.java
@@ -13,73 +13,73 @@ package org.distorted.objectlib.main;
 
 public class ObjectSignatures
   {
-  public static final int CUBE_2 = ObjectType.CUBE_2.ordinal();
-  public static final int CUBE_3 = ObjectType.CUBE_3.ordinal();
-  public static final int CUBE_4 = ObjectType.CUBE_4.ordinal();
-  public static final int CUBE_5 = ObjectType.CUBE_5.ordinal();
-  public static final int CUBE_6 = ObjectType.CUBE_6.ordinal();
-  public static final int CUBE_7 = ObjectType.CUBE_7.ordinal();
-  public static final int MIRR_2 = ObjectType.MIRR_2.ordinal();
-  public static final int MIRR_3 = ObjectType.MIRR_3.ordinal();
-  public static final int MIRR_4 = ObjectType.MIRR_4.ordinal();
-  public static final int CU_323 = ObjectType.CU_323.ordinal();
-  public static final int CU_232 = ObjectType.CU_232.ordinal();
-  public static final int CU_343 = ObjectType.CU_343.ordinal();
-  public static final int ULTI_2 = ObjectType.ULTI_2.ordinal();
-  public static final int KILO_3 = ObjectType.KILO_3.ordinal();
-  public static final int KILO_5 = ObjectType.KILO_5.ordinal();
-  public static final int MEGA_3 = ObjectType.MEGA_3.ordinal();
-  public static final int MEGA_5 = ObjectType.MEGA_5.ordinal();
-  public static final int MORP_2 = ObjectType.MORP_2.ordinal();
-  public static final int MORP_3 = ObjectType.MORP_3.ordinal();
-  public static final int MORP_4 = ObjectType.MORP_4.ordinal();
-  public static final int JING_2 = ObjectType.JING_2.ordinal();
-  public static final int PYRA_3 = ObjectType.PYRA_3.ordinal();
-  public static final int PYRA_4 = ObjectType.PYRA_4.ordinal();
-  public static final int PYRA_5 = ObjectType.PYRA_5.ordinal();
-  public static final int TRAJ_3 = ObjectType.TRAJ_3.ordinal();
-  public static final int TRAJ_4 = ObjectType.TRAJ_4.ordinal();
-  public static final int DIAM_2 = ObjectType.DIAM_2.ordinal();
-  public static final int DIAM_3 = ObjectType.DIAM_3.ordinal();
-  public static final int DIAM_4 = ObjectType.DIAM_4.ordinal();
-  public static final int DINO_3 = ObjectType.DINO_3.ordinal();
-  public static final int DIN4_3 = ObjectType.DIN4_3.ordinal();
-  public static final int REDI_3 = ObjectType.REDI_3.ordinal();
-  public static final int HELI_3 = ObjectType.HELI_3.ordinal();
-  public static final int SKEW_2 = ObjectType.SKEW_2.ordinal();
-  public static final int SKEW_3 = ObjectType.SKEW_3.ordinal();
-  public static final int IVY_2  = ObjectType.IVY_2.ordinal();
-  public static final int REX_3  = ObjectType.REX_3.ordinal();
-  public static final int BAN1_3 = ObjectType.BAN1_3.ordinal();
-  public static final int BAN2_3 = ObjectType.BAN2_3.ordinal();
-  public static final int BAN3_3 = ObjectType.BAN3_3.ordinal();
-  public static final int BAN4_3 = ObjectType.BAN4_3.ordinal();
-  public static final int BAN5_4 = ObjectType.BAN5_4.ordinal();
-  public static final int BAN6_4 = ObjectType.BAN6_4.ordinal();
-  public static final int SQU1_3 = ObjectType.SQU1_3.ordinal();
-  public static final int SQU2_3 = ObjectType.SQU2_3.ordinal();
-  public static final int WIND_3 = ObjectType.WIND_3.ordinal();
-  public static final int FISH_3 = ObjectType.FISH_3.ordinal();
-  public static final int CONT_2 = ObjectType.CONT_2.ordinal();
-  public static final int AXIS_3 = ObjectType.AXIS_3.ordinal();
-  public static final int VOID_3 = ObjectType.VOID_3.ordinal();
-  public static final int CRYS_3 = ObjectType.CRYS_3.ordinal();
-  public static final int STAR_3 = ObjectType.STAR_3.ordinal();
-  public static final int PENT_2 = ObjectType.PENT_2.ordinal();
-  public static final int MIXU_3 = ObjectType.MIXU_3.ordinal();
-  public static final int MIXP_3 = ObjectType.MIXP_3.ordinal();
-  public static final int CRA1_2 = ObjectType.CRA1_2.ordinal();
-  public static final int CRA1_3 = ObjectType.CRA1_3.ordinal();
-  public static final int CRA2_3 = ObjectType.CRA2_3.ordinal();
-  public static final int CRA3_3 = ObjectType.CRA3_3.ordinal();
-  public static final int CRA4_3 = ObjectType.CRA4_3.ordinal();
-  public static final int CRA5_3 = ObjectType.CRA5_3.ordinal();
-  public static final int CRA6_3 = ObjectType.CRA6_3.ordinal();
-  public static final int CRA7_3 = ObjectType.CRA7_3.ordinal();
-  public static final int CRA8_3 = ObjectType.CRA8_3.ordinal();
-  public static final int CRA9_3 = ObjectType.CRA9_3.ordinal();
-  public static final int PDUO_2 = ObjectType.PDUO_2.ordinal();
-  public static final int PDIA_3 = ObjectType.PDIA_3.ordinal();
-  public static final int BALL_4 = ObjectType.BALL_4.ordinal();
-  public static final int CA_333 = ObjectType.CA_333.ordinal();
+  public static final int CUBE_2 = 0;
+  public static final int CUBE_3 = 1;
+  public static final int CUBE_4 = 2;
+  public static final int CUBE_5 = 3;
+  public static final int CUBE_6 = 4;
+  public static final int CUBE_7 = 5;
+  public static final int MIRR_2 = 6;
+  public static final int MIRR_3 = 7;
+  public static final int MIRR_4 = 8;
+  public static final int CU_323 = 9;
+  public static final int CU_232 = 10;
+  public static final int CU_343 = 11;
+  public static final int ULTI_2 = 12;
+  public static final int KILO_3 = 13;
+  public static final int KILO_5 = 14;
+  public static final int MEGA_3 = 15;
+  public static final int MEGA_5 = 16;
+  public static final int MORP_2 = 17;
+  public static final int MORP_3 = 18;
+  public static final int MORP_4 = 19;
+  public static final int JING_2 = 20;
+  public static final int PYRA_3 = 21;
+  public static final int PYRA_4 = 22;
+  public static final int PYRA_5 = 23;
+  public static final int TRAJ_3 = 24;
+  public static final int TRAJ_4 = 25;
+  public static final int DIAM_2 = 26;
+  public static final int DIAM_3 = 27;
+  public static final int DIAM_4 = 28;
+  public static final int DINO_3 = 29;
+  public static final int DIN4_3 = 30;
+  public static final int REDI_3 = 31;
+  public static final int HELI_3 = 32;
+  public static final int SKEW_2 = 33;
+  public static final int SKEW_3 = 34;
+  public static final int IVY_2  = 35;
+  public static final int REX_3  = 36;
+  public static final int BAN1_3 = 37;
+  public static final int BAN2_3 = 38;
+  public static final int BAN3_3 = 39;
+  public static final int BAN4_3 = 40;
+  public static final int BAN5_4 = 41;
+  public static final int BAN6_4 = 42;
+  public static final int SQU1_3 = 43;
+  public static final int SQU2_3 = 44;
+  public static final int WIND_3 = 45;
+  public static final int FISH_3 = 46;
+  public static final int CONT_2 = 47;
+  public static final int AXIS_3 = 48;
+  public static final int VOID_3 = 49;
+  public static final int CRYS_3 = 50;
+  public static final int STAR_3 = 51;
+  public static final int PENT_2 = 52;
+  public static final int MIXU_3 = 53;
+  public static final int MIXP_3 = 54;
+  public static final int CRA1_2 = 55;
+  public static final int CRA1_3 = 56;
+  public static final int CRA2_3 = 57;
+  public static final int CRA3_3 = 58;
+  public static final int CRA4_3 = 59;
+  public static final int CRA5_3 = 60;
+  public static final int CRA6_3 = 61;
+  public static final int CRA7_3 = 62;
+  public static final int CRA8_3 = 63;
+  public static final int CRA9_3 = 64;
+  public static final int PDUO_2 = 65;
+  public static final int PDIA_3 = 66;
+  public static final int BALL_4 = 67;
+  public static final int CA_333 = 68;
   }
diff --git a/src/main/java/org/distorted/objectlib/main/ObjectType.java b/src/main/java/org/distorted/objectlib/main/ObjectType.java
index e693a01b..84281397 100644
--- a/src/main/java/org/distorted/objectlib/main/ObjectType.java
+++ b/src/main/java/org/distorted/objectlib/main/ObjectType.java
@@ -98,15 +98,14 @@ public enum ObjectType
   MIXP_3 ( TwistyMixup3x3Plus.class   , 28, R.drawable.mixp_3, true,    70, new InitData(new int[] {3,3,3})),
   DINO_3 ( TwistyDino6.class          , 10, R.drawable.dino_3, true,     0, new InitData(new int[] {3,3,3,3})),
   DIN4_3 ( TwistyDino4.class          ,  9, R.drawable.din4_3, true,    30, new InitData(new int[] {3,3,3,3})),
+  PDUO_2 ( TwistyPyraminxDuo.class    ,  4, R.drawable.pduo_2, true,    0, new InitData(new int[] {2,2,2,2})),
+  PDIA_3 ( TwistyPyraminxDiamond.class, 12, R.drawable.pdia_3, true,   40, new InitData(new int[] {3,3,3})),
 
+  BALL_4 ( TwistyMasterball.class     , 28, R.drawable.ball_4, false,   70, new InitData(new int[] {4,2,2,2,2})),
   BAN5_4 ( TwistyBandagedCuboid.class , 48, R.drawable.ban5_4, false,   50, new InitData(new int[] {4,4,4}, TwistyBandagedCuboid.POS_5)),
   BAN6_4 ( TwistyBandagedCuboid.class ,487, R.drawable.ban6_4, false,   50, new InitData(new int[] {4,4,4}, TwistyBandagedCuboid.POS_6)),
   CA_333 ( TwistyCamouflage.class     ,487, R.drawable.ca_333, false,   50, new InitData(new int[] {4,4,4}, TwistyCamouflage.CAM_333)),
 
-  PDUO_2 ( TwistyPyraminxDuo.class    ,  4, R.drawable.pduo_2, false,    0, new InitData(new int[] {2,2,2,2})),
-  PDIA_3 ( TwistyPyraminxDiamond.class, 12, R.drawable.pdia_3, false,   40, new InitData(new int[] {3,3,3})),
-  BALL_4 ( TwistyMasterball.class     , 28, R.drawable.ball_4, false,   70, new InitData(new int[] {4,2,2,2,2})),
-
   ;
 
   public static int NUM_OBJECTS;
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyAxis.java b/src/main/java/org/distorted/objectlib/objects/TwistyAxis.java
index 82d29e6b..7cb0e981 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyAxis.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyAxis.java
@@ -16,6 +16,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.main.ObjectType;
@@ -513,7 +514,7 @@ public class TwistyAxis extends ShapeHexahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.AXIS_3);
+    return new ObjectSignature(ObjectSignatures.AXIS_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyCamouflage.java b/src/main/java/org/distorted/objectlib/objects/TwistyCamouflage.java
index 86aedbfd..07f2bdd9 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyCamouflage.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyCamouflage.java
@@ -19,6 +19,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 
 import java.io.InputStream;
@@ -457,7 +458,7 @@ public class TwistyCamouflage extends TwistyBandagedAbstract
     if( mSignature==null )
       {
       if( mPosition==null ) mPosition = getInitData().getPos();
-      if( mPosition==CAM_333 ) mSignature = new ObjectSignature(ObjectType.CA_333);
+      if( mPosition==CAM_333 ) mSignature = new ObjectSignature(ObjectSignatures.CA_333);
       }
     return mSignature;
     }
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyContainer.java b/src/main/java/org/distorted/objectlib/objects/TwistyContainer.java
index 6163fa55..19d320d1 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyContainer.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyContainer.java
@@ -18,6 +18,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.main.ObjectType;
@@ -364,7 +365,7 @@ public class TwistyContainer extends ShapeHexahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.CONT_2);
+    return new ObjectSignature(ObjectSignatures.CONT_2);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyCrazy2x2.java b/src/main/java/org/distorted/objectlib/objects/TwistyCrazy2x2.java
index 8bcf3887..12394f23 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyCrazy2x2.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyCrazy2x2.java
@@ -18,6 +18,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.TwistyObjectCubit;
 import org.distorted.objectlib.main.InitData;
@@ -601,7 +602,7 @@ public class TwistyCrazy2x2 extends ShapeHexahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.CRA1_2);
+    return new ObjectSignature(ObjectSignatures.CRA1_2);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyCrazy3x3.java b/src/main/java/org/distorted/objectlib/objects/TwistyCrazy3x3.java
index 46139422..debee36e 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyCrazy3x3.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyCrazy3x3.java
@@ -20,6 +20,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectStickerOverride;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.TwistyObjectCubit;
 import org.distorted.objectlib.main.InitData;
@@ -1015,15 +1016,15 @@ public class TwistyCrazy3x3 extends ShapeHexahedron
 
     switch(param)
       {
-      case CRAZY  : return new ObjectSignature(ObjectType.CRA1_3);
-      case MERCURY: return new ObjectSignature(ObjectType.CRA2_3);
-      case VENUS  : return new ObjectSignature(ObjectType.CRA3_3);
-      case EARTH  : return new ObjectSignature(ObjectType.CRA4_3);
-      case MARS   : return new ObjectSignature(ObjectType.CRA5_3);
-      case JUPITER: return new ObjectSignature(ObjectType.CRA6_3);
-      case SATURN : return new ObjectSignature(ObjectType.CRA7_3);
-      case URANUS : return new ObjectSignature(ObjectType.CRA8_3);
-      case NEPTUNE: return new ObjectSignature(ObjectType.CRA9_3);
+      case CRAZY  : return new ObjectSignature(ObjectSignatures.CRA1_3);
+      case MERCURY: return new ObjectSignature(ObjectSignatures.CRA2_3);
+      case VENUS  : return new ObjectSignature(ObjectSignatures.CRA3_3);
+      case EARTH  : return new ObjectSignature(ObjectSignatures.CRA4_3);
+      case MARS   : return new ObjectSignature(ObjectSignatures.CRA5_3);
+      case JUPITER: return new ObjectSignature(ObjectSignatures.CRA6_3);
+      case SATURN : return new ObjectSignature(ObjectSignatures.CRA7_3);
+      case URANUS : return new ObjectSignature(ObjectSignatures.CRA8_3);
+      case NEPTUNE: return new ObjectSignature(ObjectSignatures.CRA9_3);
       }
 
     return null;
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyCrystal.java b/src/main/java/org/distorted/objectlib/objects/TwistyCrystal.java
index 6c72ffba..16045190 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyCrystal.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyCrystal.java
@@ -19,6 +19,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -265,7 +266,7 @@ public class TwistyCrystal extends TwistyDodecahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.CRYS_3);
+    return new ObjectSignature(ObjectSignatures.CRYS_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyCuboid.java b/src/main/java/org/distorted/objectlib/objects/TwistyCuboid.java
index 6315bc7d..4e5f7e8c 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyCuboid.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyCuboid.java
@@ -21,6 +21,7 @@ import org.distorted.objectlib.helpers.FactoryCubit;
 import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.touchcontrol.TouchControlCuboids;
@@ -620,19 +621,19 @@ public class TwistyCuboid extends ShapeHexahedron
       {
       case 2: switch(y)
                 {
-                case 2: return new ObjectSignature(ObjectType.CUBE_2);
-                case 3: return new ObjectSignature(ObjectType.CU_232);
+                case 2: return new ObjectSignature(ObjectSignatures.CUBE_2);
+                case 3: return new ObjectSignature(ObjectSignatures.CU_232);
                 }
       case 3: switch(y)
                 {
-                case 2: return new ObjectSignature(ObjectType.CU_323);
-                case 3: return new ObjectSignature(ObjectType.CUBE_3);
-                case 4: return new ObjectSignature(ObjectType.CU_343);
+                case 2: return new ObjectSignature(ObjectSignatures.CU_323);
+                case 3: return new ObjectSignature(ObjectSignatures.CUBE_3);
+                case 4: return new ObjectSignature(ObjectSignatures.CU_343);
                 }
-      case 4: return new ObjectSignature(ObjectType.CUBE_4);
-      case 5: return new ObjectSignature(ObjectType.CUBE_5);
-      case 6: return new ObjectSignature(ObjectType.CUBE_6);
-      case 7: return new ObjectSignature(ObjectType.CUBE_7);
+      case 4: return new ObjectSignature(ObjectSignatures.CUBE_4);
+      case 5: return new ObjectSignature(ObjectSignatures.CUBE_5);
+      case 6: return new ObjectSignature(ObjectSignatures.CUBE_6);
+      case 7: return new ObjectSignature(ObjectSignatures.CUBE_7);
       }
 
     return null;
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyDiamond.java b/src/main/java/org/distorted/objectlib/objects/TwistyDiamond.java
index c1b7de2e..ff866937 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyDiamond.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyDiamond.java
@@ -21,6 +21,7 @@ import org.distorted.objectlib.helpers.FactoryCubit;
 import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.touchcontrol.TouchControlOctahedron;
@@ -513,9 +514,9 @@ public class TwistyDiamond extends ShapeOctahedron
     {
     switch(getNumLayers()[0])
       {
-      case 2: return new ObjectSignature(ObjectType.DIAM_2);
-      case 3: return new ObjectSignature(ObjectType.DIAM_3);
-      case 4: return new ObjectSignature(ObjectType.DIAM_4);
+      case 2: return new ObjectSignature(ObjectSignatures.DIAM_2);
+      case 3: return new ObjectSignature(ObjectSignatures.DIAM_3);
+      case 4: return new ObjectSignature(ObjectSignatures.DIAM_4);
       }
 
     return null;
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyDino4.java b/src/main/java/org/distorted/objectlib/objects/TwistyDino4.java
index 07b8e8f4..a01455b7 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyDino4.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyDino4.java
@@ -16,8 +16,8 @@ import org.distorted.library.type.Static4D;
 
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
-import org.distorted.objectlib.scrambling.ScrambleState;
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
@@ -99,7 +99,7 @@ public class TwistyDino4 extends TwistyDino
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.DIN4_3);
+    return new ObjectSignature(ObjectSignatures.DIN4_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyDino6.java b/src/main/java/org/distorted/objectlib/objects/TwistyDino6.java
index bb379de3..f842d399 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyDino6.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyDino6.java
@@ -16,8 +16,8 @@ import org.distorted.library.type.Static4D;
 
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
-import org.distorted.objectlib.scrambling.ScrambleState;
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
@@ -75,7 +75,7 @@ public class TwistyDino6 extends TwistyDino
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.DINO_3);
+    return new ObjectSignature(ObjectSignatures.DINO_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyFisher.java b/src/main/java/org/distorted/objectlib/objects/TwistyFisher.java
index 4b8e588f..c885d0f0 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyFisher.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyFisher.java
@@ -16,6 +16,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.main.ObjectType;
@@ -411,7 +412,7 @@ public class TwistyFisher extends ShapeHexahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.FISH_3);
+    return new ObjectSignature(ObjectSignatures.FISH_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyHelicopter.java b/src/main/java/org/distorted/objectlib/objects/TwistyHelicopter.java
index 9927ec61..b291de06 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyHelicopter.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyHelicopter.java
@@ -22,6 +22,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.helpers.ObjectShape;
@@ -364,7 +365,7 @@ public class TwistyHelicopter extends ShapeHexahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.HELI_3);
+    return new ObjectSignature(ObjectSignatures.HELI_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyIvy.java b/src/main/java/org/distorted/objectlib/objects/TwistyIvy.java
index b9f45d1a..24f609c0 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyIvy.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyIvy.java
@@ -21,6 +21,7 @@ import org.distorted.objectlib.helpers.FactoryCubit;
 import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
@@ -466,7 +467,7 @@ public class TwistyIvy extends ShapeHexahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.IVY_2);
+    return new ObjectSignature(ObjectSignatures.IVY_2);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyJing.java b/src/main/java/org/distorted/objectlib/objects/TwistyJing.java
index 2e1cde23..d32ae2d5 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyJing.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyJing.java
@@ -21,6 +21,7 @@ import org.distorted.objectlib.helpers.FactoryCubit;
 import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.touchcontrol.TouchControlTetrahedron;
@@ -402,7 +403,7 @@ public class TwistyJing extends ShapeTetrahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.JING_2);
+    return new ObjectSignature(ObjectSignatures.JING_2);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyKilominx.java b/src/main/java/org/distorted/objectlib/objects/TwistyKilominx.java
index 596d4b12..93d331ba 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyKilominx.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyKilominx.java
@@ -23,6 +23,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.helpers.ObjectShape;
 
@@ -612,8 +613,8 @@ public class TwistyKilominx extends TwistyDodecahedron
     {
     switch(getNumLayers()[0])
       {
-      case 3: return new ObjectSignature(ObjectType.KILO_3);
-      case 5: return new ObjectSignature(ObjectType.KILO_5);
+      case 3: return new ObjectSignature(ObjectSignatures.KILO_3);
+      case 5: return new ObjectSignature(ObjectSignatures.KILO_5);
       }
 
     return null;
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyMasterball.java b/src/main/java/org/distorted/objectlib/objects/TwistyMasterball.java
index e0d33b9d..2d5ffe78 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyMasterball.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyMasterball.java
@@ -20,6 +20,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.shape.ShapeDiamond;
 import org.distorted.objectlib.touchcontrol.TouchControlBall;
@@ -423,7 +424,7 @@ public class TwistyMasterball extends ShapeDiamond
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.BALL_4);
+    return new ObjectSignature(ObjectSignatures.BALL_4);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyMegaminx.java b/src/main/java/org/distorted/objectlib/objects/TwistyMegaminx.java
index 081c5f14..ef4c724d 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyMegaminx.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyMegaminx.java
@@ -23,6 +23,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.helpers.ObjectShape;
 
@@ -509,8 +510,8 @@ public class TwistyMegaminx extends TwistyDodecahedron
     {
     switch(getNumLayers()[0])
       {
-      case 3: return new ObjectSignature(ObjectType.MEGA_3);
-      case 5: return new ObjectSignature(ObjectType.MEGA_5);
+      case 3: return new ObjectSignature(ObjectSignatures.MEGA_3);
+      case 5: return new ObjectSignature(ObjectSignatures.MEGA_5);
       }
 
     return null;
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyMirror.java b/src/main/java/org/distorted/objectlib/objects/TwistyMirror.java
index 1f9ff98e..80c5c70c 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyMirror.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyMirror.java
@@ -21,6 +21,7 @@ import org.distorted.objectlib.helpers.FactoryCubit;
 import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.main.ObjectType;
@@ -362,9 +363,9 @@ public class TwistyMirror extends ShapeHexahedron
     {
     switch(getNumLayers()[0])
       {
-      case 2: return new ObjectSignature(ObjectType.MIRR_2);
-      case 3: return new ObjectSignature(ObjectType.MIRR_3);
-      case 4: return new ObjectSignature(ObjectType.MIRR_4);
+      case 2: return new ObjectSignature(ObjectSignatures.MIRR_2);
+      case 3: return new ObjectSignature(ObjectSignatures.MIRR_3);
+      case 4: return new ObjectSignature(ObjectSignatures.MIRR_4);
       }
 
     return null;
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyMixup3x3.java b/src/main/java/org/distorted/objectlib/objects/TwistyMixup3x3.java
index 15493d71..48c24344 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyMixup3x3.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyMixup3x3.java
@@ -17,6 +17,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 
 import java.io.InputStream;
@@ -223,7 +224,7 @@ public class TwistyMixup3x3 extends TwistyMixup
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.MIXU_3);
+    return new ObjectSignature(ObjectSignatures.MIXU_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyMixup3x3Plus.java b/src/main/java/org/distorted/objectlib/objects/TwistyMixup3x3Plus.java
index cf4b3024..af736138 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyMixup3x3Plus.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyMixup3x3Plus.java
@@ -19,6 +19,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -330,7 +331,7 @@ public class TwistyMixup3x3Plus extends TwistyMixup
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.MIXP_3);
+    return new ObjectSignature(ObjectSignatures.MIXP_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyMorphix.java b/src/main/java/org/distorted/objectlib/objects/TwistyMorphix.java
index f98d6168..9be6487a 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyMorphix.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyMorphix.java
@@ -17,6 +17,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.shape.ShapeTetrahedron;
@@ -689,9 +690,9 @@ public class TwistyMorphix extends ShapeTetrahedron
     {
     switch(getNumLayers()[0])
       {
-      case 2: return new ObjectSignature(ObjectType.MORP_2);
-      case 3: return new ObjectSignature(ObjectType.MORP_3);
-      case 4: return new ObjectSignature(ObjectType.MORP_4);
+      case 2: return new ObjectSignature(ObjectSignatures.MORP_2);
+      case 3: return new ObjectSignature(ObjectSignatures.MORP_3);
+      case 4: return new ObjectSignature(ObjectSignatures.MORP_4);
       }
     return null;
     }
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyPentultimate.java b/src/main/java/org/distorted/objectlib/objects/TwistyPentultimate.java
index faa4268d..e92e034b 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyPentultimate.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyPentultimate.java
@@ -17,6 +17,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 
@@ -377,7 +378,7 @@ public class TwistyPentultimate extends TwistyDodecahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.PENT_2);
+    return new ObjectSignature(ObjectSignatures.PENT_2);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyPyraminx.java b/src/main/java/org/distorted/objectlib/objects/TwistyPyraminx.java
index 76280d71..69e44e8e 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyPyraminx.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyPyraminx.java
@@ -22,6 +22,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.touchcontrol.TouchControlTetrahedron;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.helpers.ObjectShape;
@@ -405,9 +406,9 @@ public class TwistyPyraminx extends ShapeTetrahedron
     {
     switch(getNumLayers()[0])
       {
-      case 3: return new ObjectSignature(ObjectType.PYRA_3);
-      case 4: return new ObjectSignature(ObjectType.PYRA_4);
-      case 5: return new ObjectSignature(ObjectType.PYRA_5);
+      case 3: return new ObjectSignature(ObjectSignatures.PYRA_3);
+      case 4: return new ObjectSignature(ObjectSignatures.PYRA_4);
+      case 5: return new ObjectSignature(ObjectSignatures.PYRA_5);
       }
 
     return null;
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyPyraminxDiamond.java b/src/main/java/org/distorted/objectlib/objects/TwistyPyraminxDiamond.java
index 1f1944de..c7123a18 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyPyraminxDiamond.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyPyraminxDiamond.java
@@ -20,6 +20,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.shape.ShapeOctahedron;
 import org.distorted.objectlib.touchcontrol.TouchControlOctahedron;
@@ -380,7 +381,7 @@ public class TwistyPyraminxDiamond extends ShapeOctahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.PDIA_3);
+    return new ObjectSignature(ObjectSignatures.PDIA_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyPyraminxDuo.java b/src/main/java/org/distorted/objectlib/objects/TwistyPyraminxDuo.java
index 9404fe19..23ba1f71 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyPyraminxDuo.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyPyraminxDuo.java
@@ -20,6 +20,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.shape.ShapeTetrahedron;
 import org.distorted.objectlib.touchcontrol.TouchControlTetrahedron;
@@ -342,7 +343,7 @@ public class TwistyPyraminxDuo extends ShapeTetrahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.PDUO_2);
+    return new ObjectSignature(ObjectSignatures.PDUO_2);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyRedi.java b/src/main/java/org/distorted/objectlib/objects/TwistyRedi.java
index 8c58572b..8b1989bf 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyRedi.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyRedi.java
@@ -22,6 +22,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.helpers.ObjectShape;
@@ -392,7 +393,7 @@ public class TwistyRedi extends ShapeHexahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.REDI_3);
+    return new ObjectSignature(ObjectSignatures.REDI_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyRex.java b/src/main/java/org/distorted/objectlib/objects/TwistyRex.java
index e44b50a6..0b0df6e5 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyRex.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyRex.java
@@ -22,6 +22,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.helpers.ObjectShape;
@@ -401,7 +402,7 @@ public class TwistyRex extends ShapeHexahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.REX_3);
+    return new ObjectSignature(ObjectSignatures.REX_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistySkewb.java b/src/main/java/org/distorted/objectlib/objects/TwistySkewb.java
index 887d54eb..9d1e4622 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistySkewb.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistySkewb.java
@@ -21,6 +21,7 @@ import org.distorted.objectlib.helpers.FactoryCubit;
 import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
@@ -528,8 +529,8 @@ public class TwistySkewb extends ShapeHexahedron
     {
     switch(getNumLayers()[0])
       {
-      case 2: return new ObjectSignature(ObjectType.SKEW_2);
-      case 3: return new ObjectSignature(ObjectType.SKEW_3);
+      case 2: return new ObjectSignature(ObjectSignatures.SKEW_2);
+      case 3: return new ObjectSignature(ObjectSignatures.SKEW_3);
       }
 
     return null;
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistySquare1.java b/src/main/java/org/distorted/objectlib/objects/TwistySquare1.java
index cf029f05..08691b6e 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistySquare1.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistySquare1.java
@@ -19,6 +19,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.helpers.ObjectShape;
 
@@ -297,7 +298,7 @@ public class TwistySquare1 extends TwistySquare
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.SQU1_3);
+    return new ObjectSignature(ObjectSignatures.SQU1_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistySquare2.java b/src/main/java/org/distorted/objectlib/objects/TwistySquare2.java
index f5d241b9..c5ef6b5d 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistySquare2.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistySquare2.java
@@ -19,6 +19,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.helpers.ObjectShape;
 
@@ -328,7 +329,7 @@ public class TwistySquare2 extends TwistySquare
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.SQU2_3);
+    return new ObjectSignature(ObjectSignatures.SQU2_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyStarminx.java b/src/main/java/org/distorted/objectlib/objects/TwistyStarminx.java
index 0cb847cf..68ab443d 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyStarminx.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyStarminx.java
@@ -18,6 +18,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 
 import java.io.InputStream;
@@ -400,7 +401,7 @@ public class TwistyStarminx extends TwistyDodecahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.STAR_3);
+    return new ObjectSignature(ObjectSignatures.STAR_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyTrajber.java b/src/main/java/org/distorted/objectlib/objects/TwistyTrajber.java
index 827aee3e..b003bebe 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyTrajber.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyTrajber.java
@@ -16,6 +16,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.main.ObjectType;
@@ -630,8 +631,8 @@ public class TwistyTrajber extends ShapeOctahedron
 
     switch(numLayers[0])
       {
-      case 3: return new ObjectSignature(ObjectType.TRAJ_3);
-      case 4: return new ObjectSignature(ObjectType.TRAJ_4);
+      case 3: return new ObjectSignature(ObjectSignatures.TRAJ_3);
+      case 4: return new ObjectSignature(ObjectSignatures.TRAJ_4);
       }
 
     return null;
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyUltimate.java b/src/main/java/org/distorted/objectlib/objects/TwistyUltimate.java
index 243b6dc3..af577482 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyUltimate.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyUltimate.java
@@ -21,6 +21,7 @@ import org.distorted.objectlib.helpers.FactoryCubit;
 import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.touchcontrol.TouchControlDodecahedron;
@@ -398,7 +399,7 @@ public class TwistyUltimate extends ShapeDodecahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.ULTI_2);
+    return new ObjectSignature(ObjectSignatures.ULTI_2);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyVoid.java b/src/main/java/org/distorted/objectlib/objects/TwistyVoid.java
index 57dc795a..903ec4a0 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyVoid.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyVoid.java
@@ -17,6 +17,7 @@ import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
 import org.distorted.objectlib.main.InitData;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.main.ObjectType;
 import org.distorted.objectlib.shape.ShapeHexahedron;
 import org.distorted.objectlib.touchcontrol.TouchControlHexahedron;
@@ -474,7 +475,7 @@ public class TwistyVoid extends ShapeHexahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.VOID_3);
+    return new ObjectSignature(ObjectSignatures.VOID_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/objectlib/objects/TwistyWindmill.java b/src/main/java/org/distorted/objectlib/objects/TwistyWindmill.java
index 01512fb6..1ce6975e 100644
--- a/src/main/java/org/distorted/objectlib/objects/TwistyWindmill.java
+++ b/src/main/java/org/distorted/objectlib/objects/TwistyWindmill.java
@@ -19,6 +19,7 @@ import org.distorted.objectlib.helpers.ObjectFaceShape;
 import org.distorted.objectlib.helpers.ObjectShape;
 import org.distorted.objectlib.helpers.ObjectSignature;
 import org.distorted.objectlib.helpers.ObjectVertexEffects;
+import org.distorted.objectlib.main.ObjectSignatures;
 import org.distorted.objectlib.scrambling.ScrambleEdgeGenerator;
 import org.distorted.objectlib.main.InitData;
 import org.distorted.objectlib.main.ObjectType;
@@ -421,7 +422,7 @@ public class TwistyWindmill extends ShapeHexahedron
 
   public ObjectSignature getSignature()
     {
-    return new ObjectSignature(ObjectType.WIND_3);
+    return new ObjectSignature(ObjectSignatures.WIND_3);
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
