add FunctionDeclaration and FunctionExpression support