@@ -0,0 +1,542 @@
+# coding=utf-8%0Aimport re%0Afrom typing import Dict%0A%0Aclass ConvertedObject:%0A    pass%0A%0Adef convertDictToObject(x: Dict) -%3E object:%0A    y = ConvertedObject()%0A%0A    for k, v in x.items():%0A        if isinstance(v, dict):%0A            v = convertDictToObject(v)%0A        setattr(y, k, v)%0A%0A    return y%0A%0Adef listAttr(x: object) -%3E list:%0A    return %5By for y in dir(x) if not y.startswith(%22__%22) and not y.endswith(%22__%22)%5D%0A%0Adef isSafeLiteral(x: str) -%3E bool:%0A    m = re.match(%22%5E%5Cw+$%22, x)%0A    m2 = re.match(%22%5E%5B%5E%5Cd%5D%22, x)%0A    return True if m and m2 else False%0A

3 util functions