code: def cli_main():
      
      SearchContext.commit()
      args = parser.parse_args()
      # open up a browser
      firefox_remote = Remote("http://127.0.0.1:4444/wd/hub", DesiredCapabilities.FIREFOX)
      with contextlib.closing(firefox_remote):
          context = SearchContext.from_instances([FastSearch(), Browser(firefox_remote)])
          search = Search(parent=context)
  
          if args.fast:
              with context.use(FastSearch, Browser):
                  main(search, args.query)
          else:
              with context.use(Browser):
                  main(search, args.query)
docs: cli entrypoitns, sets up everything needed