carry flag not workint