# Skip list proofs size ## Messages En utilisant les limites de mainnet: ```ocaml let test_inbox_max_number_of_messages_per_level () = let* block, (account1, account2) = context_init ~hard_gas_limit_per_block:Gas.Arith.(integral_of_int_exn 2_600_000) ~hard_gas_limit_per_operation:Gas.Arith.(integral_of_int_exn 1_040_000) Context.T2 in let* block, _rollup = sc_originate block account1 "unit" in let _max_number_of_messages_per_level = Constants.sc_rollup_max_number_of_messages_per_level in let* incr = Incremental.begin_construction block in (* This just one message below the limit *) let messages = List.repeat 400_000 "foo" in let* op = Op.sc_rollup_add_messages ~gas_limit:Max (I incr) account1 messages in let* incr = Incremental.add_operation ~check_size:false incr op in let messages = List.repeat 395_000 "foo" in let* op = Op.sc_rollup_add_messages ~gas_limit:Max (I incr) account2 messages in let* incr = Incremental.add_operation ~check_size:false incr op in let* _b = Incremental.finalize_block incr in return_unit ``` L'ajout de seulement quelques messages après `795_000` fait dépasser la limite en gas du block. On a donc au maximum ~= `800_000` messages par block, pas loin du 1M. (Peut être refaire les tests avec `message = "x"`, pour avoir le coût minimal de hash) ## Inbox levels On a vu que la preuve de 800k à 1M fait ~= 7Kb. Nombres de blocks par jour: 4 * 60 * 24 = 5760 1_000_000 / 5760 = 173 Il faut 173 jours de retard pour atteindre 1M, on peut donc dire que la condition `taille opération tezos > preuve inbox + preuve message + preuve read_input` est respecter tant que `preuve read_input < 32000 - (7000 + 7000); preuve read_input < 18000`