#include using namespace std; using LL = long long; using ULL = unsigned long long; #define rep(i,n) for(int i=0; i<(n); i++) const ULL M = 1000000007; struct X { ULL b, c; }; X operator*(X l, X r) { return { l.b * r.b % M, (l.c * r.b + r.c) % M }; } X operator^(X l, ULL i) { if (i == 0) return { 1,0 }; X res = (l * l) ^ (i / 2); if (i % 2 == 1) res = res * l; return res; } int main() { ULL N; cin >> N; X x = { 100,1 }; x = x ^ (N - 1); ULL ans = (x.b + x.c) % M; cout << ans << endl; ULL t = N % 11; if (t == 0) cout << "0" << endl; else { rep(i, t - 1) cout << "10"; cout << "1" << endl; } return 0; }