Flattened function class hierarchy