restructuring fun-untyped