RPC.Scriptsmodule S : sig ... endmodule type UNPARSING_MODE = sig ... endmodule Traced_interpreter (Unparsing_mode : UNPARSING_MODE) : sig ... endmodule Unparse_types : sig ... endmodule Normalize_stack : sig ... endval pp_instr_name : 
  'a 'b 'c 'd. Tezos_protocol_alpha.Environment.Format.formatter ->
  ('a, 'b, 'c, 'd) Tezos_protocol_alpha.Protocol.Script_typed_ir.kinstr ->
  unitval run_operation_service : 
  Services_registration.rpc_context ->
  'a ->
  (Tezos_protocol_alpha.Protocol.Alpha_context.packed_operation
   * Tezos_protocol_environment_alpha.Chain_id.t) ->
  (Tezos_protocol_alpha.Protocol.Alpha_context.packed_protocol_data
   * Tezos_raw_protocol_alpha.Apply_results.packed_operation_metadata,
    Tezos_protocol_alpha.Environment.Error_monad.error
      Tezos_protocol_environment_alpha.Error_monad.trace)
    Stdlib.result
    Lwt.tValidate and apply the operation but skip signature checks; do not support consensus operations.
Return the unchanged operation protocol data, and the operation receipt ie. metadata containing balance updates, consumed gas, application success or failure, etc.
val simulate_operation_service : 
  Services_registration.rpc_context ->
  < version : 'a.. > ->
  (int32 option
   * Tezos_protocol_alpha.Protocol.Alpha_context.packed_operation
   * Tezos_protocol_environment_alpha.Chain_id.t
   * int) ->
  (Tezos_protocol_alpha.Protocol.Alpha_context.packed_protocol_data
   * Tezos_raw_protocol_alpha.Apply_results.packed_operation_metadata,
    Tezos_protocol_alpha.Environment.Error_monad.error
      Tezos_protocol_environment_alpha.Error_monad.trace)
    Stdlib.result
    Lwt.ttype run_code_config = {balance : Tezos_protocol_alpha.Protocol.Alpha_context.Tez.t;self : Tezos_protocol_alpha.Protocol.Contract_hash.t;payer : Tezos_protocol_alpha.Environment.Signature.public_key_hash;sender : Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t;}val default_balance : Tezos_protocol_alpha.Protocol.Alpha_context.Tez.tval run_code : 
  unparsing_mode:
    Tezos_protocol_alpha.Protocol.Script_ir_unparser.unparsing_mode option ->
  gas:Tezos_protocol_alpha.Protocol.Alpha_context.Gas.Arith.integral option ->
  entrypoint:Tezos_protocol_alpha.Protocol.Alpha_context.Entrypoint.t ->
  balance:Tezos_protocol_alpha.Protocol.Alpha_context.Tez.t option ->
  other_contracts:S.other_contract_description list option ->
  extra_big_maps:S.extra_big_map_description list option ->
  script:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  storage:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  input:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  amount:Tezos_protocol_alpha.Protocol.Alpha_context.Tez.t ->
  chain_id:Tezos_protocol_alpha.Environment.Chain_id.t ->
  sender:Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t option ->
  payer:Tezos_protocol_environment_alpha.Signature.Public_key_hash.t option ->
  self:Tezos_raw_protocol_alpha.Contract_hash.t option ->
  now:Tezos_protocol_alpha.Protocol.Script_timestamp.t option ->
  level:
    Tezos_protocol_alpha.Protocol.Script_int.n
      Tezos_protocol_alpha.Protocol.Script_int.num
      option ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  (Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
   * Tezos_protocol_alpha.Protocol.Apply_internal_results.packed_internal_operation
       list
   * Tezos_protocol_alpha.Protocol.Alpha_context.Lazy_storage.diffs option)
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval trace_code : 
  unparsing_mode:
    Tezos_protocol_alpha.Protocol.Script_ir_unparser.unparsing_mode option ->
  gas:Tezos_protocol_alpha.Protocol.Alpha_context.Gas.Arith.integral option ->
  entrypoint:Tezos_protocol_alpha.Protocol.Alpha_context.Entrypoint.t ->
  balance:Tezos_protocol_alpha.Protocol.Alpha_context.Tez.t option ->
  other_contracts:S.other_contract_description list option ->
  extra_big_maps:S.extra_big_map_description list option ->
  script:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  storage:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  input:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  amount:Tezos_protocol_alpha.Protocol.Alpha_context.Tez.t ->
  chain_id:Tezos_protocol_alpha.Environment.Chain_id.t ->
  sender:Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t option ->
  payer:Tezos_protocol_environment_alpha.Signature.Public_key_hash.t option ->
  self:Tezos_raw_protocol_alpha.Contract_hash.t option ->
  now:Tezos_protocol_alpha.Protocol.Script_timestamp.t option ->
  level:
    Tezos_protocol_alpha.Protocol.Script_int.n
      Tezos_protocol_alpha.Protocol.Script_int.num
      option ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  (Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
   * Tezos_protocol_alpha.Protocol.Apply_internal_results.packed_internal_operation
       list
   * Tezos_protocol_alpha.Protocol.Script_typed_ir.execution_trace
   * Tezos_protocol_alpha.Protocol.Alpha_context.Lazy_storage.diffs option)
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval run_tzip4_view : 
  gas:Tezos_protocol_alpha.Protocol.Alpha_context.Gas.Arith.integral option ->
  other_contracts:S.other_contract_description list option ->
  extra_big_maps:S.extra_big_map_description list option ->
  contract:Tezos_raw_protocol_alpha.Contract_hash.t ->
  entrypoint:Tezos_protocol_alpha.Protocol.Alpha_context.Entrypoint.t ->
  input:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  chain_id:Tezos_protocol_alpha.Environment.Chain_id.t ->
  now:Tezos_protocol_alpha.Protocol.Script_timestamp.t option ->
  level:
    Tezos_protocol_alpha.Protocol.Script_int.n
      Tezos_protocol_alpha.Protocol.Script_int.num
      option ->
  sender:Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t option ->
  payer:Tezos_protocol_environment_alpha.Signature.Public_key_hash.t option ->
  unparsing_mode:
    Tezos_protocol_alpha.Protocol.Script_ir_unparser.unparsing_mode ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval run_script_view : 
  gas:Tezos_protocol_alpha.Protocol.Alpha_context.Gas.Arith.integral option ->
  other_contracts:S.other_contract_description list option ->
  extra_big_maps:S.extra_big_map_description list option ->
  contract:Tezos_raw_protocol_alpha.Contract_hash.t ->
  view:string ->
  input:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  unlimited_gas:bool ->
  chain_id:Tezos_protocol_alpha.Environment.Chain_id.t ->
  now:Tezos_protocol_alpha.Protocol.Script_timestamp.t option ->
  level:
    Tezos_protocol_alpha.Protocol.Script_int.n
      Tezos_protocol_alpha.Protocol.Script_int.num
      option ->
  sender:Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t option ->
  payer:Tezos_protocol_environment_alpha.Signature.Public_key_hash.t option ->
  unparsing_mode:
    Tezos_protocol_alpha.Protocol.Script_ir_unparser.unparsing_mode ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.trun_script_view is an helper function to call the corresponding RPC.
