refactor. extract TransactionalCheetah