Author: Amerasinha.