#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <algorithm>
#define REP(i, a, b) for (int i = (a); i < (b); ++i)
#define rep(i, n) REP(i, 0, n)
int main()
{
    int a[12], b[12];
    char buf[256];
    while (fgets(buf, 256, stdin)) {
        char* p = strtok(buf, " ");
        int L = atoi(p);
        int n = 0;
        while (p = strtok(NULL, " ")) a[n++] = atoi(p);
        std::sort(a, a + n);
        bool ok = false;

        b[n/2] = a[0];
        int i = 0, j = 1, k = 1, l = 1;
        while (i < n) {
            if (i % 4 == 0) { b[n/2+k] = a[n-l]; l++; }
            if (i % 4 == 1) { b[n/2-k] = a[n-l]; l++; k++; }
            if (i % 4 == 2) { b[n/2+k] = a[j]; j++; }
            if (i % 4 == 3) { b[n/2-k] = a[j]; j++; k++; }
            i++;
        }
        double t = b[0];
        REP(i, 1, n) t += 2 * sqrt(b[i-1] * b[i]);
        t += b[n-1];
        if (!(t > L)) ok = true;

        puts(ok ? "OK" : "NA");
    }
    return 0;
}