proj1 algo