input: Write a function to transpile an inference model from a source directory to a destination directory using Paddle Fluid. The function, named "Transpile", should take four arguments: "src_dir", "dst_dir", "model_filename", and "params_filename". It should create a CPUPlace object and an Executor object, then load the inference program and apply the inference transpiler to optimize it. Finally, save the optimized inference program to the destination directory. If the destination directory does not exist, create it. Additionally, create a main function to parse command-line arguments and call the "Transpile" function with the parsed arguments.
  assert Transpile("/source/dir", "/destination/dir", "model_file", "params_file")==None
  assert Transpile("/source/dir", "/destination/dir", "model_file", "params_file")==None
  assert Transpile("/source/dir", "/destination/dir", "model_file", "params_file")==None
  assert Transpile("/source/dir", "/destination/dir", "model_file", "params_file")==None
output: 
  import os
  import paddle.fluid as fluid
  
  def Transpile(src_dir, dst_dir, model_filename, params_filename):
      if not os.path.exists(dst_dir):
          os.makedirs(dst_dir)
      
      place = fluid.CPUPlace()
      exe = fluid.Executor(place)
      
      inference_program, feed_target_names, fetch_targets = fluid.io.load_inference_model(
          dirname=src_dir,
          executor=exe,
          model_filename=model_filename,
          params_filename=params_filename
      )
      
      t = fluid.InferenceTranspiler()
      t.transpile(inference_program, place)
      
      fluid.io.save_inference_model(
          dirname=dst_dir,
          feeded_var_names=feed_target_names,
          target_vars=fetch_targets,
          executor=exe,
          main_program=inference_program
      )
  