public void trackCASPreEdit()
    {
        SimData simData = AppEngine.getCanvas().getSimData();

        this.m_casHairType   = simData.getSimAttributeUnique(0, 2);
        this.m_casHairColor  = simData.getSimAttributeUnique(0, 3);
        this.m_casHeadType   = simData.getSimAttributeUnique(0, 11);
        this.m_casHeadColor  = simData.getSimAttributeUnique(0, 12);
        this.m_casTorsoType  = simData.getSimAttributeUnique(0, 5);
        this.m_casTorsoColor = simData.getSimAttributeUnique(0, 6);
        this.m_casLegsType   = simData.getSimAttributeUnique(0, 7);
        this.m_casLegsColor  = simData.getSimAttributeUnique(0, 8);
        this.m_casFeetType   = simData.getSimAttributeUnique(0, 9);
        this.m_casFeetColor  = simData.getSimAttributeUnique(0, 10);
    }
    public void trackCAS(bool edited)
    {
        EASpywareManager instance = EASpywareManager.getInstance();
        SimData          simData  = AppEngine.getCanvas().getSimData();
        string           simName  = AppEngine.getCanvas().getSimName();
        string           slotStr  = string.Concat((object)AppEngine.getCanvas().getRMSGameSlotIndex());
        int simAttributeUnique1   = simData.getSimAttributeUnique(0, 0);
        int simAttributeUnique2   = simData.getSimAttributeUnique(0, 1);
        int simAttributeUnique3   = simData.getSimAttributeUnique(0, 2);
        int simAttributeUnique4   = simData.getSimAttributeUnique(0, 3);
        int simAttributeUnique5   = simData.getSimAttributeUnique(0, 4);
        int simAttributeUnique6   = simData.getSimAttributeUnique(0, 11);
        int simAttributeUnique7   = simData.getSimAttributeUnique(0, 12);
        int simAttributeUnique8   = simData.getSimAttributeUnique(0, 5);
        int simAttributeUnique9   = simData.getSimAttributeUnique(0, 6);
        int simAttributeUnique10  = simData.getSimAttributeUnique(0, 7);
        int simAttributeUnique11  = simData.getSimAttributeUnique(0, 8);
        int simAttributeUnique12  = simData.getSimAttributeUnique(0, 9);
        int simAttributeUnique13  = simData.getSimAttributeUnique(0, 10);

        if (!edited)
        {
            instance.logEvent(241, simName, slotStr);
            instance.logEvent(226, simName, slotStr);
            instance.logEvent(235, simAttributeUnique1 == 0 ? "male" : "female");
            instance.logEvent(236, simAttributeUnique2);
            instance.logEvent(232, simAttributeUnique3, simAttributeUnique4);
            instance.logEvent(441, simAttributeUnique6, simAttributeUnique7);
            instance.logEvent(234, simAttributeUnique5);
            instance.logEvent(233, simAttributeUnique8, simAttributeUnique9);
            instance.logEvent(237, simAttributeUnique10, simAttributeUnique11);
            instance.logEvent(238, simAttributeUnique12, simAttributeUnique13);
            int    persona = simData.getPersona();
            string str1    = GlobalConstants.LOOKUP_PERSONA[persona];
            instance.logEvent(239, str1);
            int    simTrait1 = simData.getSimTrait(0, 0);
            string str2      = GlobalConstants.LOOKUP_TRAIT[simTrait1];
            instance.logEvent(240, str2);
            int    simTrait2 = simData.getSimTrait(0, 1);
            string str3      = GlobalConstants.LOOKUP_TRAIT[simTrait2];
            instance.logEvent(240, str3);
            int    simTrait3 = simData.getSimTrait(0, 2);
            string str4      = GlobalConstants.LOOKUP_TRAIT[simTrait3];
            instance.logEvent(240, str4);
            int    simTrait4 = simData.getSimTrait(0, 3);
            string str5      = GlobalConstants.LOOKUP_TRAIT[simTrait4];
            instance.logEvent(240, str5);
            int    simTrait5 = simData.getSimTrait(0, 4);
            string str6      = GlobalConstants.LOOKUP_TRAIT[simTrait5];
            instance.logEvent(240, str6);
        }
        else
        {
            instance.logEvent(242, simName, slotStr);
            if (this.m_casHairType != simAttributeUnique3 || this.m_casHairColor != simAttributeUnique4)
            {
                instance.logEvent(232, simAttributeUnique3, simAttributeUnique4);
            }
            if (this.m_casHeadType != simAttributeUnique6 || this.m_casHeadColor != simAttributeUnique7)
            {
                instance.logEvent(441, simAttributeUnique6, simAttributeUnique7);
            }
            if (this.m_casTorsoType != simAttributeUnique8 || this.m_casTorsoColor != simAttributeUnique9)
            {
                instance.logEvent(233, simAttributeUnique8, simAttributeUnique9);
            }
            if (this.m_casLegsType != simAttributeUnique10 || this.m_casLegsColor != simAttributeUnique11)
            {
                instance.logEvent(237, simAttributeUnique10, simAttributeUnique11);
            }
            if (this.m_casFeetType == simAttributeUnique12 && this.m_casFeetColor == simAttributeUnique13)
            {
                return;
            }
            instance.logEvent(238, simAttributeUnique12, simAttributeUnique13);
        }
    }