def restore(self, state):
        """Restore the contents of this virtual stream walker.

        Args:
            state (dict): The previously serialized state.

        Raises:
            ArgumentError: If the serialized state does not have
                a matching selector.
        """


        selector = DataStreamSelector.FromString(state.get(u'selector'))
        if self.selector != selector:
            raise ArgumentError("Attempted to restore an InvalidStreamWalker with a different selector",
                                selector=self.selector, serialized_data=state)

        if state.get(u'type') != u'invalid':
            raise ArgumentError("Invalid serialized state for InvalidStreamWalker", serialized_data=state)