def jsondumps(obj):
    if (type(obj) in [int, float, long]):
        return str(obj)
    elif (type(obj) in [list, tuple, set]):
        s = '['
        for (i, item) in enumerate(obj):
            if (i > 0):
                s += ', '
            s += jsondumps(item)
        s += ']'
        return s
    elif (type(obj) == dict):
        s = '{'
        for (i, k) in enumerate(obj):
            if (i > 0):
                s += ', '
            s += (('"' + k) + '" : ')
            s += jsondumps(obj[k])
        s += '}'
        return s
    else:
        return (('"' + str(obj)) + '"')
def jsondumps(obj):
    if (type(obj) in [int, float, long]):
        return str(obj)
    elif (type(obj) in [list, tuple, set]):
        s = '['
        for (i, item) in enumerate(obj):
            if (i > 0):
                s += ', '
            s += jsondumps(item)
        s += ']'
        return s
    elif (type(obj) == dict):
        s = '{'
        for (i, k) in enumerate(obj):
            if (i > 0):
                s += ', '
            s += (('"' + k) + '" : ')
            s += jsondumps(obj[k])
        s += '}'
        return s
    else:
        return (('"' + str(obj)) + '"')