#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
  string s;
  while(getline(cin,s)){
    double w;
    vector<double> v;
    stringstream ss(s);
    ss>>w;
    double t;
    while(ss>>t) v.push_back(t);
    int n=v.size();
    double dp[1<<n][n],inf=1<<25;
    for(int i=0;i<(1<<n);i++)
      for(int j=0;j<n;j++)
	dp[i][j]=inf;
    for(int i=0;i<n;i++) dp[1<<i][i]=v[i];
    for(int i=1;i<(1<<n);i++)
      for(int j=0;j<n;j++)
	for(int k=0;k<n;k++)
	  if(((i>>j)&1)&&!((i>>k)&1)) dp[i+(1<<k)][k]=min(dp[i+(1<<k)][k],dp[i][j]+sqrt((v[j]+v[k])*(v[j]+v[k])-(v[j]-v[k])*(v[j]-v[k])));
    bool f=0;
    for(int i=0;i<n;i++) f|=dp[(1<<n)-1][i]+v[i]<=w;
    cout<<(f?"OK":"NG")<<endl;
  }
  return 0;
}