need location argument in function