Author: Frank Haegeland Ilpo Okkonen