multiple locations implemented