code: def calculator_demo():
      def calculator(num1, operation, num2):
          if operation == "add":
              return num1 + num2
          elif operation == "subtract":
              return num1 - num2
          elif operation == "multiply":
              return num1 * num2
          elif operation == "divide":
              if num2 == 0:
                  raise gr.Error("Cannot divide by zero!")
              return num1 / num2
  
      demo = gr.Interface(
          calculator,
          [
              "number",
              gr.Radio(["add", "subtract", "multiply", "divide"]),
              "number",
          ],
          "number",
          examples=[
              [5, "add", 3],
              [4, "divide", 2],
              [-4, "multiply", 2.5],
              [0, "subtract", 1.2],
          ],
      )
      return demo
  
imports: import inspect
  import random
  import time
  import gradio
  import pytest
  from pydub import AudioSegment
label_desc: Use image node_id 2 for calling a global function with example usage: calculator_demo() and returns: demo, unknown, unknown, unknown, unknown