import base64, json, os.path, re, time, urllib, uuid, zlib from log import StatsMessage, logger, stats_logger import tornado.gen import tornado.ioloop import tornado.web import tornado.websocket import sockjs.tornado from zmq.utils import jsonapi try: from sage.all import gap, gp, maxima, r, singular tab_completion = { "gap": gap._tab_completion(), "gp": gp._tab_completion(), "maxima": maxima._tab_completion(), "r": r._tab_completion(), "singular": singular._tab_completion() } except ImportError: tab_completion = {} from misc import sage_json, Config config = Config() class RootHandler(tornado.web.RequestHandler): """ Root URL request handler. This renders templates/root.html, which optionally inserts
import base64, json, math, os.path, re, time, urllib, uuid, zlib from log import StatsMessage, logger, stats_logger import tornado.gen import tornado.ioloop import tornado.web import tornado.websocket import sockjs.tornado from zmq.utils import jsonapi try: from sage.all import gap, gp, maxima, r, singular tab_completion = { "gap": gap._tab_completion(), "gp": gp._tab_completion(), "maxima": maxima._tab_completion(), "r": r._tab_completion(), "singular": singular._tab_completion() } except ImportError: tab_completion = {} from misc import sage_json, Config config = Config() class RootHandler(tornado.web.RequestHandler): """ Root URL request handler. This renders templates/root.html, which optionally inserts