#include <bits/stdc++.h>
using namespace std;
int a, b, n, i, j, k, tot;
int all, dl[2000011], st[111], x[2000011], d[2000011], y[2000011];
bool win[2000011];
bool quick(int a, int b) {
  long long x;
  x = 1;
  while (b) {
    x *= a;
    b--;
    if (x >= n) return false;
  }
  return true;
}
int calc(int x, int y) {
  if (x < a || y < b) return 0;
  return st[y] + x - a;
}
int main() {
  cin >> a >> b >> n;
  if (!quick(a, b + 1) && !quick(a + 1, b)) {
    cout << "Stas";
    return 0;
  }
  for (i = max(2, b); quick(max(a, 2), i); i++) {
    st[i] = tot + 1;
    for (j = a; quick(j, i); j++) {
      x[++tot] = j;
      y[tot] = i;
      k = calc(j, i - 1);
      if (k) d[k]++;
      k = calc(j - 1, i);
      if (k) d[k]++;
    }
  }
  for (i = 1; i <= tot; i++)
    if (d[i] == 0) dl[++all] = i;
  for (i = 1; i <= all; i++) {
    k = calc(x[dl[i]] - 1, y[dl[i]]);
    if (k) {
      d[k]--;
      if (d[k] == 0) dl[++all] = k;
      if (!win[dl[i]]) win[k] = true;
    }
    k = calc(x[dl[i]], y[dl[i]] - 1);
    if (k) {
      d[k]--;
      if (d[k] == 0) dl[++all] = k;
      if (!win[dl[i]]) win[k] = true;
    }
  }
  if (a > 1 && b > 1) {
    if (win[calc(a, b)])
      cout << "Masha";
    else
      cout << "Stas";
    return 0;
  }
  bool A = false, CA = false;
  bool B = false, CB = false;
  if (b == 1) {
    for (i = max(2, a); (long long)i * i < n; i++)
      if (quick(i, 2) && !win[calc(i, 2)]) {
        CA = true;
        A = (((i - a) & 1) == 0);
        break;
      }
    if (!CA) CA = true, A = ((n - a - 1) & 1);
  }
  if (a == 1)
    for (i = max(2, b); quick(2, i); i++)
      if (!win[calc(2, i)]) {
        CB = true;
        B = (((i - b) & 1) == 0);
        break;
      }
  if (a + b != 2 && a == 1 && quick(2, b) && !win[calc(2, b)]) {
    cout << "Masha";
    return 0;
  }
  if (CA && A) {
    cout << "Masha";
    return 0;
  }
  if (CB && B) {
    cout << "Masha";
    return 0;
  }
  if (a == 1 && !CB) {
    cout << "Missing";
    return 0;
  }
  cout << "Stas";
  return 0;
}
