code: def test_multiple_renamed(self):
      with Blocks() as demo:
          i = Textbox()
          o = Textbox()
          i.change(lambda x: f"{x}0", i, o, api_name="p")
          i.change(lambda x: f"{x}1", i, o, api_name="p")
          i.change(lambda x: f"{x}2", i, o, api_name="p_1")
  
      app, _, _ = demo.launch(prevent_thread_lock=True)
      client = TestClient(app)
      response = client.post("/api/p/", json={"data": ["test"]})
      assert response.status_code == 200
      output = dict(response.json())
      assert output["data"] == ["test0"]
  
      response = client.post("/api/p_1/", json={"data": ["test"]})
      assert response.status_code == 200
      output = dict(response.json())
      assert output["data"] == ["test1"]
  
      response = client.post("/api/p_1_1/", json={"data": ["test"]})
      assert response.status_code == 200
      output = dict(response.json())
      assert output["data"] == ["test2"]
  
imports: import functools
  import os
  import tempfile
  from contextlib import asynccontextmanager, closing
  from unittest import mock
  import gradio_client
  import numpy
  import pandas
  import pytest
  import starlette.routing
  from fastapi import FastAPI
  from fastapi.testclient import TestClient
  from gradio_client import media_data
  import gradio
  from gradio import Blocks, Button, Interface, Number, Textbox, close_all, routes, wasm_utils
  from gradio.route_utils import FnIndexInferError
label_desc: Use image node_id 10 for calling the TestRoutes obj's underlying member method code with example usage: obj.test_multiple_renamed() without return types