private void Update()
        {
            float x = m_Car.transform.position[0];
            float z = m_Car.transform.position[2];

            m_Car.location = -1;

            //entire positive X side
            if (x <= 78 && x > 30)
            {
                if (z <= -20 && z >= -62)
                {
                    movement      = new Vector3(0.0f, 0.0f, 1.0f);
                    expectedAngle = 45.0f;
                }
                else if (z < 365 && z > -20)
                {
                    movement      = new Vector3(0.0f, 0.0f, 1.0f);
                    expectedAngle = 0.0f;
                }
                else if (z <= 410 && z >= 365)
                {
                    movement      = new Vector3(0.0f, 0.0f, 1.0f);
                    expectedAngle = 315.0f;
                }
            }

            //positive z SW
            else if (z <= 410 && z >= 365 && x < 30 && x > -355)
            {
                movement      = new Vector3(0.0f, 0.0f, 1.0f);
                expectedAngle = 270.0f;
            }

            //entire negative x side
            else if (x <= -355 && x >= -397)
            {
                if (z <= 410 && z >= 365)
                {
                    movement      = new Vector3(0.0f, 0.0f, 1.0f);
                    expectedAngle = 225.0f;
                }
                else if (z < 365 && z > -20)
                {
                    movement      = new Vector3(0.0f, 0.0f, 1.0f);
                    expectedAngle = 180.0f;
                }
                else if (z <= -20 && z >= -62)
                {
                    movement      = new Vector3(0.0f, 0.0f, 1.0f);
                    expectedAngle = 135.0f;
                }
            }

            //negative z SW
            else if (z <= -20 && z >= -62 && x < 30 && x > -355)
            {
                if (m_Car.NegZCount > 0)
                {
                    m_Car.location = 2;
                    movement       = Vector3.zero;
                }
                else
                {
                    m_Car.location = 2;
                    movement       = new Vector3(0.0f, 0.0f, 1.0f);
                    expectedAngle  = 90.0f;
                }
            }

            m_Car.Move2(movement, expectedAngle);
        }