#include <algorithm>
#include <string>
#include <sstream>
#include <iostream>
#include <cmath>
#include <bits/stdc++.h>
#define int long long
using namespace std;
static const int MAX_N = 20;
static const double inf = 1ll<<60;
static const double EPS = 0.0000001;
int N;
double L;
double R[MAX_N];
int maxbit;
int s;
double mem[10005][MAX_N];

double call(int bit,int p){
    double res=inf;
    if(mem[bit][p]!=-1.0d)return mem[bit][p];
    if(bit==maxbit){
        return R[p]+R[s];
    }
    for(int i=0;i<N;++i){
        int b=bit;
        int k=1<<i;
        if(b&k)continue;
        double a = abs(R[i] - R[p]), c = R[i] + R[p];
		double val = sqrt(c*c - a*a);
        res=min(call(b+k,i)+val,res);
    }
    return mem[bit][p]=res;
}

signed main(){
    while (cin >> L)
	{
		N = 0;
		string S;
		getline(cin, S);
		stringstream SS(S);
		while (!SS.eof()) SS >> R[N++];
		for(int i=0;i<N;++i)maxbit+=pow(2,i);
		double ans=inf;
		if (N == 1) ans = R[0]*2;
		else{
            for(int i=0;i<N;++i){
                for(int i=0;i<=5000;++i)for(int j=0;j<=12;++j)mem[i][j]=-1.0;
                s=i;
                ans = min(ans,call(pow(2,i),i));
            }
		}
		if (L - ans + EPS > 0) puts("OK");
		else puts("NA");
		maxbit=0;
	}
	return 0;
}