#include using namespace std; typedef long long ll; typedef long double ld; #define REP(i, n) for (int i = 0; i < (n); ++i) #define REPR(i, n) for (int i = n - 1; i >= 0; --i) #define FOR(i, m, n) for (int i = m; i < n; ++i) #define FORR(i, m, n) for (int i = m; i >= n; --i) #define ALL(v) (v).begin(),(v).end() templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b a(21); vector mem(1<<21,-1); bool f(int t=0,bool cur=true,int vol=v){ if(mem[t]!=-1){ return mem[t]; } bool fl; if(cur){ fl=false; REP(i,n){ if(t&(1<> n >> v; a.resize(n); mem.resize(n); ll sum=0; REP(i,n){ cin >> a[i]; sum+=a[i]; } if(sum<=v){ cout << "Draw" << endl; return 0; } cout << (f()?"First":"Second") << endl; }