#include using namespace std; #define FOR(i,a,b) for(int i=(a);i<(b);i++) #define REP(i,n) FOR(i,0,n) #define ALL(v) (v).begin(),(v).end() template inline bool chmax(A &a, B b) { if (a inline bool chmin(A &a, B b) { if (a>b) { a=b; return 1; } return 0; } typedef unsigned long long ull; typedef long long ll; typedef pair pii; typedef pair pll; typedef pair P; const ll INF = 1ll<<29; const ll MOD = 1000000007; const double EPS = 1e-10; void arrange(string& a, string& b) { reverse(ALL(a)); reverse(ALL(b)); int ma = max(a.size(), b.size()); while (a.size() < ma) a += "0"; while (b.size() < ma) b += "0"; reverse(ALL(a)); reverse(ALL(b)); } int main() { string a, b; cin >> a >> b; string ta = a, tb = b; arrange(ta, tb); bool gr = false; REP(i, ta.size()) { if (ta[i] == '4' && tb[i] == '7') break; if (ta[i] == '7' && tb[i] == '4') { gr = true; break; } if (ta[i] < tb[i]) { gr = true; break; } if (ta[i] > tb[i]) break; } cout << (gr ? b : a) << endl; return 0; }