private List<Field> orderedInstanceFieldsFrom(Class<?> awaitingInjectionClazz) {
    List<Field> declaredFields = Arrays.asList(awaitingInjectionClazz.getDeclaredFields());
    declaredFields = ListUtil.filter(declaredFields, notFinalOrStatic);

    Collections.sort(declaredFields, superTypesLast);

    return declaredFields;
  }