function luaK.dischargevars(O,Y,C)local J=C.k if J=="\086\076\079\067\065\076"then C.k="\086\078\079\078\082\069\076\079\067"elseif J=="\086\085\080\086\065\076"then C.info=O:codeABC(Y,"\079\080\095\071\069\084\085\080\086\065\076",0,C.info,0)C.k="\086\082\069\076\079\067\065\066\076\069"elseif J=="\086\071\076\079\066\065\076"then C.info=O:codeABx(Y,"\079\080\095\071\069\084\071\076\079\066\065\076",0,C.info)C.k="\086\082\069\076\079\067\065\066\076\069"elseif J=="\086\073\078\068\069\088\069\068"then O:freereg(Y,C.aux)O:freereg(Y,C.info)C.info=O:codeABC(Y,"\079\080\095\071\069\084\084\065\066\076\069",0,C.info,C.aux)C.k="\086\082\069\076\079\067\065\066\076\069"elseif J=="\086\086\065\082\065\082\071"or J=="\086\067\065\076\076"then O:setoneret(Y,C)else end end

function luaK:dischargevars(fs, e)
  local k = e.k
  if k == "VLOCAL" then
    e.k = "VNONRELOC"
  elseif k == "VUPVAL" then
    e.info = self:codeABC(fs, "OP_GETUPVAL", 0, e.info, 0)
    e.k = "VRELOCABLE"
  elseif k == "VGLOBAL" then
    e.info = self:codeABx(fs, "OP_GETGLOBAL", 0, e.info)
    e.k = "VRELOCABLE"
  elseif k == "VINDEXED" then
    self:freereg(fs, e.aux)
    self:freereg(fs, e.info)
    e.info = self:codeABC(fs, "OP_GETTABLE", 0, e.info, e.aux)
    e.k = "VRELOCABLE"
  elseif k == "VVARARG" or k == "VCALL" then
    self:setoneret(fs, e)
  else
    -- there is one value available (somewhere)
  end
end
