Author: Fingal.