Author: Guoyuan Shen
Dates: active 1620