Author: Dingchen Wang
Dates: active 2008