#include <bits/stdc++.h>
using namespace std;
signed main() {
  long long n0, n1;
  cin >> n0 >> n1;
  long long n = n0 + n1;
  long long ans[n * 3 + 12];
  memset(ans, -1, sizeof(ans));
  long long c = 0;
  long long last = 0;
  for (long long x = 1; x <= n; x++) {
    if (x % 2 == 1) {
      if (n1 == 0) break;
      n1--;
      ans[x] = 1;
      c++;
    } else {
      if (n0 == 0) break;
      n0--;
      ans[x] = 0;
    }
    last = x;
  }
  if (n0 == 1) {
    cout << "0";
    for (long long x = 1; x <= last; x++) {
      cout << ans[x];
    }
    return 0;
  } else if (n0 == 2 && ans[last] == 1) {
    cout << "0";
    for (long long x = 1; x <= last; x++) {
      cout << ans[x];
    }
    cout << "0";
    return 0;
  } else if (n0 > 0) {
    cout << "-1\n";
    return 0;
  }
  if (n1 > 0) {
    long long limit = c;
    if (ans[last] == 0) limit += 2;
    if (n1 > limit) {
      cout << "-1";
      return 0;
    }
    for (long long x = 1; x <= last; x++) {
      if (ans[x] == 0)
        cout << "0";
      else {
        cout << "1";
        if (n1 > 0) {
          cout << "1";
          n1--;
        }
      }
    }
    for (long long x = 1; x <= n1; x++) cout << "1";
    return 0;
  }
  if (n1 == 0 && n0 == 0) {
    for (long long x = 1; x <= last; x++) cout << ans[x];
  }
}
