Adjusted type hiearchy