import sys
import json
import importlib
import os
sys.path.append(os.path.join(os.path.dirname(__file__), ".."))
class TT(Exception):
    def __init__(self, msg):
        super().__init__()
        self.msg = msg
    def __str__(self):
        return self.msg
        

def handle(*section_path, **kwargs):
    module_name = f"{'.'.join(section_path)}"
    endpoint = importlib.import_module(module_name)
    return endpoint.process_request(**kwargs)

if __name__ == "__main__":
    uri = sys.argv[1]
    if "?" in uri:
        path = uri[0:uri.find("?")]
        query = uri[uri.find("?") + 1:]
    else:
        path = uri
        query = ""

    kwargs = {}
    for entry in query.split("&"):
        kwargs[entry[0:entry.find("=")]] = entry[entry.find("=") + 1:]

    split_path = path.split("/")
    while split_path[0] == "":
        split_path.pop(0)


    print(json.dumps(handle(*split_path, **kwargs)))