#include<bits/stdc++.h>

#define REP(i,s,n) for(int i=s;i<n;i++)
#define rep(i,n) REP(i,0,n)

using namespace std;

string O;

bool check(string s,string t) {
  int cur[2] = {0,0};
  bool phase = false;
  rep(i,(int)O.size()){
    if( !phase ) {
      if( cur[0] >= (int)s.size() ) return false;
      while( cur[0] < (int)s.size() && s[cur[0]] != O[i] ) ++cur[0];
      if( !( cur[0] < (int)s.size() && s[cur[0]] == O[i] ) ) return false;
      ++cur[0];
    } else {
      if( cur[1] >= (int)t.size() ) return false;
      while( cur[1] < (int)t.size() && t[cur[1]] != O[i] ) ++cur[1];
      if( !( cur[1] < (int)t.size() && t[cur[1]] == O[i] ) ) return false;
      ++cur[1];
    }
    phase = !phase;
  }
  return true;
}

void compute(string S,string T) {
  if( check(S,T) ) {
    puts("Yes");
    return;
  }
  if( check(T,S) ) {
    puts("Yes");
    return;
  }
  puts("No");
}

int main(){
  string s,t;
  cin >> s >> t;
  O = s;
  compute(s,t);
  return 0;
}