code: def create(self, data, inlineparent = None):
          '''
          Create a struct and use all bytes of data. Different from parse(), this takes all data,
          store unused bytes in "extra" data of the struct. Some types like variable-length array
          may have different parse result with create() and parse().
          
          :param data: bytes of a packed struct.
          
          :param inlineparent: if specified, this struct is embedded in another struct "inlineparent"
          
          :returns: a created NamedStruct object.
          '''
          if self.base is not None:
              return self.base.create(data, inlineparent)
          c = self._create(data, inlineparent)
          self.subclass(c)
          return f create(self, data, inlineparent = None):
          '''
          Create a struct and use all bytes of data. Different from parse(), this takes all data,
          store unused bytes in "extra" data of the struct. Some types like variable-length array
          may have different parse result with create() and parse().
          
          :param data: bytes of a packed struct.
          
          :param inlineparent: if specified, this struct is embedded in another struct "inlineparent"
          
          :returns: a created NamedStruct object.
          '''
          if self.base is not None:
              return self.base.create(data, inlineparent)
          c = self._create(data, inlineparent)
          self.subclass(c)
          return c
docs: Create a struct and use all bytes of data. Different from parse(), this takes all data,
          store unused bytes in "extra" data of the struct. Some types like variable-length array
          may have different parse result with create() and parse().
          
          :param data: bytes of a packed struct.
          
          :param inlineparent: if specified, this struct is embedded in another struct "inlineparent"
          
          :returns: a created NamedStruct object.