public game[] getBoards(game Game){
        board b = Game.getBoard();
        int loc[] = Game.getLast();
        tic t = b.getState(loc);
        
        /* 
         * the amount of possible board states will be the amount of 0's
         * in the specific "smaller" board
         */
        int n = t.getspots();
        game[] list = new game[n];
        
        
        for(int i=0;i<3;i++){
            for(int j=0;j<3;j++){
                
                /* find the empty spots */
                if(t.getState(i, j) != 0){ continue; }
                    
                /* make game if it is 0 */
                    /* formulate location array */
                int[] f = {loc[0],loc[1],i,j};
                
                /* store the node into array */
                list[n-1] = new game(Game);
                list[--n].makeTurn(f);
                
                /* speed check... */
                if(list[0] != null) {return list;}                
            }
        }
        
        return list;
    }