Despite we don't use in many places this code is not thread safe, we could be going through the `else` case, still fetching the data, but still not having it, and if we call again this `getVariantSettings` we will download again the variant file.