code: def set_blocks(self, list=None, dict=None, fill_air=False):
          
          if list:
              # Inputting a list like self.blocksList
              self.blocksList = list
          elif dict:
              # Inputting a dictionary like result of self.get_blocks_struct()
              list = []
              for x in range(16):
                  for z in range(16):
                      for y in range(128):
                          coord = x,y,z
                          offset = y + z*128 + x*128*16
                          if (coord in dict):
                              list.append(dict[coord])
                          else:
                              if (self.blocksList[offset] and not fill_air):
                                  list.append(self.blocksList[offset])
                              else:
                                  list.append(0) # Air
              self.blocksList = list
          else:
              # None of the above...
              return False
          return True
docs: Sets all blocks in this chunk, using either a list or dictionary.  
          Blocks not explicitly set can be filled to air by setting fill_air to True.