code: def getBlock(self, block_identifier, full_transactions=False):
          
          method = select_method_for_block_identifier(
              block_identifier,
              if_predefined='eth_getBlockByNumber',
              if_hash='eth_getBlockByHash',
              if_number='eth_getBlockByNumber',
          )
  
          result = self.web3.manager.request_blocking(
              method,
              [block_identifier, full_transactions],
          )
          if result is None:
              raise BlockNotFound(f"Block with id: {block_identifier} not found.")
          return result
docs: `eth_getBlockByHash`
          `eth_getBlockByNumber`