slightly more angular, also caching of lang to reduce requests