#include using namespace std; typedef long long ll; templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b #define vl vector #define vii vector> #define vll vector> #define vvi vector> #define vvl vector> #define vvii vector>> #define vvll vector>> #define vst vector #define pii pair #define pll pair #define pb push_back #define all(x) (x).begin(),(x).end() #define mkunique(x) sort(all(x));(x).erase(unique(all(x)),(x).end()) #define fi first #define se second #define mp make_pair #define si(x) int(x.size()) const int mod=998244353,MAX=300005,INF=15<<26; bool NG(string S){ ll sum=0; for(char c:S){ if(c=='3') return true; sum+=(c-'0'); } return sum%3==0; } void UPD(string &S){ for(int i=0;i=0;j--){ if(S[j]!='0'){ S[j]--; for(int i=j+1;i>S; while(NG(S)){ UPD(S); } cout<