sampletree = {'spl':'foo', 'go_r':{'cut':150} , 'l':{'val':100}, 'r':{'val':200}}
def TREE_PRINT(tree, indent=''):
#is this a leaf node?
if 'val' in tree:
print str(tree['val'])
else:
#print the criteria
print 'split: '+ str(tree['spl']) + ' ' + str(tree['go_r'])
#print the branches
print indent+'L->',
TREE_PRINT(tree['l'], indent+' ')
print indent+'R->',
TREE_PRINT(tree['r'], indent+' ')
TREE_PRINT(sampletree)
c2FtcGxldHJlZSA9IHsnc3BsJzonZm9vJywgJ2dvX3InOnsnY3V0JzoxNTB9ICwgICdsJzp7J3ZhbCc6MTAwfSwgJ3InOnsndmFsJzoyMDB9fQoKZGVmIFRSRUVfUFJJTlQodHJlZSwgaW5kZW50PScnKToKICAgICNpcyB0aGlzIGEgbGVhZiBub2RlPwogICAgaWYgJ3ZhbCcgaW4gdHJlZToKICAgICAgICBwcmludCBzdHIodHJlZVsndmFsJ10pCiAgICBlbHNlOgogICAgICAgICNwcmludCB0aGUgY3JpdGVyaWEKICAgICAgICBwcmludCAnc3BsaXQ6ICcrIHN0cih0cmVlWydzcGwnXSkgKyAnICcgKyBzdHIodHJlZVsnZ29fciddKQogICAgICAgICNwcmludCB0aGUgYnJhbmNoZXMKICAgICAgICBwcmludCBpbmRlbnQrJ0wtPicsCiAgICAgICAgVFJFRV9QUklOVCh0cmVlWydsJ10sIGluZGVudCsnICAnKQoKICAgICAgICBwcmludCBpbmRlbnQrJ1ItPicsCiAgICAgICAgVFJFRV9QUklOVCh0cmVlWydyJ10sIGluZGVudCsnICAnKQogICAgICAgIApUUkVFX1BSSU5UKHNhbXBsZXRyZWUp