Add FunctionalGenerator