allow sam to extend FunctionN