- Todo implement topologically sort on type
- do not give a default implementation for DefaultAccess