code: def test_kwargs_with_multiple_inheritance(self):
      # Basic idea: have two identical classes, differing only in the order of their multiple
      # inheritance, and make sure that passing kwargs up to the super class works in both cases.
      class A(Registrable):
          def __init__(self, a: int):
              self.a = a
  
      from numbers import Number
  
      @A.register("b1")
      class B1(A, Number):
          def __init__(self, b: float, **kwargs):
              super().__init__(**kwargs)
              self.b = b
  
      @A.register("b2")
      class B2(Number, A):
          def __init__(self, b: float, **kwargs):
              super().__init__(**kwargs)
              self.b = b
  
      b = B1.from_params(params=Params({"a": 4, "b": 5}))
      assert b.b == 5
      assert b.a == 4
  
      b = B2.from_params(params=Params({"a": 4, "b": 5}))
      assert b.b == 5
      assert b.a == 4
  
imports: from typing import Dict, Iterable, List, Mapping, Optional, Set, Tuple, Union
  import pytest
  import torch
  from allennlp.common import Lazy, Params, Registrable
  from allennlp.common.from_params import FromParams, takes_arg, remove_optional, create_kwargs
  from allennlp.common.testing import AllenNlpTestCase
  from allennlp.data import DataLoader, DatasetReader, Tokenizer
  from allennlp.models import Model
  from allennlp.models.archival import load_archive
  from allennlp.common.checks import ConfigurationError
label_desc: Use image node_id 22 for calling the TestFromParams obj's underlying member method code with example usage: obj.test_kwargs_with_multiple_inheritance() without return types