functional patterning