#include //#include using namespace std; //using namespace atcoder; using ll = long long; using ull = unsigned long long; using P = pair; #define rep(i,n) for(ll i = 0;i < (ll)n;i++) #define ALL(x) (x).begin(),(x).end() #define MOD 1000000007 int main(){ int n; ll V; cin >> n >> V; vector a(n); rep(i,n)cin >> a[i]; sort(ALL(a)); { ll sum = 0; rep(i,n)sum += a[i]; if(sum <= V){ cout << "Draw\n"; return 0; } } int res = 0; while(1){ int pos = 0; rep(i,a.size()){ if(V-a[i] < 0)pos = 0; else if(V-a[i] < a[0]){ pos = i; break; } } V -= a[pos]; if(V < 0)break; for(int i = pos;i < a.size()-1;i++)swap(a[i],a[i+1]); a.pop_back(); res = 1-res; } cout << (res ? "First\n" : "Second\n"); return 0; }