<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _print_routes(api_provider, host, port):
 """ Helper method to print the APIs that will be mounted. This method is purely for printing purposes. This method takes in a list of Route Configurations and prints out the Routes grouped by path. Grouping routes by Function Name + Path is the bulk of the logic. Example output: Mounting Product at http://127.0.0.1:3000/path1/bar [GET, POST, DELETE] Mounting Product at http://127.0.0.1:3000/path2/bar [HEAD] :param samcli.commands.local.lib.provider.ApiProvider api_provider: API Provider that can return a list of APIs :param string host: Host name where the service is running :param int port: Port number where the service is running :returns list(string):
 List of lines that were printed to the console. Helps with testing """

        grouped_api_configs = {}

        for api in api_provider.get_all():
            key = "{}-{}".format(api.function_name, api.path)

            config = grouped_api_configs.get(key, {})
            config.setdefault("methods", [])

            config["function_name"] = api.function_name
            config["path"] = api.path
            config["methods"].append(api.method)

            grouped_api_configs[key] = config

        print_lines = []
        for _, config in grouped_api_configs.items():
            methods_str = "[{}]".format(', '.join(config["methods"]))
            output = "Mounting {} at http://{}:{}{} {}".format(
                         config["function_name"],
                         host,
                         port,
                         config["path"],
                         methods_str)
            print_lines.append(output)

            LOG.info(output)

        return print_lines