second unhappy stabs at Function