forked from: Tornado

@author Bruno Imbrizi http://brunoimbrizi.com