do identity properly; return correct location on create