Din păcate, nu toate numerele naturale permit determinarea unui număr câștigător. De exemplu, pentru numărul $21$ nu există niciun număr natural *X* din care să putem obține $21$ după regula descrisă de mama lui Iliuță.
Cu ajutorul unui program a fost generat automat un șir de *N* numere, numerotate în ordinea generării $*S[~1~]*, *S[~2~]*, ..., *S[~N~]*$. Programul respectiv primește patru numere naturale $*A*, *B*, *C*, *D*$ și primul număr din șir *S[~1~]*. Al [$i$]-lea număr generat se obține după regula $*Si* = (([*S[~i-1~]*] % *A* ) * *B* + *C*) % *D*$, unde $1 < i ≤ *N*$, iar $a % b$ reprezintă restul împărțirii lui $a$ la $b (b ≠ 0)$.
Cu ajutorul unui program a fost generat automat un șir de *N* numere, numerotate în ordinea generării $*S[~1~]*, *S[~2~]*, ..., *S[~N~]*$. Programul respectiv primește patru numere naturale $*A*, *B*, *C*, *D*$ și primul număr din șir *S[~1~]*. Al [$i$]-lea număr generat se obține după regula $*Si* = (([*S[~i-1~]*] % *A* ) * *B* + *C*) % *D*$, unde $1 < i ≤ *N*$, iar $a % b$ reprezintă restul împărțirii lui $a$ la $b (b ≠ 0)$.
h2. Cerință
Cunoscându-se numerele naturale *N*, *S1*, *A*, *B*, *C*, *D*, scrieți un program care rezolvă următoarele cerințe:
1) pentru fiecare dintre termenii șirului *S1*, *S2*, ..., *SN*, determină cel mai mare număr natural *mai mic strict* decât termenul respectiv, pentru care există un număr câștigător; programul va afișa restul împărțirii sumei numerelor obținute la 10[^18^] + 31;
1) pentru fiecare dintre termenii șirului *S1*, *S2*, ..., *SN*, determină cel mai mare număr natural *mai mic strict* decât termenul respectiv, pentru care există un număr câștigător; programul va afișa restul împărțirii sumei numerelor obținute la 10[^18^] + 31;
2) pentru fiecare dintre termenii șirului *S1*, *S2*, ..., *SN*, determină câte numere naturale *mai mici sau egale* cu termenul respectiv *NU* au număr câștigător; programul va afișa restul împărțirii sumei rezultatelor obținute la 10[^18^] + 31.
h2. Date de intrare