Author: Peder Andrew Langvand