#include <bits/stdc++.h>
using namespace std;
const double PI = acos(-1.0);
const int INF = 1000000000;
const int MOD = 1073741824;
const int M = INF;
const double RRR = 180.0 / PI;
vector<vector<int> > g;
vector<bool> used;
void dfs(int v) {
  used[v] = 1;
  for (vector<int>::iterator it = g[v].begin(); it != g[v].end(); ++it) {
    if (!used[*it]) {
      dfs(*it);
    }
  }
}
int main() {
  int x, y;
  cin >> x >> y;
  int d1 = 1, d2 = 0;
  int e = 1;
  int f = 0;
  int a = 0, b = 0;
  int r = 0;
  int ans = 0;
  if (a == x && b == y) {
    cout << 0;
    return 0;
  }
  while (1) {
    a += d1;
    b += d2;
    r++;
    if (a == x && b == y) {
      cout << ans;
      return 0;
    }
    if (r == e) {
      ans++;
      if (f == 0) {
        f = 1;
        d1 = 0;
        d2 = 1;
        r = 0;
      } else {
        if (f == 1) {
          f = 2;
          e++;
          r = 0;
          d1 = -1;
          d2 = 0;
        } else {
          if (f == 2) {
            f = 3;
            r = 0;
            d1 = 0;
            d2 = -1;
          } else {
            f = 0;
            e++;
            r = 0;
            d1 = 1;
            d2 = 0;
          }
        }
      }
    }
  }
  return 0;
}
