add optional reason