val run_instr : 
  gas:Tezos_protocol_alpha.Protocol.Alpha_context.Gas.Arith.integral option ->
  legacy:bool ->
  input:
    (Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
     * Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr)
      list ->
  code:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  chain_id:Tezos_protocol_alpha.Environment.Chain_id.t ->
  now:Tezos_protocol_alpha.Protocol.Script_timestamp.t option ->
  level:
    Tezos_protocol_alpha.Protocol.Script_int.n
      Tezos_protocol_alpha.Protocol.Script_int.num
      option ->
  unparsing_mode:
    Tezos_protocol_alpha.Protocol.Script_ir_unparser.unparsing_mode option ->
  source:Tezos_protocol_environment_alpha.Signature.Public_key_hash.t option ->
  sender:Tezos_protocol_alpha.Protocol.Alpha_context.Contract.t option ->
  self:Tezos_raw_protocol_alpha.Contract_hash.t option ->
  parameter:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr option ->
  amount:Tezos_protocol_alpha.Protocol.Alpha_context.Tez.t ->
  balance:Tezos_protocol_alpha.Protocol.Alpha_context.Tez.t option ->
  other_contracts:S.other_contract_description list option ->
  extra_big_maps:S.extra_big_map_description list option ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  ((Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
    * Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr)
     list
   * Tezos_protocol_alpha.Protocol.Alpha_context.Gas.t)
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval typecheck_code : 
  gas:Tezos_protocol_alpha.Protocol.Alpha_context.Gas.Arith.integral option ->
  legacy:bool ->
  script:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  show_types:bool ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  ((Tezos_raw_protocol_alpha.Alpha_context.Script.location
    * (Tezos_raw_protocol_alpha.Alpha_context.Script.expr list
       * Tezos_raw_protocol_alpha.Alpha_context.Script.expr list))
     list
   * Tezos_protocol_alpha.Protocol.Alpha_context.Gas.t)
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval script_size : 
  gas:Tezos_protocol_alpha.Protocol.Alpha_context.Gas.Arith.integral option ->
  legacy:bool ->
  script:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  storage:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  int Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval typecheck_data : 
  gas:Tezos_protocol_alpha.Protocol.Alpha_context.Gas.Arith.integral option ->
  legacy:bool ->
  data:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  ty:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  Tezos_protocol_alpha.Protocol.Alpha_context.Gas.t
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval pack_data : 
  gas:Tezos_protocol_alpha.Protocol.Alpha_context.Gas.Arith.integral option ->
  data:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  ty:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  (Tezos_protocol_environment_alpha.Bytes.t
   * Tezos_protocol_alpha.Protocol.Alpha_context.Gas.t)
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval normalize_data : 
  legacy:bool ->
  other_contracts:S.other_contract_description list option ->
  extra_big_maps:S.extra_big_map_description list option ->
  data:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  ty:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  unparsing_mode:
    Tezos_protocol_alpha.Protocol.Script_ir_unparser.unparsing_mode ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval normalize_stack : 
  legacy:bool ->
  other_contracts:S.other_contract_description list option ->
  extra_big_maps:S.extra_big_map_description list option ->
  stack:
    (Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
     * Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr)
      list ->
  unparsing_mode:
    Tezos_protocol_alpha.Protocol.Script_ir_unparser.unparsing_mode ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  (Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
   * Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr)
    list
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval normalize_script : 
  script:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  unparsing_mode:
    Tezos_protocol_alpha.Protocol.Script_ir_unparser.unparsing_mode ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval normalize_type : 
  ty:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval run_operation : 
  op:Tezos_protocol_alpha.Protocol.Alpha_context.Operation.packed ->
  chain_id:Tezos_protocol_alpha.Environment.Chain_id.t ->
  ?version:version ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  (Tezos_raw_protocol_alpha.Alpha_context.Operation.packed_protocol_data
   * Tezos_protocol_alpha.Protocol.Apply_results.packed_operation_metadata,
    Tezos_base.TzPervasives.Error_monad.tztrace)
    Stdlib.result
    Lwt.tval simulate_operation : 
  op:Tezos_protocol_alpha.Protocol.Alpha_context.Operation.packed ->
  chain_id:Tezos_protocol_alpha.Environment.Chain_id.t ->
  latency:int ->
  ?version:version ->
  ?successor_level:bool ->
  ?blocks_before_activation:int32 ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  (Tezos_raw_protocol_alpha.Alpha_context.Operation.packed_protocol_data
   * Tezos_protocol_alpha.Protocol.Apply_results.packed_operation_metadata,
    Tezos_base.TzPervasives.Error_monad.tztrace)
    Stdlib.result
    Lwt.tval entrypoint_type : 
  script:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  entrypoint:Tezos_protocol_alpha.Protocol.Alpha_context.Entrypoint.t ->
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.tval list_entrypoints : 
  'a Tezos_protocol_alpha.Environment.RPC_context.simple ->
  'a ->
  script:Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr ->
  (Tezos_protocol_alpha.Protocol.Michelson_v1_primitives.prim list list
   * (string * Tezos_protocol_alpha.Protocol.Alpha_context.Script.expr) list)
    Tezos_protocol_environment_alpha.Error_monad.shell_tzresult
    Tezos_protocol_environment_alpha.Lwt.t