- local s = self._scheme
-
- if not s then
- s = self.s and self.s.packages and self.s.packages[self.sref[1]]
- if #self.sref == 2 then
- s = s and s.sections and s.sections[self.sref[2]]
- elseif #self.sref > 2 then
- s = s and s.variables and s.variables[self.sref[2]]
- and s.variables[self.sref[2]][self.sref[3]]
- end
- self._scheme = s
+ local s
+
+ if #self.sref == 4 or #self.sref == 3 then
+ s = self.s and self.s.packages
+ s = s and s[self.sref[1]]
+ s = s and s.variables
+ s = s and s[self.sref[2]]
+ s = s and s[self.sref[3]]
+ elseif #self.sref == 2 then
+ s = self.s and self.s.packages
+ s = s and s[self.sref[1]]
+ s = s and s.sections
+ s = s and s[self.sref[2]]
+ else
+ s = self.s and self.s.packages
+ s = s and s[self.sref[1]]