more sensible hiearchy