def METHOD_NAME(self, *args, **kwargs):
    if self.is_serialised:
        raise RuntimeError(f'Deserialise called twice for "{self.__class__.__name__}"')
    self.start_offset = self.stream.offset
    self._deserialise(*args, **kwargs)
    if INCLUDE_METADATA:
        self.end_offset = self.stream.offset - 1
    self.is_serialised = True
    return self