Main.Mempooltype conflict_handler =
  existing_operation:
    (Tezos_protocol_environment_023_PtSeouLo.Operation_hash.t * operation) ->
  new_operation:
    (Tezos_protocol_environment_023_PtSeouLo.Operation_hash.t * operation) ->
  [ `Keep | `Replace ]type operation_conflict = | Operation_conflict of {existing : Tezos_protocol_environment_023_PtSeouLo.Operation_hash.t;new_operation : Tezos_protocol_environment_023_PtSeouLo.Operation_hash.t;}type add_error = | Validation_error of Tezos_protocol_environment_023_PtSeouLo.Error_monad.error
                      Tezos_protocol_environment_023_PtSeouLo.Error_monad.trace| Add_conflict of operation_conflictval init : 
  Tezos_protocol_environment_023_PtSeouLo.Context.t ->
  Tezos_protocol_environment_023_PtSeouLo.Chain_id.t ->
  head_hash:Tezos_protocol_environment_023_PtSeouLo.Block_hash.t ->
  head:Tezos_protocol_environment_023_PtSeouLo.Block_header.shell_header ->
  (validation_info * t)
    Tezos_protocol_environment_023_PtSeouLo.Error_monad.tzresult
    Tezos_protocol_environment_023_PtSeouLo.Lwt.tval encoding : t Tezos_protocol_environment_023_PtSeouLo.Data_encoding.tval partial_op_validation : 
  ?check_signature:bool ->
  validation_info ->
  operation ->
  (unit ->
    unit Tezos_protocol_environment_023_PtSeouLo.Error_monad.tzresult)
    list
    Tezos_protocol_environment_023_PtSeouLo.Error_monad.tzresult
    Tezos_protocol_environment_023_PtSeouLo.Lwt.tval add_valid_operation : 
  ?conflict_handler:conflict_handler ->
  t ->
  (Tezos_protocol_environment_023_PtSeouLo.Operation_hash.t * operation) ->
  (t * add_result, add_error)
    Tezos_protocol_environment_023_PtSeouLo.Pervasives.resultval add_operation : 
  ?check_signature:bool ->
  ?conflict_handler:conflict_handler ->
  validation_info ->
  t ->
  (Tezos_protocol_environment_023_PtSeouLo.Operation_hash.t * operation) ->
  (t * add_result, add_error)
    Tezos_protocol_environment_023_PtSeouLo.Pervasives.result
    Tezos_protocol_environment_023_PtSeouLo.Lwt.tval remove_operation : 
  t ->
  Tezos_protocol_environment_023_PtSeouLo.Operation_hash.t ->
  tval merge : 
  ?conflict_handler:conflict_handler ->
  t ->
  t ->
  (t, merge_error) Tezos_protocol_environment_023_PtSeouLo.Pervasives.resultval operations : 
  t ->
  operation Tezos_protocol_environment_023_PtSeouLo.Operation_hash.Map.t