#include //コンパイラと浮動小数点高速化 #pragma GCC target("avx") #pragma GCC optimize("unroll-loops") #pragma GCC optimize("O3") #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native") //cin,endlの高速化 //インタラクティブのときは外す // struct Fast {Fast() {std::cin.tie(0); ios::sync_with_stdio(false);}} fast; #define endl '\n' using namespace std; using ld=long double; using ll= long long; using ull= unsigned long long; using vi= vector; using vvi= vector; using vvvi= vector; using vll= vector; using vvll= vector; using vvvll= vector; using vs= vector; using vc= vector; using vvc= vector; using vvvc= vector; using vb= vector; using vvb = vector; using vd=vector; using vvd=vector; //pairエイリアス using pii= pair; using vpii= vector; using pll=pair; using vpll=vector; //using Graph = vector>; // グラフ型重みなし ありはint =edge #define reps(i, n, m) for (ll i = (ll)n; i < (ll)m; i++) #define rrep(i,a,b) for(int i=a;i>=b;i--) #define rep(i, m) reps(i, 0, m) #define all(a) a.begin(), a.end() #define vecsort(a) sort(all(a)) #define PQminll priority_queue, greater> #define PQmaxll priority_queue,less> #define PQminP priority_queue, greater

> #define PQmaxP priority_queue,less

> #define NP next_permutation #define pb push_back #define mp make_pair inline int ctoi(char c) {return c - '0';} templateinline void vcin(vector &n){for(int i=0;i>n[i];} templateinline void vcin(vector &n,vector &m){for(int i=0;i>n[i]>>m[i];} templateinline void vcin(vector> &n){for(int i=0;i>n[i][j];}}} templateinline void vcout(vector &n,bool tmp){for(int i=0;iinline void vcout(vector> &n){for(int i=0;iinline void vcout(vector&a,vector&b){for(int i=0;iinline void vcout(pair&tmp){cout<&a){for(bool tmp:a)if(!tmp)return false;else true;} inline void vbYes(vector&a){Yes(vbtrue(a));} inline void vbyes(vector&a){yes(vbtrue(a));} inline void vbYES(vector&a){YES(vbtrue(a));} template inline bool chmax(T &a, const T &b) { if (a < b) { a = b; return true; } return false; } template inline bool chmin(T &a, const T &b) { if (a > b) { a = b; return true; } return false; } templateauto min(const T& a){ return *min_element(all(a));} templateauto max(const T& a){ return *max_element(all(a));} template inline bool isprime(const T b) { if(b==1)return false;if(b==2||b==3)return true;else{for(int i=2;i*i<=b;i++)if(b%i==0)return false;}return true;} ll pop(ll x){return __builtin_popcountll(x);}//bit counting true //grpahアルゴリズム-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*// //template inline void Gcin(T a,U &G,bool tmp){rep(i,a){int x,y;cin>>x>>y;G[x].pb(y);if(tmp){G[y].pb(x);}}}//無向の時true class UnionFind{ public: vector parent; //parent[i]はiの親 vector siz; //素集合のサイズを表す配列(1で初期化) map> group; //集合ごとに管理する(key:集合の代表元、value:集合の要素の配列) ll n; //要素数 //コンストラクタ UnionFind(ll n_):n(n_),parent(n_),siz(n_,1){ //全ての要素の根が自身であるとして初期化 for(ll i=0;i(n,1); group.clear(); } }; //-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*--*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* const int INF=0x3fffffff; const ll LINF=0x1fffffffffffffff; const ld LPI=3.1415926535897932384626433832795028841971; const double pi=3.14159265358; const int dx[4] = {1, 0, -1, 0}; const int dy[4] = {0, 1, 0, -1}; struct Edge { int to; // 辺の行き先 int weight; // 辺の重み Edge(int t, int w) : to(t), weight(w) { } }; using Graph = vector; // グラフ型重みなし ありはint =edge /*------------------------------------------------------------------------------------------------------------------------*/ int main(){ string s,t; cin>>s>>t; int n; cin>>n; cout<