This API is based on the paper written here: http://tinyurl.com/p57w45e