e'ddlZGddZGddZdZdZdZd Zd Zd Z d Z d Z dZ dZ dZdZdZdS)NceZdZdZdS)_Knownc"g|_g|_dSN)keyvalue)selfs &/home/ag/git/flatted/python/flatted.py__init__z_Known.__init__s N__name__ __module__ __qualname__r r r rrs#r rceZdZdZdS)_Stringc||_dSrr)r rs r r z_String.__init__s  r Nr rr r rrs#r rcLg}d}|D]}|||dz }|SNrappend)rkeysi_s r _array_keysrs: D A  A Q Kr c>g}|D]}|||Srr)rrrs r _object_keysr %s0 D C Kr cVt|tpt|tSr) isinstancelisttuplers r _is_arrayr%+s! eT " " >j&>&>>r c,t|tSr)r"dictrs r _is_objectr(.s eT " ""r c,t|tSr)r"strrs r _is_stringr+1s eS ! !!r c||tt|dz }|j||j||SNr)rr*lenrr)knowninputrindexs r _indexr24s\ LL E Q  E IU Ku Lr c|D]J}||}t|tr+t||t|j|||K|Sr)r"r_refintr)rr0r/outputrrs r _loopr7;sZEEs  eW % % E eC ,,-ueV D D D Mr c.t|r9||vr5||tt||||}nGt |r8||vr4||tt ||||}|||<dSr)r%rr7rr(r )rrr0r/r6s r r4r4Cs@ Uk%((%>> E  @5E>> Ul5))5%??F3KKKr ct|st|st|r> |j|j|S#t |||cYSxYw|Sr)r+r%r(rrr1r2)r/r0rs r _relater:Msv%/Ie,,/ 50A0A/ /;uyu556 6 /%.. . . . Ls $AA)ct|r-g}|D]&}|t|||'|St|r#i}|D]}t||||||<|S|Sr)r%rr:r()r/r0rr6valobjrs r _transformr>Vs 6 6C MM'%44 5 5 5 5 % 9 9CueU3Z88CHH Lr ct|rt|St|rd}|D]}t|||<|dz }n,t |r|D]}t||||<|Sr)r+rr%_wrapr()rrr<rs r r@r@es%u~~+   CSzzE!H FAA  E  + + +CuSz**E#JJ Lr ctj|g|Ri|}g}|D]$}|t|%g}|D]G}t |t r||j2||H|d}t|r tt|||g|St|r tt|||g|S|S)Nr) _jsonloadsrr@r"rrr%r7rr(r )rargskwargsjsonwrappedr0s r parserHus ;u .t . . .v . .DG%%uU||$$$$ E   eW % % LL % % % % LL     !HE@[''???%A\%((%%%@@@ Lr c6t}g}g}tt|||}|t|krB|t |||||dz }|t|kBt j|g|Ri|Sr-)rr5r2r.rr>rBdumps)rrDrEr/r0r6rs r stringifyrKs HHE E F F5% ' '((A c%jj.. juQx88999 Q c%jj.. ;v / / / / / //r )rFrBrrrr r%r(r+r2r7r4r:r>r@rHrKrr r rLs0"   ???###"""    000000r