new coordinate logic