#!/bin/python
from math import isqrt
import math
import subprocess
from typing import List, Tuple, Union
import functools
print()
s="abca".encode('u8')
assert int.from_bytes(b"AB", "big")==(65<<8|66)
@functools.lru_cache(maxsize=None)
def value(i: int, j: int)->int: return int.from_bytes(s[i:j], "big")
@functools.lru_cache(maxsize=None)
def work(i: int, j: int)->Tuple[Union[int, float], List[int]]:
assert i<=j<=len(s)
v=value(i, j)
if j==len(s): return (v+1, [v])
best: Tuple[Union[int, float], List[int]]=(math.inf, [])