#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <climits>
#include <cfloat>
#include <cstring>
#include <map>
#include <utility>
#include <set>
#include <iostream>
#include <memory>
#include <string>
#include <vector>
#include <algorithm>
#include <functional>
#include <sstream>
#include <fstream>
#include <complex>
#include <stack>
#include <queue>

using namespace std;
typedef long long LL;
typedef pair<int, int> PII;
static const double EPS = 1e-5;

#define FOR(i,k,n) for (int i=(k); i<(int)(n); ++i)
#define REP(i,n) FOR(i,0,n)

int main(void){
  string in;
  while(getline(cin,in)){
    if(in=="") break;
    stringstream ss;
    ss<<in;
    int l,tmp;
    vector<int> r;
    ss>>l;
    while(ss>>tmp)r.push_back(tmp);
    bool able = false;
    REP(i,r.size()){
      vector<int> tmp = r;
      int prev = r[i];
      double alen = r[i];
      tmp.erase(tmp.begin()+i);
      while(!tmp.empty()){
        PII maxp = PII(-1,0);
        REP(i,tmp.size()){
          if(abs(prev-tmp[i])>maxp.first){
            maxp = PII(abs(prev-tmp[i]),i);
          }
        }
        int next = tmp[maxp.second];
        alen += 2*sqrt(next*prev);
        prev = next;
        tmp.erase(tmp.begin()+maxp.second);
      }
      alen += prev;
      if(alen<=(double)l){
        able = true;
        break;
      }
    }
    if(able) cout<<"OK"<<endl;
    else cout<<"NA"<<endl;
  }
  return 0;
}