def main(f):
    
    x = json.loads(sys.stdin.read())
    
    try:
        y = f(x)
    except Exception, e:
        sys.stderr.write(json.dumps({
            'exception': repr(e),#TODO: include traceback
        }))
        sys.exit(1)
from spriteutils_util import json, getDataFromUrl, imgFromData, dimOfImg, buildSprite, expandUrl


def main(f):
    
    x = json.loads(sys.stdin.read())
    
    try:
        y = f(x)
    except Exception, e:
        sys.stderr.write(json.dumps({
            'exception': repr(e),#TODO: include traceback
        }))
        sys.exit(1)
    
    sys.stdout.write(json.dumps(y))


# **CSS\_SPRITE\_REGEX**
# 
# * spriteName
# * backgroundUrl
# * width (optional)
# * height (optional)
CSS_SPRITE_REGEX = r'''(?x)
    \/\*  \s*  SPRITE  \s*  (?P<spriteName>[^*\s]+)  \s*  \*\/  \s*\n\s*
    background:  \s*  url\("(?P<backgroundUrl>[^"]+)"\);  \s*\n\s*
    (?:width:  \s*  (?P<width>[0-9]+)px;  \s*\n\s*)?
    (?:height:  \s*  (?P<height>[0-9]+)px;  \s*\n)?
'''