added location functionailty