#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; const constexpr int INF = 1e9; //typedef std::pair P; #define FOR(i, a, n) for (ll i = (ll)a; i<(ll)n; ++i) #define REP(i, n) FOR(i, 0, n) typedef long long ll; typedef vector VI; const constexpr ll MOD = 1e9+7; vector > vp; struct Less { bool operator()(const pair& x, const pair& y) const { return x.first > y.first; } }; ll GCD(ll a, ll b){ if(b==0) return a; return GCD(b, a%b); } //グラフの隣接リスト VI g[200010]; //頂点の入次数を管理 int h[100010]; string s; int p[6] = {2, 3, 5, 7, 11, 13}; int c[6] = {4, 6, 8, 9, 10, 12}; int main(void) { double P, K; cin >> P >> K; int sump = 2+3+5+7+11+13; int sumc = 4+6+8+9+10+12; double pp = (double)sump/6; double cc = (double)sumc/6; cout << setprecision(20) << pow(pp, P)*pow(cc, K) << endl; }