code: def test_can_subclass_for_new_protocol(self, cls):
      # This test ensures that we don't reject creating a new protocol derrived
      # from our protocols.
      class CustomProtocol(
          cls, Protocol
      ):  # pylint: disable=unused-variable,g-wrong-blank-lines
          pass
  
file_path: dm-haiku/haiku/_src/typing_test.py
imports: from typing import Protocol
  from absl.testing import absltest
  from absl.testing import parameterized
  from haiku._src import module
  from haiku._src import test_utils
  from haiku._src import typing
label_desc: Use image node_id 4 for calling the TypingTest obj's underlying member method code with example usage: obj.test_can_subclass_for_new_protocol(cls) without return types