basic CPS transform