Author: Hongguang Bao
Dates: active 2013