code: def change_subitem(self, offset=None, max_item_count=None, nom=True):
          
          if offset == None:
              return
  
          if self.slots['subitem'] == None:
              self.slots['subitem'] = 1
  
          new_item = self.slots['subitem']+offset
          if new_item > max_item_count:
              new_item -= max_item_count
              self.change_subpage(offset=+1, nom=False)
          elif new_item < 1 and self.current_subpage() > 1:
              self.change_subpage(offset=-1, nom=False)
              if max_item_count != None:
                  new_item += max_item_count
              else:
                  new_item += self.page_items
  
          self.slots['subitem'] = new_item
          return True
docs: Args:
          * offset - Integer - The positive / negative change to apply
            to the item.
          * max_item_count - The maximum number of items available.
          * nom - None on Max or Min - If max or min number of itemsreached,
            return none instead of forcing back into range.
  
      Returns:
          Boolean - True if successful, False if nom is True and the
          value was forced back within the boundry.
  
      change_item's use case is +1 / -1 incrementing through a gallery.
  
      The logic works fine for +1 boundary between pages