ordering of requires