///////////////////////////////////////
// RECLAIM
///////////////////////////////////////
        public void Reclaim(ShouldBe1 o)
        {
            if (o != null)
            {
                o.Value = default(int);
                this.instantiator.DiscardShouldBe1(o);
            }
        }
///////////////////////////////////////
// TO BYTES
///////////////////////////////////////
        public byte[] Energize(ShouldBe1 o)
        {
            int index = 0;

            Energize(o, bytes, ref index, true);
            byte[] result = this.instantiator.AcquireByteArray(index);
            Buffer.BlockCopy(bytes, 0, result, 0, index);
            return(result);
        }
 public void Energize(ShouldBe1 o, byte[] bytes, ref int index, bool writeTypeId)
 {
     if (writeTypeId)
     {
         bytes[index++] = 1;
     }
     // PRIMITIVE: Value
     bytes[index++] = (byte)((o.Value >> 24) & 255);
     bytes[index++] = (byte)((o.Value >> 16) & 255);
     bytes[index++] = (byte)((o.Value >> 8) & 255);
     bytes[index++] = (byte)(o.Value & 255);
 }
 public void DiscardShouldBe1(ShouldBe1 o)
 {
     // Dispose?
 }
        public object Energize(byte[] bytes, ref int index, ushort typeId)
        {
            switch (typeId)
            {
            case 1:
            {
                ShouldBe1 o = this.instantiator.AcquireShouldBe1();
                // PRIMITIVE: Value
                o.Value =
                    (int)(
                        ((int)bytes[index++] << 24) |
                        ((int)bytes[index++] << 16) |
                        ((int)bytes[index++] << 8) |
                        (int)bytes[index++]
                        );
                return(o);
            }

            case 2:
            {
                ShouldBe2 o = this.instantiator.AcquireShouldBe2();
                // PRIMITIVE: Value
                o.Value =
                    (int)(
                        ((int)bytes[index++] << 24) |
                        ((int)bytes[index++] << 16) |
                        ((int)bytes[index++] << 8) |
                        (int)bytes[index++]
                        );
                return(o);
            }

            case 3:
            {
                ShouldBe3 o = this.instantiator.AcquireShouldBe3();
                // PRIMITIVE: Value
                o.Value =
                    (int)(
                        ((int)bytes[index++] << 24) |
                        ((int)bytes[index++] << 16) |
                        ((int)bytes[index++] << 8) |
                        (int)bytes[index++]
                        );
                return(o);
            }

            case 17:
            {
                BaseThingShouldBe17 o = this.instantiator.AcquireBaseThingShouldBe17();
                // PRIMITIVE: Dunno1
                o.Dunno1 = bytes[index++] == 1;
                // PRIMITIVE: Dunno2
                o.Dunno2 = bytes[index++] == 1;
                return(o);
            }

            case 4:
            {
                ShouldBe4 o = this.instantiator.AcquireShouldBe4();
                // PRIMITIVE: Dunno1
                o.Dunno1 = bytes[index++] == 1;
                // PRIMITIVE: Dunno2
                o.Dunno2 = bytes[index++] == 1;
                // PRIMITIVE: Dunno3
                o.Dunno3 = bytes[index++] == 1;
                return(o);
            }

            case 5:
            {
                BaseThingShouldBe5 o = this.instantiator.AcquireBaseThingShouldBe5();
                // PRIMITIVE: Dunno1
                o.Dunno1 = bytes[index++] == 1;
                // PRIMITIVE: Dunno4
                o.Dunno4 = bytes[index++] == 1;
                return(o);
            }

            case 57:
            {
                ShouldBe57 o = this.instantiator.AcquireShouldBe57();
                // PRIMITIVE: Dunno1
                o.Dunno1 = bytes[index++] == 1;
                // PRIMITIVE: Dunno4
                o.Dunno4 = bytes[index++] == 1;
                // PRIMITIVE: Dunno5
                o.Dunno5 = bytes[index++] == 1;
                return(o);
            }

            case 6:
            {
                NewAbstractShouldBe6 o = this.instantiator.AcquireNewAbstractShouldBe6();
                // PRIMITIVE: Dunno6
                o.Dunno6 = bytes[index++] == 1;
                return(o);
            }

            case 7:
            {
                NewAbstractShouldBe7 o = this.instantiator.AcquireNewAbstractShouldBe7();
                // PRIMITIVE: Dunno7
                o.Dunno7 = bytes[index++] == 1;
                return(o);
            }

            case 8:
            {
                NewAbstractShouldBe8 o = this.instantiator.AcquireNewAbstractShouldBe8();
                // PRIMITIVE: Dunno8
                o.Dunno8 = bytes[index++] == 1;
                return(o);
            }

            case 566:
            {
                ShouldBe566 o = this.instantiator.AcquireShouldBe566();
                // PRIMITIVE: Dunno566
                o.Dunno566 = bytes[index++] == 1;
                return(o);
            }

            default:
                throw new AutonumberTestPatternBufferException("Unrecognized type ID: " + typeId + " ");
            }
        }
        public object Energize(byte[] bytes, ref int index)
        {
            ulong vuread_oyX8cM7RTc4d = 0;

            for (int i_vCfPWczt1cch = 0; i_vCfPWczt1cch < 9; i_vCfPWczt1cch++)
            {
                byte b = bytes[index++];
                if (i_vCfPWczt1cch < 8)
                {
                    vuread_oyX8cM7RTc4d += (((ulong)b & (ulong)127) << (7 * i_vCfPWczt1cch));
                    if ((int)(b & 128) == 0)
                    {
                        break;
                    }
                }
                else
                {
                    vuread_oyX8cM7RTc4d += (ulong)b << (7 * i_vCfPWczt1cch);
                    break;
                }
            }
            ushort typeId = (ushort)vuread_oyX8cM7RTc4d;

            switch (typeId)
            {
            case 1:
            {
                ShouldBe1 o = this.instantiator.AcquireShouldBe1();
                // PRIMITIVE: Value
                o.Value =
                    (int)(
                        ((int)bytes[index++] << 24) |
                        ((int)bytes[index++] << 16) |
                        ((int)bytes[index++] << 8) |
                        (int)bytes[index++]
                        );
                return(o);
            }

            case 2:
            {
                ShouldBe2 o = this.instantiator.AcquireShouldBe2();
                // PRIMITIVE: Value
                o.Value =
                    (int)(
                        ((int)bytes[index++] << 24) |
                        ((int)bytes[index++] << 16) |
                        ((int)bytes[index++] << 8) |
                        (int)bytes[index++]
                        );
                return(o);
            }

            case 3:
            {
                ShouldBe3 o = this.instantiator.AcquireShouldBe3();
                // PRIMITIVE: Value
                o.Value =
                    (int)(
                        ((int)bytes[index++] << 24) |
                        ((int)bytes[index++] << 16) |
                        ((int)bytes[index++] << 8) |
                        (int)bytes[index++]
                        );
                return(o);
            }

            case 17:
            {
                BaseThingShouldBe17 o = this.instantiator.AcquireBaseThingShouldBe17();
                // PRIMITIVE: Dunno1
                o.Dunno1 = bytes[index++] == 1;
                // PRIMITIVE: Dunno2
                o.Dunno2 = bytes[index++] == 1;
                return(o);
            }

            case 4:
            {
                ShouldBe4 o = this.instantiator.AcquireShouldBe4();
                // PRIMITIVE: Dunno1
                o.Dunno1 = bytes[index++] == 1;
                // PRIMITIVE: Dunno2
                o.Dunno2 = bytes[index++] == 1;
                // PRIMITIVE: Dunno3
                o.Dunno3 = bytes[index++] == 1;
                return(o);
            }

            case 5:
            {
                BaseThingShouldBe5 o = this.instantiator.AcquireBaseThingShouldBe5();
                // PRIMITIVE: Dunno1
                o.Dunno1 = bytes[index++] == 1;
                // PRIMITIVE: Dunno4
                o.Dunno4 = bytes[index++] == 1;
                return(o);
            }

            case 57:
            {
                ShouldBe57 o = this.instantiator.AcquireShouldBe57();
                // PRIMITIVE: Dunno1
                o.Dunno1 = bytes[index++] == 1;
                // PRIMITIVE: Dunno4
                o.Dunno4 = bytes[index++] == 1;
                // PRIMITIVE: Dunno5
                o.Dunno5 = bytes[index++] == 1;
                return(o);
            }

            case 6:
            {
                NewAbstractShouldBe6 o = this.instantiator.AcquireNewAbstractShouldBe6();
                // PRIMITIVE: Dunno6
                o.Dunno6 = bytes[index++] == 1;
                return(o);
            }

            case 7:
            {
                NewAbstractShouldBe7 o = this.instantiator.AcquireNewAbstractShouldBe7();
                // PRIMITIVE: Dunno7
                o.Dunno7 = bytes[index++] == 1;
                return(o);
            }

            case 8:
            {
                NewAbstractShouldBe8 o = this.instantiator.AcquireNewAbstractShouldBe8();
                // PRIMITIVE: Dunno8
                o.Dunno8 = bytes[index++] == 1;
                return(o);
            }

            case 566:
            {
                ShouldBe566 o = this.instantiator.AcquireShouldBe566();
                // PRIMITIVE: Dunno566
                o.Dunno566 = bytes[index++] == 1;
                return(o);
            }

            default:
                throw new AutonumberTestPatternBufferException("Unrecognized type ID: " + typeId + " ");
            }
        }