#include <string>       // std::string
#include <iostream>     // std::cout
#include <sstream> 
#include <vector>
#include <algorithm>
#include <cmath>
#include <map>

using namespace std;


int get_tax(int n, vector<int> cat)
{
  double rate = 0;
  if (n<=cat[0]) rate=10;
  else if (n<=cat[1]) rate=15;
  else if (n<=cat[2]) rate=25;
  else if (n<=cat[3]) rate=28;
  else if (n<=cat[4]) rate=33;
  else if (n<=cat[5]) rate=35;
  else rate=39.6;

  return (int)floor((rate*(double)n)/(double)100);
}

int main()
{
  string s;
  getline(cin, s);

  int n;

  string tmp;
  getline(cin, tmp);
  stringstream ops(tmp);
  ops >> n;

  int single[] = {9075, 36900, 89350, 186350 , 405100, 406750 };
  int married[] = {18150, 73800, 148850, 226850 , 405100, 457600 };
  int head[] = {12950, 49400 , 127550, 206600 , 405100, 432200 };
  int sep[] = {9075, 36900  , 74425 , 113425  , 202550 , 228800  };

  if (s=="Single")
  {
    vector<int> cat(&single[0], &single[5]);
    cout << get_tax(n, cat);
  }
  if (s=="Married joint filer" || s=="Surviving spouse")
  {
    vector<int> cat(&married[0], &married[5]);
    cout << get_tax(n, cat);
  }
  if (s=="Head of household")
  {
    vector<int> cat(&head[0], &head[5]);
    cout << get_tax(n, cat);
  }
  if (s=="Married filing separately")
  {
    vector<int> cat(&sep[0], &sep[5]);
    cout << get_tax(n, cat);
  }

  return 0;
}