cancel swap implemented