#include <bits/stdc++.h>
using namespace std;

int main() {
  int n,m,d[300],u[300];
  while(cin >> m && m) {
    cin >> n;
    memset(d,0,sizeof(d));
    memset(u,0,sizeof(u));
    for(int i=1; i<=n; i++) cin >> d[i];
    queue<int> que;
    que.push(0);
    u[0]=1;
    while(!que.empty()) {
      int x=que.front();que.pop();
      for(int i=1; i<=m; i++) {
        int y=i+x;
        if(y<0) y=0;
        else if(y>=n+2) y=n+1;
        y+=d[y];
        if(y<0) y=0;
        else if(y>=n+2) y=n+1;
        if(u[y]) continue;
        u[y]=1;
        que.push(y);
      }
    }
    bool f=1;
    for(int j=0; j<n+2; j++) {
      if(!u[j]) continue;
      memset(u,0,sizeof(u));
      u[j]=1;
      que.push(j);
      u[j]=1;
      while(!que.empty()) {
        int x=que.front();que.pop();
        for(int i=1; i<=m; i++) {
          int y=i+x;
          if(y<0) y=0;
          else if(y>=n+2) y=n+1;
          y+=d[y];
          if(y<0) y=0;
          else if(y>=n+2) y=n+1;
          if(u[y]) continue;
          u[y]=1;
          que.push(y);
        }
      }
      if(!u[n+1]) f=0;
    }
    if(f) cout << "OK" << endl;
    else cout << "NG" << endl;
  }
  return 0;
}
