private static void OCCOQDCDQC(RoadObjectScript target)
    {
        EditorUtility.DisplayProgressBar("Build EasyRoads3D Object - " + target.gameObject.name,"Initializing", 0);

        RoadObjectScript[] scripts = (RoadObjectScript[])FindObjectsOfType(typeof(RoadObjectScript));
        List<Transform> rObj = new List<Transform>();

        #if UNITY_4_3

        #else

        #endif
        foreach(RoadObjectScript script in scripts) {
        if(script.transform != target.transform) rObj.Add(script.transform);
        }
        if(target.ODODQOQO == null){
        target.ODODQOQO = target.OQQCDCOCQO.OOOCCQCQOO();
        target.ODODQOQOInt = target.OQQCDCOCQO.OOOODCDDOQ();
        }
        target.ODCQOCDDDC(0.5f, true, false);

        List<tPoint> hitODQCCCQDDQ = target.OQQCDCOCQO.OOOQCDCDDQ(Vector3.zero, target.raise, target.obj, target.OOQDOOQQ, rObj, target.handleVegetation);
        List<Vector3> changeArr = new List<Vector3>();
        float stepsf = Mathf.Floor(hitODQCCCQDDQ.Count / 10);
        int steps = Mathf.RoundToInt(stepsf);
        for(int i = 0; i < 10;i++){
        changeArr = target.OQQCDCOCQO.OCOQDDCQDC(hitODQCCCQDDQ, i * steps, steps, changeArr);
        EditorUtility.DisplayProgressBar("Build EasyRoads3D Object - " + target.gameObject.name,"Updating Terrain", i * 10);
        }

        changeArr = target.OQQCDCOCQO.OCOQDDCQDC(hitODQCCCQDDQ, 10 * steps, hitODQCCCQDDQ.Count - (10 * steps), changeArr);
        target.OQQCDCOCQO.ODOOCQOQDO(changeArr, rObj);

        target.ODCOQQDDDQ();
        EditorUtility.ClearProgressBar();
    }