private boolean isValidMineLoc(Block block){
    	final HashSet<Material> naturalMats = new HashSet<Material>(4);
						    	naturalMats.add(Material.COBBLESTONE);
						    	naturalMats.add(Material.DIRT);
						    	naturalMats.add(Material.GRASS);
						    	naturalMats.add(Material.GRAVEL);
						    	naturalMats.add(Material.LOG);
						    	naturalMats.add(Material.NETHERRACK);
						    	naturalMats.add(Material.SAND);
						    	naturalMats.add(Material.SANDSTONE);
						    	naturalMats.add(Material.SNOW_BLOCK);
						    	naturalMats.add(Material.STONE);
    	
    	if(naturalMats.contains(block.getType())){
    		int tripCount = 0;
    		for(BlockFace faceName : this.bChecks){
    			if(!naturalMats.contains(block.getRelative(faceName).getType()) ){
        			return false;
        		}
    			if(block.getRelative(faceName).getRelative(BlockFace.UP).getTypeId() == 0){
    				tripCount++;
    			}
    		}
    		return tripCount > 0 ? true : false;
    	}else{
    		return false;
    	}
    }