Climate agreement reached in Cancun