#include <bits/stdc++.h>
using namespace std;
const int INF = 1e9 + 7;
const int maxn = 1000005;
int n, m;
int main() {
  while (~scanf("%d%d", &n, &m)) {
    if (n == 0) {
      printf("0 1\n");
      printf("0 %d\n", m);
      printf("0 0\n");
      printf("0 %d\n", m - 1);
    } else if (m == 0) {
      printf("1 0\n");
      printf("%d 0\n", n);
      printf("0 0\n");
      printf("%d 0\n", n - 1);
    } else {
      double xie = sqrt(n * n * 1.0 + m * m * 1.0);
      double ans1 = n * 1.0 + 2.0 * xie;
      double ans2 = m * 1.0 + 2.0 * xie;
      double ans3 = 2.0 * sqrt((n - 1.0) * (n - 1.0) * 1.0 + m * m * 1.0) + xie;
      double ans4 = 2.0 * sqrt(n * n * 1.0 + (m - 1.0) * (m - 1.0) * 1.0) + xie;
      double ans = max(ans1, ans2);
      ans = max(ans, ans3);
      ans = max(ans, ans4);
      if (ans == ans1)
        printf("%d %d\n%d %d\n%d %d\n%d %d\n", 0, m, n, 0, 0, 0, n, m);
      else if (ans == ans2)
        printf("%d %d\n%d %d\n%d %d\n%d %d\n", n, 0, 0, m, 0, 0, n, m);
      else if (ans == ans3)
        printf("%d %d\n%d %d\n%d %d\n%d %d\n", 1, 0, n, m, 0, 0, n - 1, m);
      else
        printf("%d %d\n%d %d\n%d %d\n%d %d\n", 0, 1, n, m, 0, 0, n, m - 1);
    }
  }
  return 0;
}
