Author: Pheuiphanh Ngaosyvathn.