#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
int main() {
  int n, a[10100], i, b[10100];
  scanf("%d", &n);
  int first = 1 << (n + 1);
  for (int(i) = (2); (i) < (first); ++(i)) {
    scanf("%d", &a[i]);
  }
  int sum = 0;
  for (i = first - 1; i > 2; i -= 2) {
    if (2 * i + 1 > first - 1) {
      if (a[i] > a[(i / 2) * 2]) {
        sum = sum + a[i] - a[(i / 2) * 2];
        a[(i / 2) * 2] = a[i];
        b[i / 2] = a[i];
      } else {
        sum = sum - a[i] + a[(i / 2) * 2];
        b[i / 2] = a[(i / 2) * 2];
      }
    } else {
      if (b[i] + a[i] > b[2 * (i / 2)] + a[2 * (i / 2)]) {
        sum = sum + (b[i] + a[i]) - (b[2 * (i / 2)] + a[2 * (i / 2)]);
        a[2 * (i / 2)] =
            a[2 * (i / 2)] + (b[i] + a[i]) - (b[2 * (i / 2)] + a[2 * (i / 2)]);
        b[i / 2] = b[i] + a[i];
      } else {
        sum = sum - (b[i] + a[i]) + (b[2 * (i / 2)] + a[2 * (i / 2)]);
        a[i] = a[i] - (b[i] + a[i]) + (b[2 * (i / 2)] + a[2 * (i / 2)]);
        b[i / 2] = b[2 * (i / 2)] + a[2 * (i / 2)];
      }
    }
  }
  printf("%d\n", sum);
  return (0);
}
