added gps and updated methods