# ---------------------------------------------------------------------------
#     ACBCLIB.PL
#
#      Ver: 8_4_8
# ---------------------------------------------------------------------------
# SSI Web - Web Surveying System
# Copyright Sawtooth Software, Inc. 1998-2015. All rights reserved.
# Orem, UT  USA  (801) 477-4700
#
# Any modification of this script will be considered violation of
# copyright (with the exception of the first line which can be
# modified to reflect the correct path to the Perl interpreter)
#
# Any use of this script or its code for purposes outside of
# the systems created by Sawtooth Software is prohibited.
# ---------------------------------------------------------------------------
 use strict; package acbclib8_4_8; our @ISA = qw(questionlib8_4_8); $acbclib8_4_8::_cmf = {}; $acbclib8_4_8::_cmi = 0; $acbclib8_4_8::_cmh = {}; sub _ciq { $acbclib8_4_8::_cmf = {}; $acbclib8_4_8::_cmi = 0; $acbclib8_4_8::_cmh = {}; } sub _bls { my ($__gxa) = @_; my $__gwv = $__gxa->{'_bgt'}; $__gwv =~ s/_(.*?)$//; my $__gww = authlib8_4_8::_bqx($__gwv); my $__gwx = $__gww->{'_aoz'}; my $__gwy = authlib8_4_8::_bss($__gwx); my $__gwz = 0; if ($__gwy) { $__gwz = @{$__gwy}; } $__gxa->_cir($__gww, $__gwy, $__gwz); if (!exists $__gxa->{'_bky'}) { $__gxa->SUPER::_bls(); $__gxa->{'_bkt'}->{'_asc'} = $__gwy; $__gxa->{'_bkt'}->{'_cmx'} = $__gwv; $__gxa->{'_bkt'}->{'_cmk'} = $__gww; } } sub _cir { my ($__gxb, $__gxc, $__gxd, $__gxe) = @_; if ($__gxe == 0) { $__gxb->{'_bky'} = 1; } } sub _blt { my ($__gxl) = @_; my $__gxf = ""; my $__gxg = -1; my $__gxh = 0; my $__gxi = 0; my $__gxj = $__gxl->{'_bmc'}; my $__gxk = 0; if (exists $__gxl->{'_bkt'}->{'_bap'}) { $__gxi = $__gxl->{'_bkt'}->{'_bap'}; $__gxg = $__gxi; } if (exists $__gxl->{'_bkt'}->{'_bao'}) { $__gxh = $__gxl->{'_bkt'}->{'_bao'}; $__gxf .= "." . $__gxj . " .inner_table td{border-bottom-width:" . $__gxh . "px; border-bottom-style: solid;}\n"; if ($__gxh > 0) { $__gxg = $__gxh; } } if ($__gxg > -1) { if ($__gxh) { $__gxk = $__gxg; } else { $__gxk = $__gxg * 2; } $__gxf .= "." . $__gxj . " .inner_table td{border-left-width:" . $__gxg . "px; border-left-style: solid;}\n"; $__gxf .= "." . $__gxj . " .inner_table{border-right-width:" . $__gxg . "px; border-right-style: solid;}\n"; $__gxf .= "." . $__gxj . " .acbc_task_top_row td{border-top-width:" . $__gxg . "px; border-top-style: solid;}\n"; $__gxf .= "." . $__gxj . " .acbc_task_bottom_row td{border-top-width:" . $__gxk . "px; border-top-style: solid;}\n"; $__gxf .= "." . $__gxj . " .inner_table{border-bottom-width:" . $__gxg . "px; border-bottom-style: solid;}\n"; } return $__gxf; } sub _cis { } sub _cit { my($__gxo) = @_; if (!exists($acbclib8_4_8::_cmf->{$__gxo})) { if ($authlib8_4_8::_bxf) { seek $authlib8_4_8::_byh, $authlib8_4_8::_bxf, 0; my $__gxm = authlib8_4_8::_bps(1); if (exists $__gxm->{$__gxo}) { my $__gxn = $__gxm->{$__gxo}; seek $authlib8_4_8::_byh, $__gxn, 0; $acbclib8_4_8::_cmf->{$__gxo} = authlib8_4_8::_bps(1); } else { authlib8_4_8::_bqa(161, "Cannot find ACBC exercise.", "Cannot find ACBC exercise: " . $__gxo . " in lookup table.", ""); } } } } sub _ciu { my($__gxt) = @_; my $__gxp = authlib8_4_8::_bss($__gxt); my $__gxq = authlib8_4_8::_bsr($__gxt); if ($__gxp && $__gxq && exists($__gxq->{'_gt'})) { my %__gxr = (); my $__gxs = 0; foreach $__gxs (@{$__gxp}) { $__gxr{$__gxs->{'_bcm'}} = authlib8_4_8::_bsp($__gxs); } $__gxp = \%__gxr; } return $__gxp; } sub _civ { my($__gxv, $__gxw) = @_; my $__gxu = 0; if (ref($__gxv) eq "ARRAY") { $__gxu = $__gxv->[$__gxw - 1]; } else { $__gxu = $__gxv->{$__gxw}; } return $__gxu; } sub _ciw { my($__gxz, $__gya, $__gyb, $__gyc, $__gyd) = @_; my $__gxx = "<div id=\"" . $__gxz . "_rel_" . $__gyb . "\" "; my $__gxy = ""; if (exists $__gya->{'_aus'}) { if ($__gya->{'_aus'} > 0) { $__gxy .= " width: " . $__gya->{'_aus'} . "px;"; } } if (exists $__gya->{'_ars'}) { if ($__gya->{'_ars'} > 0) { $__gxy .= " height: " . $__gya->{'_ars'} . "px;"; } } if (!$__gyd) { $__gxy .= "margin: 10px; padding: 5px;"; } if ($__gyc) { $__gxy .= $__gyc; } if ($authlib8_4_8::_bzy) { $__gxy .= " border: 4px dashed #99CC00;"; } if ($__gxy) { $__gxx .= " style=\"" . $__gxy . "\" \n"; } $__gxx .= ">"; if (exists $__gya->{'_arq'}) { $__gxx .= $__gya->{'_arq'}; } elsif ($authlib8_4_8::_bzy) { $__gxx .= "Conditional Display text for relationship #" . $__gyb . " will be shown here."; } $__gxx .= "</div>"; return $__gxx; } sub _cix { my($__gyn) = @_; my $__gye = ""; my $__gyf = 0; $__gye .= authlib8_4_8::_bpm(); if ($authlib8_4_8::_bzi{"sys_acbc_cond_rel"}) { $__gyf = $authlib8_4_8::_bzi{"sys_acbc_cond_rel"}; $__gye .= $__gyf . ","; if (exists $__gyn->{'_ara'}) { my $__gyg = $__gyn->{'_ara'}; my $__gyh = $__gyg->{'_arb'}->[$__gyf - 1]; my $__gyi = $__gyh->{'_asc'}; my $__gyj = 0; my @__gyk = (); my $__gyl = $authlib8_4_8::_bzi{"sys_acbc_byo_request"}; my $__gym = 0; if ($__gyl) { foreach $__gyj (@{$__gyi}) { if ($__gyl =~ m/A-$__gyj\s*L-(\d+)/i) { push @__gyk, [$__gyj, $1]; } } if (@__gyk) { $__gye .= _ciy($__gyh, \@__gyk, $__gyn); $__gym = 1; } } else { if (exists $__gyh->{'_aro'}) { if (exists $__gyh->{'_aro'}->{'_arq'}) { $__gye .= $__gyh->{'_aro'}->{'_arq'}; $__gym = 1; } } } if ($__gym) { $__gye .= "<script type=\"text/javascript\">\n"; $__gye .= "SSI_SetupToolTips();\n"; $__gye .= "\n</script>\n"; } } } return $__gye; } sub _ciy { my($__gza, $__gzb, $__gzc) = @_; my $__gyo = ""; my $__gyp = 0; my $__gyq = 0; my $__gyr = @{$__gzb}; my $__gys = $__gzc->{'_apa'}; my $__gyt = 0; my $__gyu = 0; my $__gyv = 0; my $__gyw = 0; my $__gyx = 0; for ($__gyp = 0; $__gyp < $__gyr; $__gyp++) { $__gyu = 0; $__gyw = $__gzb->[$__gyp]->[0]; $__gyv = $__gzb->[$__gyp]->[1]; if (exists $__gys->{$__gyw} && exists $__gys->{$__gyw}->{'_api'}) { $__gyu = $__gyv; } else { $__gyu = $__gyv - 1; } for ($__gyq = $__gyp + 1; $__gyq < $__gyr; $__gyq++) { $__gyw = $__gzb->[$__gyq]->[0]; $__gyx = _ciz($__gyw, $__gys); $__gyu *= $__gyx; } $__gyt += $__gyu; } my $__gyy = $__gza->{'_arn'}; my $__gyz = $__gyy->[$__gyt]; if ($__gyz) { seek $authlib8_4_8::_byh, $__gyz, 0; $__gyo = authlib8_4_8::_bps(1); } return $__gyo; } sub _ciz { my($__gzh, $__gzi) = @_; my $__gzd = 0; my $__gze = 0; my $__gzf = $__gzi->{$__gzh}->{'_apo'}; $__gzd = authlib8_4_8::_bsr($__gzf); if ($__gzd && exists($__gzd->{'_gt'})) { $__gzf = $__gzd->{'_gt'}; } my $__gzg = 0; $__gze = authlib8_4_8::_bss($__gzf); if ($__gze) { $__gzg = @{$__gze}; if (exists $__gzi->{$__gzh}->{'_api'}) { $__gzg++; } } return $__gzg; } sub _cja { my($__gzn, $__gzo, $__gzp, $__gzq) = @_; my $__gzj = ""; if (exists $__gzn->{'_ast'} || exists $__gzn->{'_asv'} || exists $__gzn->{'_asu'}) { my $__gzk = $__gzp->{'_aps'}->[$__gzo->{'_bcm'} - 1]; my $__gzl = _cje($__gzk, $__gzq); my $__gzm = 0; if (exists $__gzq->{'_aqk'}) { if (exists $__gzq->{'_aqk'}->{'_aqr'}) { $__gzm = $__gzq->{'_aqk'}->{'_aqr'}; } } if ($__gzm > 0) { $__gzk = authlib8_4_8::_brn($__gzk, $__gzm); } if ($__gzk > 0) { if (exists $__gzn->{'_ast'}) { $__gzj = $__gzn->{'_ast'}; } } elsif ($__gzk == 0) { if (exists $__gzn->{'_asv'}) { $__gzj = $__gzn->{'_asv'}; } } elsif ($__gzk < 0) { if (exists $__gzn->{'_asu'}) { $__gzj = $__gzn->{'_asu'}; $__gzl =~ s/-//; } } $__gzj = authlib8_4_8::_bsl($__gzj); $__gzj =~ s/\[%ACBCPRICELEVELTEXT\(\)%\]/$__gzl/gi; } return $__gzj; } sub _cjb { my($__hbt, $__hbu, $__hbv, $__hbw, $__hbx) = @_; my $__gzr = @{$__hbt}; my $__gzs = 0; my $__gzt = 0; my $__gzu = 0; my $__gzv = 0; my @__gzw = (); my $__gzx = 0; my $__gzy = 0; my $__gzz = 0; my $__haa = $__hbx->{'_apa'}; my $__hab = @{$__hbv}; my $__hac = 0; my $__had = ""; my $__hae = 0; my $__haf = []; my $__hag = {}; my $__hah = {}; my $__hai = 0; my $__haj = 0; my $__hak = 0; my %__hal = (); my %__ham = (); my $__han = 0; my %__hao = (); my $__hap = 0; my $__haq = 0; my $__har = "<!--#Empty Level#-->"; if (exists $__hbx->{'_ara'}) { $__hai = $__hbx->{'_ara'}; if (exists $__hai->{'_arw'}) { $__hag = $__hai->{'_arw'}; } $__haj = $__hai->{'_arb'}; $__hak = 0; for ($__gzu = 0; $__gzu < $__hab; $__gzu++) { $__hao{$__hbv->[$__gzu]} = 1; } foreach $__hak (@{$__haj}) { $__hap = 1; if (exists $__hak->{'_art'}) { foreach $__gzy (@{$__hak->{'_asc'}}) { if (!exists $__hao{$__gzy}) { $__hap = 0; $__hak->{'_bky'} = 1; last; } } if ($__hap) { $__haq = $__hak->{'_art'}->{'_aru'}; if ($__haq > 0) { $__hah->{$__haq} = 1; } } } } } for ($__gzu = 0; $__gzu < $__gzr; $__gzu++) { push @__gzw, {'_cmu'=>$__hbt->[$__gzu]->[0], '_cmj'=>[]}; } if (exists $__hbx->{'_aqk'}) { $__gzx = $__hbx->{'_aqk'}->{'_aql'}; } for ($__gzu = 0; $__gzu < $__hab; $__gzu++) { $__hac = 0; $__gzy = $__hbv->[$__gzu]; $__hal{$__gzy} = $__gzu + 1; if (exists $__hag->{$__gzy}) { next; } if ($__gzy != $__gzx) { if (exists $__haa->{$__gzy}) { if (!exists $__hah->{$__gzy}) { $__hac = _ciu($__haa->{$__gzy}->{'_apo'}); } } else { next; } } if ($__hbw) { push @{$__haf}, $__hbu->[$__gzu]->{'_bft'}; } for ($__gzv = 0; $__gzv < $__gzr; $__gzv++) { $__had = ""; $__gzz = $__hbt->[$__gzv]->[$__gzu + 1]; if ($__gzy == $__gzx) { $__had = _cje($__gzz, $__hbx); } else { if (exists $__hah->{$__gzy}) { $__had = ""; } elsif ($__gzz == 0) { if (exists $__haa->{$__gzy} && exists $__haa->{$__gzy}->{'_apj'}) { $__had = $__haa->{$__gzy}->{'_apj'}; } else { $__had = $__har; } } else { $__hae = _civ($__hac, $__gzz); $__had = $__hae->{'_bft'}; } } if (authlib8_4_8::_bpy($__had) eq "") { $__had = $__har; } push @{$__gzw[$__gzv]->{'_cmj'}}, $__had; } $__ham{$__gzy} = $__han; $__han++; } if ($__haj) { my @__has = (); my $__hat = 0; my $__hau = 0; my $__hav = 0; my $__haw = ""; my $__hax = 0; my $__hay = ""; my $__haz = 0; foreach $__hak (@{$__haj}) { if (exists $__hak->{'_art'} && !exists $__hak->{'_bky'}) { $__haz = $__hak->{'_art'}; if (exists $__haz->{'_bgg'}) { $__hay = $__haz->{'_bgg'}; } else { $__hay = ""; } if (authlib8_4_8::_bpy($__hay) eq "") { $__hay = "&nbsp;"; } $__hat = $__hak->{'_asc'}; $__haq = $__haz->{'_aru'}; for ($__gzv = 0; $__gzv < $__gzr; $__gzv++) { @__has = (); foreach $__hau (@{$__hat}) { $__hav = $__hbt->[$__gzv]->[$__hal{$__hau}]; push @__has, [$__hau, $__hav]; } $__haw = _ciy($__hak, \@__has, $__hbx); if (authlib8_4_8::_bpy($__haw) eq "") { $__haw = $__har; } if ($__haq > 0) { $__gzw[$__gzv]->{'_cmj'}->[$__ham{$__haq}] = $__haw; } elsif ($__haq == -1) { _cjc($__gzw[$__gzv]->{'_cmj'}, $__haw, $__hax); } elsif ($__haq == -2) { push @{$__gzw[$__gzv]->{'_cmj'}}, $__haw; } } if ($__haq == -1) { if ($__hbw) { _cjc($__haf, $__hay, $__hax); } my $__hba = 0; foreach $__hba (sort {$a <=> $b} keys %__ham) { $__ham{$__hba}++; } $__hax++; } elsif ($__haq == -2) { if ($__hbw) { push @{$__haf}, $__hay; } } } } } my $__hbb = 0; my %__hbc = (); if (exists $__hbx->{'_arx'}) { my $__hbd = $__hbx->{'_arx'}; my $__hbe = 0; my $__hbf = ""; my $__hbg = 0; my @__hbh = (); my @__hbi = (); my $__hbj = ""; my $__hbk = 0; my $__hbl = 0; my $__hbm = 0; foreach $__hbe (@{$__hbd}) { @__hbh = (); $__hbm = 0; if (exists $__ham{$__hbe->{'_asd'}}) { $__hbm = $__ham{$__hbe->{'_asd'}}; } else { my $__hbn = 0; foreach $__hbg (@{$__hbe->{'_asc'}}) { if (exists $__ham{$__hbg}) { $__hbm = $__ham{$__hbg}; $__hbe->{'_asd'} = $__hbg; $__hbn = 1; last; } } if (!$__hbn) { next; } } if (exists $__hbe->{'_bgg'}) { $__haf->[$__hbm] = $__hbe->{'_bgg'}; } foreach $__hbg (@{$__hbe->{'_asc'}}) { if (exists $__ham{$__hbg}) { push @__hbh, $__ham{$__hbg}; } if ($__hbg != $__hbe->{'_asd'}) { $__hbc{$__ham{$__hbg}} = 1; } } foreach $__hbb (@__gzw) { @__hbi = (); $__hbk = 0; $__hbj = ""; foreach $__hbl (@__hbh) { $__hbf = $__hbb->{'_cmj'}->[$__hbl]; if ($__hbf) { if ($__hbf eq $__har) { $__hbk = 1; } else { push @__hbi, $__hbf; } } } if (@__hbi == 0 && $__hbk) { $__hbj = $__har; } else { if (exists $__hbe->{'_asf'}) { if ($__hbe->{'_asf'} eq "bullets") { $__hbj = "<div class=\"acbc_merged_list\"><ul><li>" . join("</li><li>", @__hbi) . "</li></ul></div>"; } elsif ($__hbe->{'_asf'} eq "numbers") { $__hbj = "<div class=\"acbc_merged_list\"><ol><li>" . join("</li><li>", @__hbi) . "</li></ol></div>"; } } else { $__hbj = "<div class=\"acbc_merged_level\">" . join("</div><div class=\"acbc_merged_level\">", @__hbi) . "</div>"; } } $__hbb->{'_cmj'}->[$__hbm] = $__hbj; } } } if (@__gzw) { my $__hbo = @{$__gzw[0]->{'_cmj'}}; my $__gzu = 0; my $__hbp = 1; for ($__gzu = 0; $__gzu < $__hbo; $__gzu++) { $__hbp = 1; foreach $__hbb (@__gzw) { if ($__hbb->{'_cmj'}->[$__gzu] eq $__har) { $__hbb->{'_cmj'}->[$__gzu] = "&nbsp;"; } else { $__hbp = 0; } } if ($__hbp) { $__hbc{$__gzu} = 1; } } } if (keys %__hbc) { foreach $__hbb (@__gzw) { my @__hbq = (); my $__hbo = @{$__hbb->{'_cmj'}}; for ($__gzu = 0; $__gzu < $__hbo; $__gzu++) { if (!exists $__hbc{$__gzu}) { push @__hbq, $__hbb->{'_cmj'}->[$__gzu]; } } $__hbb->{'_cmj'} = \@__hbq; } my @__hbr = (); my $__hbs = @{$__haf}; for ($__gzu = 0; $__gzu < $__hbs; $__gzu++) { if (!exists $__hbc{$__gzu}) { push @__hbr, $__haf->[$__gzu]; } } $__haf = \@__hbr; } return (\@__gzw, $__haf); } sub _cjc { my($__hca, $__hcb, $__hcc) = @_; my @__hby = (); if ($__hcc) { my $__hbz = @{$__hca}; @__hby = @{$__hca}[0..($__hcc - 1)]; @{$__hca} = @{$__hca}[$__hcc..($__hbz - 1)]; } unshift @{$__hca}, $__hcb; if (@__hby) { unshift @{$__hca}, @__hby; } } sub _cjd { my($__hcp, $__hcq) = @_; my $__hcd = @{$__hcp}; my $__hce = 0; my $__hcf = 0; my %__hcg = (); my $__hch = 0; for ($__hce = 0; $__hce < $__hcd; $__hce++) { $__hcf = $__hcp->[$__hce]->[0]; if (exists $__hcg{$__hcf}) { $__hch = $__hcg{$__hcf}; } else { $__hch = []; } push @{$__hch}, $__hcp->[$__hce]; $__hcg{$__hcf} = $__hch; } my $__hci = $authlib8_4_8::_bzi{"hid_respnum"}; my @__hcj = sort {$a <=> $b} keys %__hcg; my $__hck = @__hcj; my $__hcl = 0; if ($__hcq =~ m/_MustHave(\d+)/i) { $__hcl = 1000 + $1; } elsif ($__hcq =~ m/_Unacceptable(\d+)/i) { $__hcl = 2000 + $1; } my $__hcm = authlib8_4_8::_bsh($__hci, $__hck, $__hcl, 1, $__hck); my @__hcn = (); my $__hco = 0; for ($__hce = 0; $__hce < $__hck; $__hce++) { $__hch = $__hcg{$__hcj[$__hcm->[$__hce]]}; foreach $__hco (@{$__hch}) { push @__hcn, $__hco; } } return \@__hcn; } sub _cje { my($__hcy, $__hcz) = @_; my $__hcr = ""; my $__hcs = ""; my $__hct = ""; my $__hcu = 0; my $__hcv = ""; my $__hcw = "left"; if (exists $__hcz->{'_aqk'}) { my $__hcx = $__hcz->{'_aqk'}; if (exists $__hcx->{'_aqm'}) { $__hcv = $__hcx->{'_aqm'}; } if (exists $__hcx->{'_aqn'}) { $__hcw = $__hcx->{'_aqn'}; } if (exists $__hcx->{'_aqr'}) { $__hcu = $__hcx->{'_aqr'}; } if (exists $__hcx->{'_aqp'}) { $__hcs = $__hcx->{'_aqp'}; } if (exists $__hcx->{'_aqq'}) { $__hct = $__hcx->{'_aqq'}; } $__hcr = authlib8_4_8::_brp($__hcy, $__hcs, $__hct, $__hcu); if ($__hcv && $__hcw eq "left") { $__hcr = $__hcv . $__hcr; } elsif ($__hcv && $__hcw eq "right") { $__hcr .= $__hcv; } } return $__hcr; } sub _cjf { my ($__hdr, $__hds, $__hdt) = @_; my $__hda = $__hdr->{'_bkt'}; my $__hdb = $__hda->{'_cmk'}; my $__hdc = $__hdb->{'_apa'}; my $__hdd = 0; my $__hde = 0; my $__hdf = 0; my $__hdg = 0; my $__hdh = 0; my $__hdi = ""; my $__hdj = ""; if (exists $__hda->{'_axx'}) { $__hdg = 1; my $__hdk = $__hdb->{'_aoz'}; $__hdh = acbclib8_4_8::_ciu($__hdk); } if (exists $__hda->{'_cml'}) { my $__hdl = $__hda->{'_cml'}; my $__hdm = 0; $__hdj .= "<div class=\"acbc_previous_rules\">\n"; $__hdj .= "<ul class=\"acbc_rules\">"; foreach $__hdm (@{$__hdl}) { $__hdd = $__hdm->[0]; $__hde = $__hdm->[1]; $__hdf = $__hdm->[2]; $__hdi = acbclib8_4_8::_cji($__hdd, $__hde, $__hdf, $__hda, $__hdg, $__hdh, $__hdc, $__hdb); $__hdj .= "<li>" . $__hdi . "</li>\n"; } $__hdj .= "</ul></div>\n"; } my @__hdn = ('_bfd', '_bfi', 'body_text', '_bfs'); my $__hdo = ""; my $__hdp = ""; foreach $__hdo (@__hdn) { if (exists $__hda->{$__hdo}) { $__hdp = authlib8_4_8::_bsl($__hda->{$__hdo}->{'_bft'}); my $__hdq = ""; if ($__hdj) { $__hdq = $__hda->{'_axw'}; $__hdq = authlib8_4_8::_bsl($__hdq); $__hdq =~ s/$__hds/$__hdj/sgi; } else { $__hdq = $__hda->{'_axv'}; } $__hdp =~ s/$__hdt/$__hdq/sgi; $__hda->{$__hdo}->{'_bft'} = $__hdp; } } } sub _cjg { my($__heb, $__hec, $__hed, $__hee, $__hef) = @_; my $__hdu = 0; if ($__heb >= 0) { my $__hdv = 2; if ($__heb == 0) { $__hdv = 1; } my $__hdw = $__hef->{'_aqf'} - $__hdv; my $__hdx = @{$__hec}; my $__hdy = keys %{$__hed}; my $__hdz = keys %{$__hee}; $__hdy-- if (exists $__hed->{0}); $__hdz-- if (exists $__hee->{0}); my $__hea = 0; $__hea = $__hdx + $__hdy + $__hdz; if ($__hea < $__hdw) { $__hdu += $__hea; $__hdu += $__hdv; $__hef->{'_aqf'} = $__hdu; } else { $__hdu = $__hef->{'_aqf'}; } } if ($__hdu < 3) { $__hdu = 0; } return $__hdu; } sub _cjh { my($__hel, $__hem) = @_; my $__heg = 0; my $__heh = $__hel; my $__hei = 0; my $__hej = 0; my $__hek = $__hem->{'_aqb'}; if ($__heh > 1) { if($__heh == $__hek) { $__heg = 1; } else { while ($__heh > $__hek) { $__hei = int($__heh / $__hek); $__hej = $__heh % $__hek; $__heg += $__hei; $__heh = $__hej + $__hei; } if ($__heg > 0) { $__heg++; } } } return $__heg; } sub _cji { my($__hfd, $__hfe, $__hff, $__hfg, $__hfh, $__hfi, $__hfj, $__hfk) = @_; my $__hen = ""; my $__heo = ""; my $__hep = ""; my $__heq = ""; my $__her = ""; my $__hes = ""; if ($__hfh) { my $__het = _civ($__hfi, $__hfd); $__her .= $__het->{'_bft'}; if (exists $__hfg->{'_aya'}) { $__her .= " " . $__hfg->{'_aya'}; } $__her .= " "; } my $__heu = ""; my $__hev = ""; my $__hew = "left"; if (exists $__hfj->{$__hfd}->{'_apk'}) { my $__hex = $__hfj->{$__hfd}->{'_apk'}; if (exists $__hex->{'_apl'}) { $__heu = $__hex->{'_apl'}; } if (exists $__hex->{'_apm'}) { $__hev = $__hex->{'_apm'}; } if (exists $__hex->{'_aru'}) { $__hew = $__hex->{'_aru'}; } } if ($__hff == 1 && $__heu) { $__heq = $__heu; } elsif ($__hff == 2 && $__hev) { $__heq = $__hev; } my $__hey = 0; my $__hez = 0; my $__hfa = ""; if (exists $__hfk->{'_aqk'}) { $__hez = $__hfk->{'_aqk'}; $__hey = $__hez->{'_aql'}; } if ($__hfd == $__hey) { if (exists $__hez->{'_aqx'}) { $__heq = $__hez->{'_aqx'}; } $__hfa = _cje($__hfe, $__hfk); } else { my $__hfb = $__hfj->{$__hfd}->{'_apo'}; my $__hfc = _ciu($__hfb); my $__het = _civ($__hfc, $__hfe); $__hfa = $__het->{'_bft'}; } $__hes .= $__her; if ($__hew eq "left") { $__hes .= $__heq . " " . $__hfa; } else { $__hes .= $__hfa . " " . $__heq; } return $__hes; } sub _cjj { my($__hgs, $__hgt) = @_; my $__hfl = 0; my $__hfm = 0; my $__hfn = 0; my $__hfo = 0; my $__hfp = 0; my @__hfq = (); my $__hfr = 0; my $__hfs = 0; my $__hft = 0; my $__hfu = $acbclib8_4_8::_cmf->{$__hgs}; my $__hfv = $__hfu->{'_apa'}; my $__hfw = 0; my $__hfx = {}; my $__hfy = {}; my $__hfz = 0; if ($__hgt =~ m/_MustHave(\d+)/i) { $__hfz = $1; } if (exists $__hfu->{'_aqk'}) { $__hfw = $__hfu->{'_aqk'}->{'_aql'}; } my $__hga = _cjt($__hgs, $__hfu); my ($__hgu, $__hgv) = _cjs($__hgt, $__hgs, $__hga); my ($__hgw, $__hgx) = _cjp($__hgs, $__hfz, $__hfu); _cjl($__hgw, $__hfv, $__hfx, $__hfy); my ($__hgy) = _cjq($__hgs, 0, $__hfu, $__hfx, $__hfy); $__hfl = @{$__hgu}; if ($authlib8_4_8::_bzy) { $__hfl = 1; } if ($__hfl) { my $__hgb = @{$__hga}; my $__hgc = 1; my $__hgd = 0; my $__hge = 0; my $__hgf = 0; my $__hgg = 0; my $__hgh = 0; my $__hgi = 0; my $__hgj = 0; my $__hgk = 0; my $__hft = 0; my $__hgl = 0; my $__hgm = 0; my $__hgn = ""; my $__hgo = 0; my $__hgp = 0; my $__hgq = 0; my $__hgr = 0; for ($__hfm = 1; $__hfm <= $__hgb; $__hfm++) { $__hgf = 0; $__hfs = $__hga->[$__hfm - 1]; if (exists $__hfv->{$__hfs} && ($__hfs != $__hfw)) { if (exists $__hfv->{$__hfs}->{'_apf'}) { next; } $__hgn = $__hfv->{$__hfs}->{'_apo'}; $__hgo = authlib8_4_8::_bss($__hgn); if ($__hgo) { $__hgi = @{$__hgo}; } if ($__hgi == 1) { next; } $__hge = $__hfv->{$__hfs}->{'_app'}; $__hgd = $__hfv->{$__hfs}->{'_apq'}; ($__hgp, $__hgq, $__hgr) = _cjn($__hfs, $__hgo, $__hgw, $__hgy, $__hge); if ($__hgp == 0) { next; } $__hgc = 1; $__hgg = 0; $__hgh = 0; for ($__hfn = 0; $__hfn < $__hfl; $__hfn++) { $__hfr = $__hgu->[$__hfn]->[$__hfm]; if ($__hfr == 0 || ($__hgu->[$__hfn]->[0] == 0 && $__hfv->{$__hfs}->{'_apr'})) { $__hfr = $__hgf; next; } if ($__hge) { if ($__hfn == 0) { $__hgg = $__hfr; $__hgh = $__hfr; } else { if ($__hfr > $__hgh) { $__hgh = $__hfr; } elsif ($__hfr < $__hgg) { $__hgg = $__hfr; } } } else { if ($__hfn == 0) { $__hgf = $__hfr; } elsif ($__hfr != $__hgf) { $__hgc = 0; last; } } } if ($__hge) { $__hgl = 0; $__hgm = 0; if ($__hgd == 1) { $__hgl = 1; } elsif ($__hgd == 2) { $__hgm = 1; } else { $__hgl = 1; $__hgm = 1; } if ($__hgl) { if ($authlib8_4_8::_bzy) { if ($__hgi > 1) { $__hgg = 2; } } if ($__hgg > $__hgq) { $__hft = $__hge; if ($__hgg == $__hgh && exists $__hgx->{$__hfs . "," . $__hgg . ",0"}) { } elsif (!exists $__hgx->{$__hfs . "," . $__hgg . "," . $__hft}) { push @__hfq, [$__hfs, $__hgg, $__hft]; } } } if ($__hgm) { if ($authlib8_4_8::_bzy) { $__hgk = authlib8_4_8::_bsw($__hfv->{$__hfs}->{'_apo'}); $__hgj = @{$__hgk}; $__hgh = $__hgj - 1; } if ($__hgh > 0 && $__hgh < $__hgr) { if ($__hge == 1) { $__hft = 2; } else { $__hft = 1; } if ($__hgg == $__hgh && exists $__hgx->{$__hfs . "," . $__hgh . ",0"}) { } elsif (!exists $__hgx->{$__hfs . "," . $__hgh . "," . $__hft}) { push @__hfq, [$__hfs, $__hgh, $__hft]; } if ($__hgg == $__hgh) { if (!exists $__hgx->{$__hfs . "," . $__hgh . ",0"} && $__hgi > 2) { push @__hfq, [$__hfs, $__hgh, 0]; } } } } } else { if ($__hgc && $__hfr > 0) { if (!exists $__hgx->{$__hfs . "," . $__hfr . ",0"}) { push @__hfq, [$__hfs, $__hfr, 0]; } } } } } } return (\@__hfq, $__hgw); } sub _cjk { my($__hik, $__hil) = @_; my $__hgz = $acbclib8_4_8::_cmf->{$__hik}; my $__hha = $__hgz->{'_apa'}; my $__hhb = _cjt($__hik, $__hgz); my %__hhc = (); my $__hhd = 0; my $__hhe = 0; my $__hhf = 0; my $__hhg = 0; my $__hhh = 0; my @__hhi = (); my $__hhj = 0; my $__hhk = {}; my $__hhl = {}; if ($__hil =~ m/_Unacceptable(\d+)/i) { $__hhj = $1; } my ($__him, $__hin) = _cjp($__hik, 0, $__hgz); _cjl($__him, $__hha, $__hhk, $__hhl); my ($__hio) = _cjq($__hik, $__hhj, $__hgz, $__hhk, $__hhl); my ($__hip, $__hiq) = _cjs($__hil, $__hik, $__hhb); my $__hhm = @{$__hip}; my $__hhn = @{$__hiq}; my @__hho = (); if ($authlib8_4_8::_bzy) { $__hhn = 1; } if ($__hhn) { my $__hhp = @{$__hhb}; my $__hhq = 0; my $__hhr = 0; my $__hhs = 0; my $__hht = 0; my $__hhu = 0; my $__hhv = 0; my $__hhw = 0; my $__hhx = 0; my $__hhy = 0; my $__hhz = 0; my $__hhh = 0; my $__hia = 0; my $__hib = 0; my $__hic = ""; my $__hid = 0; my %__hie = (); for ($__hhd = 1; $__hhd <= $__hhp; $__hhd++) { $__hht = 0; $__hhu = 0; $__hhv = 0; $__hhw = 0; $__hhf = $__hhb->[$__hhd - 1]; if (exists $__hha->{$__hhf}) { if (exists $__hha->{$__hhf}->{'_apf'}) { next; } $__hic = $__hha->{$__hhf}->{'_apo'}; $__hid = authlib8_4_8::_bss($__hic); if ($__hid) { $__hhy = @{$__hid}; } if ($__hhy == 1) { next; } elsif (!_cjm($__hhf, $__hid, $__hhk)) { next; } $__hhr = $__hha->{$__hhf}->{'_app'}; $__hhq = $__hha->{$__hhf}->{'_apq'}; %__hie = (); for ($__hhe = 0; $__hhe < $__hhn; $__hhe++) { $__hie{$__hiq->[$__hhe]->[$__hhd]} = 1; } for ($__hhe = 0; $__hhe < $__hhm; $__hhe++) { $__hhg = $__hip->[$__hhe]->[$__hhd]; if ($__hhg == 0) { next; } unless (exists $__hha->{$__hhf}->{'_apr'} && $__hip->[$__hhe]->[0] == 0) { delete $__hie{$__hhg}; } if ($__hhg < $__hht || $__hht == 0) { $__hht = $__hhg; } if ($__hhg > $__hhv || $__hhv == 0) { $__hhv = $__hhg; } } if ($__hhq) { if ($__hhq == 1) { foreach $__hhg (sort {$a <=> $b} keys %__hie) { if ($__hhg < $__hhu || $__hhu == 0) { if (_cjo($__hhf, $__hhg, $__hhk)) { $__hhu = $__hhg; } } } if ($authlib8_4_8::_bzy) { $__hhu = 1; } if ($__hhu) { if (($__hhu < $__hht) || ($__hht == 0) || $authlib8_4_8::_bzy) { if ($__hhu < $__hhy) { push @__hhi, [$__hhf, $__hhu]; } } } } elsif ($__hhq == 2) { foreach $__hhg (sort {$a <=> $b} keys %__hie) { if ($__hhg > $__hhw || $__hhw == 0) { if (_cjo($__hhf, $__hhg, $__hhk)) { $__hhw = $__hhg; } } } if ($authlib8_4_8::_bzy) { $__hhw = $__hhy; } if ($__hhw) { if (($__hhw > $__hhv) || ($__hhv == 0) || $authlib8_4_8::_bzy) { if ($__hhw > 1) { push @__hhi, [$__hhf, $__hhw]; } } } } } else { if ($__hhr) { foreach $__hhg (sort {$a <=> $b} keys %__hie) { if (!_cjo($__hhf, $__hhg, $__hhk)) { delete $__hie{$__hhg}; } } @__hho = sort {$a <=> $b} keys %__hie; for ($__hhe = 1; $__hhe < @__hho - 1; $__hhe++) { delete $__hie{$__hho[$__hhe]}; } if (@__hho == 2) { if ($__hht > 0 && $__hht < $__hho[0]) { delete $__hie{$__hho[0]}; } if ($__hhv > 0 && $__hhv > $__hho[1]) { delete $__hie{$__hho[1]}; } } } if ($authlib8_4_8::_bzy) { $__hie{"1"} = 1; } foreach $__hhg (sort {$a <=> $b} keys %__hie) { if ($__hhg) { if (_cjo($__hhf, $__hhg, $__hhk)) { push @__hhi, [$__hhf, $__hhg]; } } } } } else { if (exists $__hgz->{'_aqk'}) { my $__hif = $__hgz->{'_aqk'}; my $__hig = $__hif->{'_aql'}; my $__hih = $__hik . "_BYO_" . $__hig; if ($__hhf == $__hig) { if (exists $__hif->{'_aqw'}) { my $__hii = $__hif->{'_aqw'}; if ($__hii <= $__hhj) { $__hhv = 0; my $__hij = authlib8_4_8::_bnc($__hih); if ($__hij) { $__hhv = $__hij; } for ($__hhe = 0; $__hhe < $__hhm; $__hhe++) { $__hhg = $__hip->[$__hhe]->[$__hhd]; if ($__hhg == 0) { next; } if ($__hhg > $__hhv || $__hhv == 0) { $__hhv = $__hhg; } } if ($__hhv) { if (_cjo($__hhf, $__hhv, $__hhk)) { push @__hhi, [$__hhf, $__hhv]; } } } } } } } } } return (\@__hhi, $__hio); } sub _cjl { my ($__hjd, $__hje, $__hjf, $__hjg) = @_; my $__hir = @{$__hjd}; my $__his = 0; my $__hit = 0; my $__hiu = 0; my $__hiv = ""; my $__hiw = 0; my $__hix = 0; my $__hiy = 0; my $__hiz = 0; my $__hja = 0; my $__hjb = 0; my $__hjc = 0; for ($__hix = 0; $__hix < $__hir; $__hix++) { $__his = $__hjd->[$__hix]; $__hiz = $__his->[0]; $__hja = $__his->[1]; $__hjb = $__his->[2]; if (exists $__hje->{$__hiz}) { $__hjc = $__hje->{$__hiz}; $__hiv = $__hjc->{'_apo'}; $__hiw = authlib8_4_8::_bsw($__hiv); $__hiu = @{$__hiw}; if ($__hjb) { $__hit = $__hjc->{'_app'}; if (($__hit == 1 && $__hjb == 1) || $__hit == 2 && $__hjb == 2) { for ($__hiy = $__hja - 1; $__hiy > 0; $__hiy--) { $__hjf->{$__hiz . "," . $__hiy} = 1; $__hjg->{$__hiz . "," . $__hiy} = 1; } } elsif (($__hit == 1 && $__hjb == 2) || $__hit == 2 && $__hjb == 1) { for ($__hiy = $__hja + 1; $__hiy <= $__hiu; $__hiy++) { $__hjf->{$__hiz . "," . $__hiy} = 1; $__hjg->{$__hiz . "," . $__hiy} = 1; } } } else { for ($__hiy = 1; $__hiy <= $__hiu; $__hiy++) { $__hjf->{$__hiz . "," . $__hiy} = 1; $__hjg->{$__hiz . "," . $__hiy} = 1; } delete $__hjg->{$__hiz . "," . $__hja}; } } } } sub _cjm { my($__hjr, $__hjs, $__hjt) = @_; my $__hjh = 1; my $__hji = 1; my $__hjj = 0; my $__hjk = 0; my $__hjl = @{$__hjs}; my %__hjm = (); for ($__hjj = 0; $__hjj < $__hjl; $__hjj++) { $__hjm{$__hjs->[$__hjj]->{'_bcm'}} = 1; } my $__hjn = ""; my $__hjo = 0; my $__hjp = 0; foreach $__hjn (sort keys %{$__hjt}) { if ($__hjn =~ m/^(\d+),(.*?)$/) { $__hjo = $1; $__hjp = $2; if ($__hjo == $__hjr) { delete $__hjm{$__hjp}; } } } my @__hjq = keys %__hjm; if (@__hjq < 2) { $__hji = 0; } return $__hjh; } sub _cjn { my($__hki, $__hkj, $__hkk, $__hkl, $__hkm) = @_; my $__hju = 1; my $__hjv = 0; my $__hjw = 0; my $__hjx = @{$__hkj}; my $__hjy = 1; my $__hjz = $__hjx; my %__hka = (); for ($__hjv = 0; $__hjv < $__hjx; $__hjv++) { $__hka{$__hkj->[$__hjv]->{'_bcm'}} = 1; } my $__hkb = @{$__hkk}; my $__hkc = 0; my $__hkd = 0; my $__hke = 0; my $__hkf = 0; for ($__hjv = 0; $__hjv < $__hkb; $__hjv++) { $__hkc = $__hkk->[$__hjv]; $__hkd = $__hkc->[0]; if ($__hkd == $__hki) { $__hke = $__hkc->[1]; $__hkf = $__hkc->[2]; if ($__hkm) { if (($__hkm == 1 && $__hkf == 1) || $__hkm == 2 && $__hkf == 2) { for ($__hjw = $__hke - 1; $__hjw > 0; $__hjw--) { delete $__hka{$__hjw}; } } elsif (($__hkm == 1 && $__hkf == 2) || $__hkm == 2 && $__hkf == 1) { for ($__hjw = $__hke + 1; $__hjw <= $__hjx; $__hjw++) { delete $__hka{$__hjw}; } } } else { $__hju = 0; } } } if ($__hju) { my $__hkg = @{$__hkl}; for ($__hjv = 0; $__hjv < $__hkg; $__hjv++) { $__hkc = $__hkl->[$__hjv]; $__hkd = $__hkc->[0]; if ($__hkd == $__hki) { $__hke = $__hkc->[1]; delete $__hka{$__hke}; } } my @__hkh = keys %__hka; if (@__hkh < 2) { $__hju = 0; } else { $__hjy = $__hkh[0]; $__hjz = $__hkh[@__hkh - 1]; } } return ($__hju, $__hjy, $__hjz); } sub _cjo { my($__hko, $__hkp, $__hkq) = @_; my $__hkn = 0; if (!exists $__hkq->{$__hko . "," . $__hkp}) { $__hkn = 1; } return $__hkn; } sub _cjp { my($__hlo, $__hlp, $__hlq) = @_; my $__hkr = 0; my $__hks = ""; my $__hkt = ""; my $__hku = 0; my $__hkv = 0; my $__hkw = 0; my $__hkx = {}; my @__hky = (); my %__hkz = (); my %__hla = (); my $__hlb = ""; my $__hlc = 0; my $__hld = 0; my $__hle = ""; my $__hlf = $__hlq->{'_apz'}; my $__hlg = $__hlq->{'_apa'}; my $__hlh = authlib8_4_8::_bqm(); my $__hli = 0; if ($__hlf > 0) { for ($__hkr = 1; $__hkr <= $__hlf; $__hkr++) { $__hks = $__hlo . "_MustHave" . $__hkr; $__hkt = authlib8_4_8::_bnc($__hks); if ($__hkt ne "") { $__hli = $authlib8_4_8::_bwq{$__hks}->{'_v'}; if ($__hli < $__hlh) { $__hks .= "_shown"; $__hlb = authlib8_4_8::_bnc($__hks); $__hlc = eval($__hlb); if ($@) { authlib8_4_8::_bqa(162, "", "ACBC Error. Error reading ACBC rules shown list.", $@); } if ($__hkt > 0) { ($__hku, $__hkv, $__hkw) = @{$__hlc->[$__hkt - 1]}; $__hkx->{$__hku}->{$__hkv} = $__hkw; push @__hky, [$__hku, $__hkv, $__hkw]; $__hle = $__hku . "," . $__hkv . "," . $__hkw; $__hkz{$__hle} = 1; my $__hlj = $__hlg->{$__hku}->{'_apo'}; my $__hlk = authlib8_4_8::_bsw($__hlj); my $__hll = @{$__hlk}; if ($__hkw) { my $__hlm = $__hlg->{$__hku}->{'_app'}; if (($__hlm == 1 && $__hkw == 1) || $__hlm == 2 && $__hkw == 2) { for (my $__hln = $__hkv - 1; $__hln > 0; $__hln--) { $__hla{$__hku . ',' . $__hln} = 1; } } elsif (($__hlm == 1 && $__hkw == 2) || $__hlm == 2 && $__hkw == 1) { for (my $__hln = $__hkv + 1; $__hln <= $__hll; $__hln++) { $__hla{$__hku . ',' . $__hln} = 1; } } } else { for (my $__hln = 1; $__hln <= $__hll; $__hln++) { $__hla{$__hku . "," . $__hln} = 1; } delete $__hla{$__hku . "," . $__hkv}; } } else { foreach $__hld (@{$__hlc}) { $__hku = $__hld->[0]; $__hkv = $__hld->[1]; $__hkw = $__hld->[2]; $__hkz{$__hku . "," . $__hkv . "," . $__hkw} = 1; } } } } } _cjr($__hlo, $__hlq, \%__hkz, \%__hla, $__hkx, 1); } return (\@__hky, \%__hkz); } sub _cjq { my($__hmh, $__hmi, $__hmj, $__hmk, $__hml) = @_; my $__hlr = 0; my $__hls = ""; my $__hlt = ""; my $__hlu = 0; my $__hlv = 0; my $__hlw = 0; my @__hlx = (); my $__hly = {}; my $__hlz = ""; my $__hma = 0; my $__hmb = 0; my %__hmc = %{$__hml}; my $__hmd = ""; my $__hme = $__hmj->{'_aqa'}; my $__hmf = authlib8_4_8::_bqm(); my $__hmg = 0; if ($__hme > 1) { for ($__hlr = 1; $__hlr <= $__hme; $__hlr++) { $__hls = $__hmh . "_Unacceptable" . $__hlr; $__hlt = authlib8_4_8::_bnc($__hls); if ($__hlt ne "") { $__hmg = $authlib8_4_8::_bwq{$__hls}->{'_v'}; if ($__hmg < $__hmf) { $__hls .= "_shown"; $__hlz = authlib8_4_8::_bnc($__hls); $__hma = eval($__hlz); if ($@) { authlib8_4_8::_bqa(163, "ACBC Error. Error reading ACBC rules shown list.", $@); } if ($__hlt > 0) { ($__hlu, $__hlv) = @{$__hma->[$__hlt - 1]}; push @__hlx, [$__hlu, $__hlv]; $__hly->{$__hlu}->{$__hlv} = 1; $__hmd = $__hlu . "," . $__hlv; $__hmk->{$__hmd} = 1; $__hmc{$__hmd} = 1; } else { foreach $__hmb (@{$__hma}) { $__hlu = $__hmb->[0]; $__hlv = $__hmb->[1]; $__hmk->{$__hlu . "," . $__hlv} = 1; } } } } } _cjr($__hmh, $__hmj, $__hmk, \%__hmc, $__hly, 0); } return (\@__hlx); } sub _cjr { my ($__hnh, $__hni, $__hnj, $__hnk, $__hnl, $__hnm) = @_; my $__hmm = 0; my $__hmn = 0; my $__hmo = ""; my $__hmp = _cjt($__hnh, $__hni); my $__hmq = @{$__hmp}; my $__hmr = $__hni->{'_apa'}; my @__hms = (); my %__hmt = (); my $__hmu = 0; my $__hmn = 0; my @__hmv = (); my $__hmw = ""; my $__hmx = 0; my $__hmy = 0; my %__hmz = (); my $__hna = 0; my $__hnb = 0; my $__hnc = 0; my $__hnd = 0; my $__hne = 0; if (exists $__hni->{'_aqk'}) { $__hmu = $__hni->{'_aqk'}->{'_aql'}; } for ($__hmm = 0; $__hmm < $__hmq; $__hmm++) { $__hmn = $__hmp->[$__hmm]; $__hmt{$__hmn} = $__hmm; if ($__hmn != $__hmu) { if (exists $__hmr->{$__hmn} && exists $__hmr->{$__hmn}->{'_api'}) { push(@__hms, $__hmn); } } } foreach $__hnb (@__hms) { @__hmv = @{$__hmr->{$__hnb}->{'_api'}}; %__hmz = map {$_ => 1} @__hmv; foreach $__hnd (@__hmv) { if (exists $__hmt{$__hnd}) { my $__hnf = $__hmr->{$__hnd}->{'_apt'}->{$__hnb}; my $__hng = keys %{$__hnf}; $__hna = 0; foreach $__hne (sort {$a <=> $b} keys %{$__hnf}) { $__hmo = $__hnd . ',' . $__hne; if (exists $__hnk->{$__hmo}) { $__hna++; } } if ($__hna == $__hng) { delete $__hmz{$__hnd}; } } } if (keys %__hmz == 0) { $__hmr->{$__hnb}->{'_apf'} = 1; if (exists $__hnl->{$__hnb}) { $__hmw = $__hmr->{$__hnb}->{'_apo'}; $__hmx = authlib8_4_8::_bss($__hmw); $__hmy = 0; if($__hmx) { $__hmy = @{$__hmx}; } if ($__hmy == 0) { authlib8_4_8::_bqa(297, "ACBC Error.", "ACBC Error. Attribute #" . $__hnb . " has no levels.", $@); } foreach $__hnc (@{$__hmx}) { if (exists $__hnl->{$__hnb}->{$__hnc->{'_bcm'}}) { $__hmo = $__hnb . ',' . $__hnc->{'_bcm'}; if ($__hnm) { $__hmo .= ',' . $__hnl->{$__hnb}->{$__hnc->{'_bcm'}}; } $__hnj->{$__hmo} = 1; } } } } } } sub _cjs { my($__hoo, $__hop, $__hoq) = @_; my $__hnn = 1; my $__hno = 1; my $__hnp = ""; my $__hnq = $acbclib8_4_8::_cmf->{$__hop}; my $__hnr = $__hnq->{'_apy'}; my $__hns = $__hnq->{'_apa'}; my $__hnt = 0; my $__hnu = 0; my $__hnv = 0; my @__hnw = (); my @__hnx = (); my $__hny = ""; my $__hnz = $authlib8_4_8::_bwq{$__hoo}->{'_v'}; my $__hoa = 0; my $__hob = ""; while ($__hno) { $__hnp = $__hop . "_Screener" . $__hnn; if (authlib8_4_8::_bnc($__hnp . "_1") ne "") { $__hoa = $authlib8_4_8::_bwq{$__hnp}->{'_v'}; if ($__hoa < $__hnz) { my $__hoc = authlib8_4_8::_bnc($__hnp . '_shown'); my @__hod = (); if ($__hoc) { @__hod = split(',', $__hoc); } if (@__hod == 0) { next; } for($__hnt = 1; $__hnt <= $__hnr; $__hnt++) { $__hnu = 0; $__hnv = 0; $__hny = $__hnp . "_" . $__hnt; $__hnu = authlib8_4_8::_bnc($__hny); $__hnv = $__hod[$__hnt - 1]; if ($__hnu) { push @__hnw, $__hnv; } else { push @__hnx, $__hnv; } } $__hnn++; } else { $__hno = 0; } } else { $__hno = 0; } } my $__hoe = _cju(\@__hnw, $__hop, $__hnq); my $__hof = _cju(\@__hnx, $__hop, $__hnq); my $__hog = $__hnq->{'_aoz'}; my $__hoh = authlib8_4_8::_bss($__hog); if (!_clr($__hnq, $__hoh)) { my @__hoi = (); push @__hoi, 0; my $__hoj = "sys_ACBC_" . $__hop . "_byo"; my $__hok = authlib8_4_8::_bnc($__hoj); if ($__hok) { my @__hol = split(',', $__hok); if (@__hol == 0) { authlib8_4_8::_bqa(288, "", "Reading ACBC BYO error.", ""); } push (@__hoi, @__hol); } else { my $__hom = ""; my $__hon = 0; foreach $__hon (@{$__hoq}) { if (exists $__hns->{$__hon}) { if (exists $__hns->{$__hon}->{'_apr'}) { push @__hoi, 0; } else { $__hom = $__hop . "_BYO_" . $__hon; $__hob = authlib8_4_8::_bnc($__hom); if ($__hob) { push @__hoi, $__hob; } elsif ($authlib8_4_8::_bzy) { push @__hoi, 1; } } } else { push @__hoi, 0; } } } if (@__hoi > 1) { push @{$__hoe}, \@__hoi; } } return ($__hoe, $__hof); } sub _cjt { my($__hpc, $__hpd) = @_; my $__hor = "sys_ACBC_" . $__hpc . "_atts"; my $__hos = 0; my $__hot = authlib8_4_8::_bnc($__hor); if ($__hot) { eval { my @__hou = split(',', $__hot); $__hos = \@__hou; }; if ($@) { authlib8_4_8::_bqa(164, "", "Reading ACBC saved attributes error.", $@); } } else { my $__hov = $__hpd->{'_aoz'}; my $__how = $__hpd->{'_apa'}; my $__hox = authlib8_4_8::_bss($__hov); my $__hoy = 0; my $__hoz = 0; my @__hpa = (); my $__hpb = 0; if (exists $__hpd->{'_aqk'}) { $__hpb = $__hpd->{'_aqk'}->{'_aql'}; } if($__hox) { foreach $__hoy (@{$__hox}) { $__hoz = $__hoy->{'_bcm'}; if (exists $__how->{$__hoz} || $__hoz == $__hpb) { push @__hpa, $__hoz; } } } $__hos = \@__hpa; } return $__hos; } sub _cju { my($__hpq, $__hpr, $__hps, $__hpt) = @_; _cjv($__hpr); my $__hpe = 0; my @__hpf = (); my $__hpg = 0; foreach $__hpe (@{$__hpq}) { if ($__hpe) { $__hpg = $acbclib8_4_8::_cmh->{$__hpr}->[$__hpe - 1]; push @__hpf, $__hpg; } elsif ($__hpe == 0) { my $__hph = _cjt($__hpr, $__hps); my $__hpi = 0; my $__hpj = ""; my @__hpk = (); push(@__hpk, 0); if ($__hpt) { push(@__hpk, @{$__hpt}); } else { my $__hpl = ""; my $__hpm = 0; my $__hpn = "sys_ACBC_" . $__hpr . "_byo"; my $__hpo = authlib8_4_8::_bnc($__hpn); if ($__hpo) { my @__hpp = split(',', $__hpo); if (@__hpp == 0) { authlib8_4_8::_bqa(286, "", "Reading ACBC BYO error.", ""); } push (@__hpk, @__hpp); } else { foreach $__hpi (@{$__hph}) { $__hpj = $__hpr . "_BYO_" . $__hpi; $__hpl = authlib8_4_8::_bnc($__hpj); if ($__hpl) { push @__hpk, $__hpl; } elsif ($authlib8_4_8::_bzy) { push @__hpk, 1; } else { push @__hpk, 0; } } } } push(@__hpf, \@__hpk); } } return \@__hpf; } sub _cjv { my($__hqb) = @_; if (!exists $acbclib8_4_8::_cmh->{$__hqb}) { my $__hpu = 0; my @__hpv = (); my $__hpw = 1; my $__hpx = "sys_ACBC_" . $__hqb . "_design"; my $__hpy = 0; my $__hpz = authlib8_4_8::_bnc($__hpx . $__hpw); if ($authlib8_4_8::_bzy && !$__hpz) { my $__hqa = authlib8_4_8::_bqx($__hqb); my($__hqc, $__hqd) = _cjw($__hqb . "_Screener1", $__hqa, $__hqb); $__hpz = authlib8_4_8::_bnc($__hpx . $__hpw); } while ($__hpz) { if ($__hpz ne "") { if ($__hpz ne '[]') { $__hpy = eval($__hpz); if ($@) { authlib8_4_8::_bqa(165, "", "ACBC Error. Error reading design.", $@); } while ($__hpy->[0]->[0] <= @__hpv) { splice(@__hpv, $__hpy->[0]->[0] - 1, 1, $__hpy->[0]); shift(@{$__hpy}); } push @__hpv, @{$__hpy}; } } $__hpw++; $__hpz = authlib8_4_8::_bnc($__hpx . $__hpw); } $acbclib8_4_8::_cmh->{$__hqb} = \@__hpv; } } sub _cjw { my($__hrt, $__hru, $__hrv) = @_; my $__hqe = 0; my $__hqf = 0; my $__hqg = $__hru->{'_apx'}; my $__hqh = $__hru->{'_apy'}; my $__hqi = $__hqg * $__hqh; my $__hqj = "sys_ACBC_" . $__hrv . "_"; my $__hqk = ""; my @__hql = (); my $__hqm = 0; my $__hqn = _cjt($__hrv, $__hru); my $__hqo = 0; if ($__hrt =~ m/Screener(\d+)/i) { $__hqo = $1; } my $__hqp = _cke($__hru, $__hrv, $__hqo - 1); $__hqm = keys %{$__hqp}; my $__hqq = _ckl($__hru, $__hrv, $__hrt); my $__hqr = 1; my $__hqs = 0; my $__hqt = 0; my $__hqu = 0; my @__hqv = (); my @__hqw = (); my @__hqx = (); my $__hqy = ""; my $__hqz = 0; my $__hra = 0; my $__hrb = ""; my $__hrc = authlib8_4_8::_bnc($__hqj . "design" . $__hqr); while ($__hrc) { if ($__hrc ne '[]') { $__hqs = eval($__hrc); if ($@) { authlib8_4_8::_bqa(166, "", "Reading ACBC saved design error.", $@); } if ($__hqr > 1) { while ($__hqs->[0]->[0] <= @__hqw) { splice(@__hqw, $__hqs->[0]->[0] - 1, 1, $__hqs->[0]); shift(@{$__hqs}); } } push @__hqw, @{$__hqs}; $__hqt = @{$__hqs}; } else { $__hqt = 0; } if ($__hqr == 1) { if ($__hqt < $__hqi) { $__hqi = $__hqt; } } $__hqu += $__hqt; $__hrb = $__hqj . "rejected" . ($__hqr + 1); $__hqy = authlib8_4_8::_bnc($__hrb); if ($__hqy) { $__hqz = eval($__hqy); if ($@) { authlib8_4_8::_bqa(167, "Reading ACBC rejected concepts error.", $@); } $__hra = @{$__hqz}; for ($__hqe = 0; $__hqe < $__hra; $__hqe++) { $__hqp->{$__hqz->[$__hqe]} = 1; } } $__hqr++; $__hrc = authlib8_4_8::_bnc($__hqj . "design" . $__hqr); } my %__hrd = (%{$__hqp}); my $__hre = 0; if (exists $__hru->{'_aqk'}) { $__hre = $__hru->{'_aqk'}->{'_aql'}; } for ($__hqe = 0; $__hqe < $__hqu; $__hqe++) { if (!exists $__hqp->{$__hqw[$__hqe]->[0]}) { if (_ckk($__hqq, $__hqw[$__hqe], $__hqn, $__hre)) { push @__hqv, $__hqw[$__hqe]; } else { $__hrd{$__hqw[$__hqe]->[0]} = 1; push @__hqx, $__hqw[$__hqe]->[0]; } } $__hqf++; } my $__hrf = $__hqi - $__hqm; my $__hrg = 0; if ($__hrf > @__hqv) { $__hrg = $__hrf - @__hqv; } my $__hrh = 0; my $__hri = $__hru->{'_aoz'}; my $__hrj = authlib8_4_8::_bss($__hri); my $__hrk = _clr($__hru, $__hrj); if ($__hqr == 1) { if($__hrk) { ciwlib8_4_8::_bid(\@__hql, $authlib8_4_8::_bzi{"hid_respnum"}, $__hrv . "_BYO", 1); my $__hrl = 'sys_ACBC_' . $__hrv . '_byo'; foreach my $__hrm (@__hql) { if ($__hrm->[0] eq $__hrl) { my @__hrn = split(',', $__hrm->[1]); $__hrh = \@__hrn; last; } } authlib8_4_8::_bqx($__hrt); } } if ($__hrg > 0) { my ($__hrw, $__hrx, $__hry, $__hrz, $__hsa, $__hsb, $__hsc, $__hsd, $__hse, $__hsf) = _cgq($__hru, $__hrv, $__hrg, $__hqn, $__hqf, \@__hqw, $__hqq, ($__hqr - 1), \%__hrd, $__hrh, $__hrk); push @__hql, ["sys_ACBC_" . $__hrv . "_dealWinner" . $__hqr, $__hsf]; push @__hql, ["sys_ACBC_" . $__hrv . "_dealCnt" . $__hqr, $__hsc]; push @__hql, ["sys_ACBC_" . $__hrv . "_bestDEff" . $__hqr, $__hsd]; push @__hql, ["sys_ACBC_" . $__hrv . "_byoIncluded" . $__hqr, $__hse]; if ($__hrw) { if ($__hqf == 0) { $__hrw = _cki($__hrw, $__hru, $__hqn, $__hsa); } push @__hqv, @{$__hrw}; my $__hro = "sys_ACBC_" . $__hrv . "_design" . $__hqr; if ($__hsb) { my @__hrp = (); for ($__hqe = 0; $__hqe < (@__hqv - @{$__hrw}); $__hqe++) { if (exists $__hsb->{$__hqv[$__hqe]->[0]}) { push (@__hrp, $__hqv[$__hqe]); } } push @__hrp, @{$__hrw}; push @__hql, [$__hro, authlib8_4_8::_bni(\@__hrp)]; } else { push @__hql, [$__hro, authlib8_4_8::_bni($__hrw)]; } if ($authlib8_4_8::_bzy) { authlib8_4_8::_bnd($__hro, authlib8_4_8::_bni($__hrw)); } push @__hql, ["sys_ACBC_" . $__hrv . "_levelCnt" . $__hqr, authlib8_4_8::_bni($__hrx)]; push @__hql, ["sys_ACBC_" . $__hrv . "_attCnt" . $__hqr, authlib8_4_8::_bni($__hry)]; push @__hql, ["sys_ACBC_" . $__hrv . "_rndArray" . $__hqr, _cls($__hrz)]; if ($__hre) { my $__hrq = 0; my $__hrr = @{$__hqn}; for ($__hqe = 0; $__hqe < $__hrr && !$__hrq; $__hqe++) { $__hrq = $__hqn->[$__hqe] == $__hre; } if ($__hrq) { push @__hql, ["sys_ACBC_" . $__hrv . "_pricelevels" . $__hqr, authlib8_4_8::_bni($__hsa)]; } } } elsif ($__hsb) { push @__hql, ['sys_ACBC_' . $__hrv . '_design' . $__hqr, authlib8_4_8::_bni(\@__hqv)]; } } if (@__hqx) { push @__hql, ["sys_ACBC_" . $__hrv . "_rejected" . $__hqr, authlib8_4_8::_bni(\@__hqx)]; } my @__hrs = (); if (@__hqv > $__hqh) { @__hrs = @__hqv[0 .. ($__hqh - 1)]; } else { @__hrs = @__hqv; } if (@__hql && ($authlib8_4_8::_bzy == 0)) { authlib8_4_8::_boc(\@__hql, $authlib8_4_8::_bzi{"hid_respnum"}, 1, 1); authlib8_4_8::_bnu(\@__hql, $authlib8_4_8::_bzi{"hid_respnum"}, 0); } return ($__hqn, \@__hrs); } sub _cjx { my ($__htj, $__htk, $__htl) = @_; my $__hsg = "sys_ACBC_" . $__htk . "_"; my $__hsh = 0; my $__hsi = 2; my $__hsj = 0; my $__hsk = $__htj->{'_apx'}; my $__hsl = $__htj->{'_apy'}; my $__hsm = $__hsk * $__hsl; while ($__hsi > 1) { my $__hsn = $authlib8_4_8::_bwq{$__htl}; $__hsi = $__hsn->{'_v'}; my $__hso = $authlib8_4_8::_bzj->[$__hsi - 2]; my $__hsp = $__hso->{'_g'}; my $__hsq = @{$__hsp}; for ($__hsj = 0; $__hsj < $__hsq; $__hsj++) { $__hsn = $__hsp->[$__hsj]; if ($__hsn->{'_bgt'} =~ m/^$__htk\_Screener(\d+)$/i) { $__hsh = $1; last; } if ($__hsj == 0) { $__htl = $__hsn->{'_bgt'}; } } if ($__hsh != 0) { last; } } my $__hsr = _cjt($__htk, $__htj); my $__hss = _cke($__htj, $__htk, $__hsh); my $__hst = _ckl($__htj, $__htk, $__htl); my $__hsu = 1; my $__hsv = 0; my $__hsw = 0; my $__hsx = 0; my @__hsy = (); my @__hsz = (); my @__hta = (); my $__htb = ""; my $__htc = 0; my $__htd = 0; my $__hte = ""; my $__htf = authlib8_4_8::_bnc($__hsg . "design" . $__hsu); while ($__htf) { if ($__htf ne '[]') { $__hsv = eval($__htf); if ($@) { authlib8_4_8::_bqa(166, "", "Reading ACBC saved design error.", $@); } if ($__hsu > 1) { while ($__hsv->[0]->[0] <= @__hsz) { splice(@__hsz, $__hsv->[0]->[0] - 1, 1, $__hsv->[0]); shift(@{$__hsv}); } } push @__hsz, @{$__hsv}; $__hsw = @{$__hsv}; } else { $__hsw = 0; } if ($__hsu == 1) { if ($__hsw < $__hsm) { $__hsm = $__hsw; } } $__hsx += $__hsw; $__hte = $__hsg . "rejected" . ($__hsu + 1); $__htb = authlib8_4_8::_bnc($__hte); if ($__htb) { $__htc = eval($__htb); if ($@) { authlib8_4_8::_bqa(167, "Reading ACBC rejected concepts error.", $@); } $__htd = @{$__htc}; for ($__hsj = 0; $__hsj < $__htd; $__hsj++) { $__hss->{$__htc->[$__hsj]} = 1; } } $__hsu++; $__htf = authlib8_4_8::_bnc($__hsg . "design" . $__hsu); } my %__htg = (%{$__hss}); my $__hth = 0; if (exists $__htj->{'_aqk'}) { $__hth = $__htj->{'_aqk'}->{'_aql'}; } for ($__hsj = 0; $__hsj < $__hsx; $__hsj++) { if (!exists $__hss->{$__hsz[$__hsj]->[0]}) { if (_ckk($__hst, $__hsz[$__hsj], $__hsr, $__hth)) { push @__hsy, $__hsz[$__hsj]; } } } my $__hti = @__hsy; return $__hti; } sub _cjy { my($__hvi, $__hvj, $__hvk) = @_; my $__htm = 0; my $__htn = "sys_ACBC_" . $__hvj . "_"; my $__hto = ""; my @__htp = (); my $__htq = 0; my $__htr = _cjt($__hvj, $__hvi); my $__hts = $__htn . "selected"; my $__htt = authlib8_4_8::_bnc($__hts); if ($__htt) { eval { my @__htu = split(',', $__htt); $__htq = \@__htu; }; if ($@) { authlib8_4_8::_bqa(168, "", "Reading ACBC saved attributes error.", $@); } } elsif ($__hvi->{'_apx'} == 0) { my $__htv = $__hvi->{'_aoz'}; my $__htw = authlib8_4_8::_bss($__htv); my $__htx = 0; my $__hty = 0; if(_clr($__hvi, $__htw)) { $__hty = 1; ciwlib8_4_8::_bid(\@__htp, $authlib8_4_8::_bzi{"hid_respnum"}, $__hvj . "_BYO", 1); my $__htz = 'sys_ACBC_' . $__hvj . '_byo'; foreach my $__hua (@__htp) { if ($__hua->[0] eq $__htz) { my @__hub = split(',', $__hua->[1]); $__htx = \@__hub; last; } } authlib8_4_8::_bqx($__hvk); } my @__huc = (); my $__hud = $__hvi->{'_aqe'}; if ($__hvi->{'_aqd'}) { if (!$__hty) { $__hud--; push (@__huc, 0); } } if ($__hud) { my $__htr = _cjt($__hvj, $__hvi); my ($__hvl, $__hvm, $__hvn, $__hvo, $__hvp, $__hvq, $__hvr, $__hvs, $__hvt, $__hvu) = _cgq($__hvi, $__hvj, $__hud, $__htr, 0, [], {}, 0, {}, $__htx, $__hty); push @__htp, ["sys_ACBC_" . $__hvj . "_dealWinner1", $__hvu]; push @__htp, ["sys_ACBC_" . $__hvj . "_dealCnt1", $__hvr]; push @__htp, ["sys_ACBC_" . $__hvj . "_bestDEff1", $__hvs]; push @__htp, ["sys_ACBC_" . $__hvj . "_byoIncluded1", $__hvt]; if ($__hvl) { my $__hue = "sys_ACBC_" . $__hvj . "_design1"; push @__htp, [$__hue, authlib8_4_8::_bni($__hvl)]; if ($authlib8_4_8::_bzy) { authlib8_4_8::_bnd($__hue, authlib8_4_8::_bni($__hvl)); } push @__htp, ["sys_ACBC_" . $__hvj . "_levelCnt1", authlib8_4_8::_bni($__hvm)]; push @__htp, ["sys_ACBC_" . $__hvj . "_attCnt1", authlib8_4_8::_bni($__hvn)]; push @__htp, ["sys_ACBC_" . $__hvj . "_rndArray1", _cls($__hvo)]; my $__huf = 0; if (exists $__hvi->{'_aqk'}) { $__huf = $__hvi->{'_aqk'}->{'_aql'}; } if ($__huf) { my $__hug = 0; my $__huh = @{$__htr}; for ($__htm = 0; $__htm < $__huh && !$__hug; $__htm++) { $__hug = $__htr->[$__htm] == $__huf; } if ($__hug) { push @__htp, ["sys_ACBC_" . $__hvj . "_pricelevels1", authlib8_4_8::_bni($__hvp)]; } } push(@__huc, map { $_->[0] } @{$__hvl}); $acbclib8_4_8::_cmh->{$__hvj} = $__hvl; $__htq = _cjz(\@__huc, $__hvj, $__hvi); if ($authlib8_4_8::_bzy == 0) { push @__htp, [$__hts, join(',', @{$__htq})]; authlib8_4_8::_boc(\@__htp, $authlib8_4_8::_bzi{"hid_respnum"}, 1, 1); authlib8_4_8::_bnu(\@__htp, $authlib8_4_8::_bzi{"hid_respnum"}, 0); } } } } else { my $__hui = 0; if ($authlib8_4_8::_bzy) { _cjv($__hvj); my $__huj = @{$acbclib8_4_8::_cmh->{$__hvj}}; my @__huk = (); for ($__htm = 0; $__htm < $__huj; $__htm++) { push @__huk, ($__htm + 1); } $__hui = \@__huk; } else { $__hui = _ckf($__hvi, $__hvj); } my @__hul = reverse(@{$__hui}); if (exists $__hvi->{'_aqe'}) { my $__hum = $__hvi->{'_aqe'}; if ($__hvi->{'_aqd'} && $authlib8_4_8::_bzy == 0) { my $__htv = $__hvi->{'_aoz'}; my $__htw = authlib8_4_8::_bss($__htv); if (!_clr($__hvi, $__htw)) { unshift(@__hul, 0); } } if ($__hum > 0 && $__hum < @__hul) { splice @__hul, $__hum; } } $__htq = _cjz(\@__hul, $__hvj, $__hvi); if ($authlib8_4_8::_bzy == 0) { push @__htp, [$__hts, join(',', @{$__htq})]; authlib8_4_8::_boc(\@__htp, $authlib8_4_8::_bzi{"hid_respnum"}, 1, 1); authlib8_4_8::_bnu(\@__htp, $authlib8_4_8::_bzi{"hid_respnum"}, 0); } } my $__hun = @{$__htq}; my $__huo = 0; my $__hup = 0; if ($__hvk =~ m/^(.*?)(\d+)$/i) { $__huo = $2; } if ($__huo) { my $__huq = $__hvi->{'_aqb'}; my $__hur = ($__huo - 1) * $__huq; my @__hus = (); my $__hut = 1; my @__huu = @{$__htq}; my @__huv = (); my $__huw = 1; my $__hux = 0; if ($authlib8_4_8::_bzy) { $__hux = $__huo - 1; } my $__huy = ""; my @__huz = (); my @__hva = (); my $__hvb = ""; my @__hvc = (); my $__hvd = 0; my $__hve = 0; my $__hvf = 0; my $__hvg = 0; while ($__hut) { $__hvd = @__huu; $__hvf = ($__hux + $__huq) - 1; $__huy = $__hvj . "_ChoiceTask" . $__huw; $__hvb = authlib8_4_8::_bnc($__huy); if ($__hvf < $__hvd && $__huo > $__huw && $__hvb) { my $__hvh = authlib8_4_8::_bnc($__huy . '_shown'); @__hva = split(',', $__hvh); $__hvg = splice(@__hva, $__hvb - 1, 1); if (!_ckd(\@__huv, $__hvg)) { push @__huv, $__hvg; } push @__huz, @__hva; $__hux += $__huq; $__huw++; } else { if ($__hvf < $__hvd) { for ($__htm = $__hux; $__htm <= $__hvf; $__htm++) { push @__hvc, $__huu[$__htm]; } last; } else { for ($__htm = $__hux; $__htm < $__hvd; $__htm++) { unshift @__huv, $__huu[$__htm]; } if (@__huv == 1) { last; } else { while (@__huv < $__huq) { if ($__hve < @__huz) { push @__huv, $__huz[$__hve]; $__hve++; } else { $__hut = 0; last; } } } @__huu = @__huv; @__huv = (); $__hux = 0; } } } for ($__htm = 0; $__htm < @__hvc; $__htm++) { push @__hus, $__hvc[$__htm]; } $__hup = _cju(\@__hus, $__hvj, $__hvi); } return($__htr, $__hup, $__hun); } sub _cjz { my($__hwo, $__hwp, $__hwq) = @_; my $__hvv = _cju($__hwo, $__hwp, $__hwq); my $__hvw = 1; my $__hvx = 0; my $__hvy = 0; my $__hvz = 0; my $__hwa = 0; my $__hwb = 0; my $__hwc = $__hwq->{'_aqb'}; my $__hwd = 0; my $__hwe = 0; my $__hwf = 0; my $__hwg = 0; my $__hwh = 0; my $__hwi = 0; my $__hwj = 0; my @__hwk = (); my $__hwl = 0; if (@{$__hvv}) { $__hwl = @{$__hvv->[0]}; } while (@{$__hvv} >= $__hwc) { $__hwi = 0; $__hwd = 0; $__hvy = @{$__hvv}; $__hvx = $__hvy - $__hwc + 1; for ($__hvz = 0; $__hvz < $__hvx; $__hvz++) { $__hwe = 0; for ($__hwa = 1; $__hwa < $__hwl; $__hwa++) { $__hwh = 0; $__hwg = 0; for ($__hwb = 0; $__hwb < $__hwc; $__hwb++) { $__hwf = $__hvv->[$__hvz + $__hwb]->[$__hwa]; if ($__hwf != $__hwg && $__hwb > 0) { $__hwh = 1; last; } else { $__hwg = $__hwf; } } if (!$__hwh) { $__hwe++; } } if ($__hwe > $__hwd) { $__hwd = $__hwe; $__hwi = $__hvz; } } $__hwj = $__hwi + $__hwc; my @__hwm = (); for ($__hvz = 0; $__hvz < $__hvy; $__hvz++) { if ($__hvz >= $__hwi && $__hvz < $__hwj) { push @__hwk, $__hvv->[$__hvz]->[0]; } else { push @__hwm, $__hvv->[$__hvz]; } } $__hvv = \@__hwm; } my $__hwn = @{$__hvv}; for ($__hvz = 0; $__hvz < $__hwn; $__hvz++) { push @__hwk, $__hvv->[$__hvz]->[0]; } return \@__hwk; } sub _cka { my($__hya, $__hyb, $__hyc) = @_; my $__hwr = 0; my $__hws = 0; my $__hwt = []; my $__hwu = _cjt($__hyb, $__hya); my $__hwv = 0; my $__hww = 0; my $__hwx = 0; my $__hwy = 0; my $__hwz = 0; my $__hxa = 0; if ($authlib8_4_8::_bzy) { my $__hxb = $__hya->{'_apx'} * $__hya->{'_apy'}; my %__hxc = (); my %__hxd = (); my @__hxe = (); $__hwv = 1; $__hxa = 1; for ($__hwy = 2; $__hwy <= $__hxb; $__hwy++) { if ($__hxa == 1) { push @__hxe, $__hwy; $__hxa = 2; } elsif ($__hxa == 2) { $__hxc{$__hwy} = 1; $__hxa = 3; } elsif ($__hxa == 3) { $__hxd{$__hwy} = 1; $__hxa = 1; } } $__hwz = \@__hxe; $__hww = \%__hxc; $__hwx = \%__hxd; } else { ($__hwv, $__hww, $__hwx) = _ckc($__hya, $__hyb); $__hwz = _ckg($__hya, $__hyb); } my $__hxf = _cjg($__hwv, $__hwz, $__hww, $__hwx, $__hya); if ($__hyc =~ m/_Calibration(\d+)/i) { $__hwr = $1; } if ($__hwr <= $__hxf) { my $__hxg = $__hya->{'_aoz'}; my $__hxh = authlib8_4_8::_bss($__hxg); my $__hxi = acbclib8_4_8::_clr($__hya, $__hxh); if ($__hwr == 1 && $authlib8_4_8::_bzy == 0) { if ($__hxi) { my $__hxj = _ckb($__hww); $__hxj = [reverse @{$__hxj}]; my $__hxk = _ckb($__hwx); my @__hxl = ($__hwz, $__hxj, $__hxk); my @__hxm = (); my $__hwy = 0; while (1) { if (@__hxl == 1) { if (@{$__hxl[0]} > 0) { push @__hxm, @{$__hxl[0]}; } last; } elsif (@{$__hxl[$__hwy]} > 0) { push(@__hxm, shift(@{$__hxl[$__hwy]})); } else { splice(@__hxl, $__hwy, 1); } $__hwy = ($__hwy + 1) % @__hxl; } if (@__hxm > 0) { $__hws = $__hxm[0]; } if ($__hws > 0) { $__hwt = _cju([$__hws], $__hyb, $__hya); } else { $__hwt = []; } } else { my $__hxn = 0; my $__hxo = ""; my @__hxp = (); my $__hxq = ""; my $__hxr = 0; my $__hxs = ""; push @__hxp, 0; my $__hxt = "sys_ACBC_" . $__hyb . "_byo"; my $__hxu = authlib8_4_8::_bnc($__hxt); if ($__hxu) { my @__hxv = split(',', $__hxu); if (@__hxv == 0) { authlib8_4_8::_bqa(287, "", "Reading ACBC BYO error.", ""); } push (@__hxp, @__hxv); } else { if (exists $__hya->{'_aqk'}) { $__hxr = $__hya->{'_aqk'}->{'_aql'}; } foreach $__hxn (@{$__hwu}) { $__hxo = $__hyb . "_BYO_" . $__hxn; $__hxs = authlib8_4_8::_bnc($__hxo); if ($__hxs) { push @__hxp, $__hxs; } elsif ($__hxn == $__hxr) { $__hxq = $__hyb . "_BYO_" . $__hxr; $__hxs = authlib8_4_8::_bnc($__hxq); if ($__hxs) { push @__hxp, $__hxs; } } else { push @__hxp, ""; } } } $__hwt = [\@__hxp]; $__hws = 0; } } else { if ($__hwr == $__hxf) { $__hws = $__hwv; if ($__hws == 0) { my $__hxw = $__hyb . "_Calibration"; my $__hxx = 1; my $__hxy = $__hxw . $__hxx; $__hws = authlib8_4_8::_bnc($__hxy . '_shown'); delete $__hww->{0}; while ($__hws ne "" && $__hxx < $__hwr) { delete $__hww->{$__hws}; $__hxx++; $__hxy = $__hxw . $__hxx; $__hws = authlib8_4_8::_bnc($__hxy . '_shown'); } my $__hxj = _ckb($__hww); if (@{$__hxj} > 0) { $__hws = $__hxj->[-1]; } } } else { my %__hxz = (); my $__hxw = $__hyb . "_Calibration"; my $__hxx = 1; my $__hxy = $__hxw . $__hxx; $__hws = authlib8_4_8::_bnc($__hxy . '_shown'); while ($__hws ne "" && $__hxx < $__hwr) { $__hxz{$__hws} = 1; $__hxx++; $__hxy = $__hxw . $__hxx; $__hws = authlib8_4_8::_bnc($__hxy . '_shown'); } my $__hxj = _ckb($__hww); $__hxj = [reverse @{$__hxj}]; my $__hxk = _ckb($__hwx); my @__hxl = ($__hwz, $__hxj, $__hxk); my @__hxm = (); my $__hwy = 0; while (1) { if (@__hxl == 1) { if (@{$__hxl[0]} > 0) { push @__hxm, @{$__hxl[0]}; } last; } elsif (@{$__hxl[$__hwy]} > 0) { push(@__hxm, shift(@{$__hxl[$__hwy]})); } else { splice(@__hxl, $__hwy, 1); } $__hwy = ($__hwy + 1) % @__hxl; } foreach $__hwy (@__hxm) { if (!$__hxz{$__hwy}) { $__hws = $__hwy; last; } } } if ($__hws > 0) { $__hwt = _cju([$__hws], $__hyb, $__hya); } else { $__hwt = []; } } } return ($__hwu, $__hwt, $__hws, $__hxf); } sub _ckb { my ($__hyg) = @_; my %__hyd = reverse %{$__hyg}; my @__hye = (); foreach my $__hyf (sort {$a <=> $b } keys %__hyd) { push(@__hye, $__hyd{$__hyf}); } return \@__hye; } sub _ckc { my($__hyw, $__hyx) = @_; my $__hyh = 1; my $__hyi = $__hyx . "_ChoiceTask"; my $__hyj = ""; my $__hyk = ""; my $__hyl = 0; my $__hym = 0; my $__hyn = -1; my %__hyo = (); my %__hyp = (); my @__hyq = (); my $__hyr = 1; my $__hys = 1; my $__hyt = 0; $__hyk = authlib8_4_8::_bnc($__hyi . $__hyh . '_shown'); while ($__hyk) { $__hyj = authlib8_4_8::_bnc($__hyi . $__hyh); @__hyq = split(",", $__hyk); $__hyl = splice(@__hyq, $__hyj - 1, 1); $__hyo{$__hyl} = $__hyr; $__hyr++; $__hyn = $__hyl; foreach $__hym (@__hyq) { $__hyp{$__hym} = $__hys; $__hys++; } $__hyh++; $__hyk = authlib8_4_8::_bnc($__hyi . $__hyh . '_shown'); } if ($authlib8_4_8::_bzy) { my $__hyu = authlib8_4_8::_bqv($__hyx); my $__hyv = $__hyu * $__hyw->{'_aqb'}; $__hyn = 1; for ($__hyt = 2; $__hyt < $__hyv; $__hyt += $__hyv) { $__hyo{$__hyt} = $__hyr; $__hyr++; $__hyp{$__hyt + 1} = $__hys; $__hys++; if ($__hyv == 3) { $__hyp{$__hyt + 2} = $__hys; $__hys++; } } } foreach $__hyl (%__hyo) { if (exists $__hyp{$__hyl}) { delete $__hyp{$__hyl}; } } delete $__hyo{$__hyn}; return ($__hyn, \%__hyo, \%__hyp); } sub _ckd { my($__hzb, $__hzc) = @_; my $__hyy = @{$__hzb}; my $__hyz = 0; my $__hza = 0; for ($__hza = 0; $__hza < $__hyy; $__hza++) { if ($__hzb->[$__hza] == $__hzc) { $__hyz = 1; } } return $__hyz; } sub _cke { my($__hze, $__hzf, $__hzg) = @_; my $__hzd = _ckh($__hze, $__hzf, 1, 0, 0, $__hzg); return $__hzd; } sub _ckf { my($__hzj, $__hzk) = @_; my $__hzh = $__hzj->{'_apx'}; my $__hzi = _ckh($__hzj, $__hzk, 0, 1, 0, $__hzh); return $__hzi; } sub _ckg { my($__hzn, $__hzo) = @_; my $__hzl = $__hzn->{'_apx'}; my $__hzm = _ckh($__hzn, $__hzo, 0, 0, 1, $__hzl); return $__hzm; } sub _ckh { my($__iab, $__iac, $__iad, $__iae, $__iaf, $__iag) = @_; my $__hzp = 0; my $__hzq = 0; my $__hzr = $__iab->{'_apy'}; my $__hzs = ""; my $__hzt = 0; my $__hzu = 0; my %__hzv = (); my @__hzw = (); my @__hzx = (); my $__hzy = ""; for ($__hzp = 1; $__hzp <= $__iag; $__hzp++) { my $__hzz = authlib8_4_8::_bnc($__iac . '_Screener' . $__hzp . '_shown'); my @__iaa = (); if ($__hzz) { @__iaa = split(',', $__hzz); } if (@__iaa == 0 && $authlib8_4_8::_bzy == 0) { next; } for ($__hzq = 1; $__hzq <= $__hzr; $__hzq++) { $__hzs = $__iac . '_Screener' . $__hzp . '_' . $__hzq; $__hzy = authlib8_4_8::_bnc($__hzs); if ($__hzy ne "") { $__hzt = $__hzy; $__hzu = $__iaa[$__hzq - 1]; if ($__iad) { $__hzv{$__hzu} = 1; } elsif ($__iae) { if ($__hzt) { push @__hzw, $__hzu; } } elsif ($__iaf) { if (!$__hzt) { push @__hzx, $__hzu; } } } elsif ($authlib8_4_8::_bzy) { if ($__hzp < $__iag) { $__hzu = $__hzq + (($__hzp - 1) * $__hzr); if ($__iad) { $__hzv{$__hzu} = 1; } elsif ($__iae) { push @__hzw, $__hzu; } elsif ($__iaf) { push @__hzx, $__hzu; } } } } } if ($__iad) { return \%__hzv; } elsif ($__iae) { return \@__hzw; } elsif ($__iaf) { return \@__hzx; } } sub _cki { my($__iay, $__iaz, $__iba, $__ibb) = @_; my $__iah = $__iaz->{'_apy'}; my $__iai = @{$__iay}; my $__iaj = 2; my $__iak = $__iai - ($__iah * $__iaj); my $__ial = 0; if ($__iak) { my $__iam = 0; my @__ian = (); my $__iao = 0; my $__iap = 0; my $__iaq = 0; if (exists $__iaz->{'_aqk'}) { $__iaq = $__iaz->{'_aqk'}->{'_aql'}; } for ($__iam = 0; $__iam < $__iak; $__iam++) { $__iao = _ckj($__iam, $__iah, $__iay, $__iba, $__iaq); $__iap = _ckj($__iam + $__iah, $__iah, $__iay, $__iba, $__iaq); push @__ian, [$__iao * $__iap, $__iam]; } @__ian = sort{$b->[0] <=> $a->[0]} @__ian; my @__iar = (); my $__ias = $__ian[0]->[1]; my $__iat = $__ias + ($__iah * $__iaj); my %__iau = (); my @__iav = (); if ($__ias) { my $__iaw = 1; my $__iax = 0; if ($__iat > $__iai) { $__iat = $__iai; } for ($__iam = $__ias; $__iam < $__iat; $__iam++) { $__iax = $__iay->[$__iam]; if (defined $__ibb->[$__iax->[0] - 1]) { push @__iav, $__ibb->[$__iax->[0] - 1]; } $__iau{$__iax->[0] - 1} = $__iaw - 1 if ($__iax->[0] != $__iaw); $__iax->[0] = $__iaw; $__iaw++; push @__iar, $__iax; } for ($__iam = 0; $__iam < $__ias; $__iam++) { $__iax = $__iay->[$__iam]; if (defined $__ibb->[$__iax->[0] - 1]) { push @__iav, $__ibb->[$__iax->[0] - 1]; } $__iau{$__iax->[0] - 1} = $__iaw - 1 if ($__iax->[0] != $__iaw); $__iax->[0] = $__iaw; $__iaw++; push @__iar, $__iax; } for ($__iam = $__iat; $__iam < $__iai; $__iam++) { $__iax = $__iay->[$__iam]; if (defined $__ibb->[$__iax->[0] - 1]) { push @__iav, $__ibb->[$__iax->[0] - 1]; } $__iau{$__iax->[0] - 1} = $__iaw - 1 if ($__iax->[0] != $__iaw); $__iax->[0] = $__iaw; $__iaw++; push @__iar, $__iax; } $__ial = \@__iar; for ($__iam = 0; $__iam < @__iav; $__iam++) { $__ibb->[$__iam] = $__iav[$__iam]; } } else { $__ial = $__iay; } } else { $__ial = $__iay; } return $__ial; } sub _ckj { my($__ibk, $__ibl, $__ibm, $__ibn, $__ibo) = @_; my $__ibc = 0; my $__ibd = 0; my $__ibe = 0; my %__ibf = (); my $__ibg = 0; my $__ibh = 1; my $__ibi = $__ibk + $__ibl; my $__ibj = @{$__ibn}; for ($__ibd = 0; $__ibd < $__ibj; $__ibd++) { if ($__ibn->[$__ibd] != $__ibo) { %__ibf = (); for ($__ibe = $__ibk; $__ibe < $__ibi; $__ibe++) { $__ibf{$__ibm->[$__ibe]->[$__ibd + 1]} = 1; } $__ibg = keys(%__ibf) - .9; if ($__ibg < 0) { $__ibg = 0; } $__ibh *= $__ibg; } } return $__ibh; } sub _ckk { my($__ibv, $__ibw, $__ibx, $__iby) = @_; my $__ibp = 1; if (keys %{$__ibv}) { my $__ibq = @{$__ibx}; my $__ibr = 0; my $__ibs = 0; my $__ibt = 0; my @__ibu = (); for ($__ibt = 0; $__ibt < $__ibq; $__ibt++) { $__ibr = $__ibx->[$__ibt]; $__ibs = $__ibw->[$__ibt + 1]; if (exists $__ibv->{$__ibr}) { if ($__ibr == $__iby) { @__ibu = keys %{$__ibv->{$__ibr}}; if ($__ibs > $__ibu[0]) { $__ibp = 0; last; } } elsif (exists $__ibv->{$__ibr}->{$__ibs}) { $__ibp = 0; last; } } } } return $__ibp; } sub _ckl { my($__icr, $__ics, $__ict) = @_; my %__ibz = (); my $__ica = 0; my $__icb = 0; my $__icc = $__icr->{'_apz'}; my $__icd = ""; my $__ice = ""; my $__icf = 0; my $__icg = 0; my $__ich = 0; my $__ici = 0; my $__icj = 0; my $__ick = 0; my $__icl = 0; my $__icm = ""; if (exists($authlib8_4_8::_bwq{$__ict})) { $__ici = $authlib8_4_8::_bwq{$__ict}; $__icj = $__ici->{'_v'}; } for ($__ica = 1; $__ica <= $__icc; $__ica++) { $__icd = $__ics . "_MustHave" . $__ica; $__ice = authlib8_4_8::_bnc($__icd); if ($__ice ne "") { $__ici = $authlib8_4_8::_bwq{$__icd}; $__ick = $__ici->{'_v'}; if ($__ick < $__icj) { $__icd .= "_shown"; $__icm = authlib8_4_8::_bnc($__icd); $__icl = 0; if ($__icm) { $__icl = eval($__icm); if ($@) { authlib8_4_8::_bqa(292, "", "ACBC Error. Error reading ACBC rules shown list.", $@); } } if ($__ice > 0 && $__icl) { ($__icf, $__icg, $__ich) = @{$__icl->[$__ice - 1]}; _ckm(\%__ibz, $__icr, $__icf, $__icg, $__ich); } } } } my $__icn = $__icr->{'_aqa'}; my $__ico = ""; my $__icp = 0; my $__icq = ""; for ($__ica = 1; $__ica <= $__icn; $__ica++) { $__ico = $__ics . "_Unacceptable" . $__ica; $__ice = authlib8_4_8::_bnc($__ico); if ($__ice ne "") { $__ici = $authlib8_4_8::_bwq{$__ico}; $__icp = $__ici->{'_v'}; if ($__icp < $__icj) { $__ico .= '_shown'; $__icq = authlib8_4_8::_bnc($__ico); $__icl = 0; if ($__icq) { $__icl = eval $__icq; if ($@) { authlib8_4_8::_bqa(293, "", "ACBC Error. Error reading ACBC rules shown list.", $@); } } if ($__ice > 0 && $__icl) { ($__icf, $__icg) = @{$__icl->[$__ice - 1]}; _ckn(\%__ibz, $__icr, $__icf, $__icg); } } } } return \%__ibz; } sub _ckm { my($__ida, $__idb, $__idc, $__idd, $__ide) = @_; my $__icu = 0; my $__icv = $__idb->{'_apa'}; my $__icw = $__icv->{$__idc}->{'_app'}; if (exists $__ida->{$__idc}) { $__icu = $__ida->{$__idc}; } else { $__icu = {}; } my $__icx = authlib8_4_8::_bsw($__icv->{$__idc}->{'_apo'}); my $__icy = @{$__icx}; my $__icz = 0; if (($__ide == 1 && $__icw == 1) || ($__ide == 2 && $__icw == 2)) { for ($__icz = $__idd - 1; $__icz > 0; $__icz--) { $__icu->{$__icz} = 1; } } elsif (($__ide == 2 && $__icw == 1) || ($__ide == 1 && $__icw == 2)) { for ($__icz = ($__idd + 1); $__icz <= $__icy; $__icz++) { $__icu->{$__icz} = 1; } } else { for ($__icz = 1; $__icz <= $__icy; $__icz++) { if ($__icz != $__idd) { $__icu->{$__icz} = 1; } } } $__ida->{$__idc} = $__icu; } sub _ckn { my($__idl, $__idm, $__idn, $__ido) = @_; my $__idf = 0; my $__idg = $__idm->{'_apa'}; if (exists $__idl->{$__idn}) { $__idf = $__idl->{$__idn}; } else { $__idf = {}; } if (exists $__idg->{$__idn}) { my $__idh = $__idg->{$__idn}->{'_apq'}; my $__idi = authlib8_4_8::_bsw($__idg->{$__idn}->{'_apo'}); my $__idj = @{$__idi}; my $__idk = 0; if ($__idh == 1) { for ($__idk = $__ido; $__idk > 0; $__idk--) { $__idf->{$__idk} = 1; } } elsif ($__idh == 2) { for ($__idk = $__ido; $__idk <= $__idj; $__idk++) { $__idf->{$__idk} = 1; } } else { $__idf->{$__ido} = 1; } } else { $__idf->{$__ido} = 1; } $__idl->{$__idn} = $__idf; } sub _cgq { my($__ilb, $__ilc, $__ild, $__ile, $__ilf, $__ilg, $__ilh, $__ili, $__ilj, $__ilk, $__ill) = @_; my @__idp = (); my @__idq = (); my $__idr = 1; my @__ids = (); my $__idt = $authlib8_4_8::_bzi{"hid_respnum"}; my $__idu = $__idt + $__ili * 47; $acbclib8_4_8::_cmi = 1; my $__idv = @{$__ile}; my $__idw = 0; my $__idx = 0; my %__idy = (); my %__idz = (); my $__iea = .5; my $__ieb = 2000; my $__iec = 1000; my $__ied = 20000; if ($authlib8_4_8::_bzy) { $__iec = 20; $__ieb = 100; $__ied = 200; } my $__iee = undef; my $__ief = undef; my $__ieg = undef; my @__ieh = (); my $__iei = undef; if ($authlib8_4_8::_bzy) { @__ieh = (1) x @{$__ile}; } else { $__ieg = 'sys_ACBC_' . $__ilc . '_byo'; my $__iej = authlib8_4_8::_bnc($__ieg); if ($__iej) { @__ieh = split(',', $__iej); if (@__ieh == 0) { authlib8_4_8::_bqa(294, "", "Reading ACBC BYO Error.", ""); } } elsif ($__ilk) { @__ieh = @{$__ilk}; } } my @__iek = @__ieh; my @__iel = (0) x $__idv; my $__iem = 0; my @__ien = (); my $__ieo = 0; my %__iep = (); my @__ieq = (); my $__ier = 0; my $__ies = $__ilb->{'_apa'}; my $__iet = ""; my $__ieu = 0; my $__iev = 0; my $__iew = 0; my $__iex = 4; my %__iey = (); my $__iez = 0; my $__ifa = -1; my @__ifb = (); my %__ifc = (); my @__ifd = (); my $__ife = 0; my $__iff = 0; my @__ifg = (); my $__ifh = 0; my $__ifi = 0; my $__ifj = 0; my $__ifk = 0; my $__ifl = 0; if (exists $__ilb->{'_aqk'}) { my $__ifm = $__ilb->{'_aqk'}; $__iew = $__ifm->{'_aql'}; $__idy{$__iew} = 1; my $__ifn = 0; if (exists $__ifm->{'_aqt'}) { $__ifn = $__ifm->{'_aqt'} / 100; } my $__ifo = 0; if (exists $__ifm->{'_aqs'}) { $__ifo = $__ifm->{'_aqs'} / 100; } if ($__ifn || $__ifo) { my $__ifp = $__ifo + $__ifn; my $__ifq = $__ifp / $__iex; my $__ifr = $__ifn * -1; for ($__idw = 0; $__idw < $__iex; $__idw++) { push @__ifg, [$__ifr, $__ifr + $__ifq]; $__ifr = $__ifr + $__ifq; } } if (exists $__ifm->{'_aqr'}) { $__ifh = $__ifm->{'_aqr'}; } if (exists $__ifm->{'_aqu'}) { $__ifi = $__ifm->{'_aqu'}; } if (exists $__ifm->{'_aqv'}) { $__ifj = $__ifm->{'_aqv'}; } if (exists $__ifm->{'_aqo'}) { $__ifk = $__ifm->{'_aqo'}; } } my $__ifs = "sys_ACBC_" . $__ilc . "_levelCnt" . $__ili; my $__ift = 0; my $__ifu = authlib8_4_8::_bnc($__ifs); if ($__ifu) { my $__ifv = eval($__ifu); if ($@) { authlib8_4_8::_bqa(169, "", "Reading ACBC level count array error.", $@); } @__ifb = @{$__ifv}; $__ift = 1; } my $__ifw = "sys_ACBC_" . $__ilc . "_rndArray" . $__ili; my $__ifx = 0; my $__ify = authlib8_4_8::_bnc($__ifw); if ($__ify) { my $__ifz = eval($__ify); if ($@) { authlib8_4_8::_bqa(170, "", "Reading ACBC random array.", $@); } @__ieq = @{$__ifz}; my $__iga = @__ieq; $__ier = $__ieq[$__iga - 1]; $__ifx = 1; } my $__igb = 0; my $__igc = 0; my $__igd = 0; for ($__idw = 0; $__idw < $__idv; $__idw++) { $__iev = 0; $__iee = $__ile->[$__idw]; $__iey{$__iee} = $__idw; if ($__iee == $__iew) { push(@__idp, [$__idw, 2]); $__iev = @__ifg; $__iez = 1; $__ifa = $__idw; push @__ifd, 0; push(@__ien, $__iem); $__iel[$__idw] = $__iev; $__ieo += $__iev; $__iem += ($__iev - 1); if (not exists $__iep{$__iev}) { $__iep{$__iev} = acbclib8_4_8::_cma($__iev); } } else { if (exists $__ies->{$__iee}) { if ($__ies->{$__iee}->{'_apq'}) { push(@__idp, [$__idw, $__ies->{$__iee}->{'_apq'}]); } else { push(@__idq, $__idw); } if ($__ies->{$__iee}->{'_apt'} || $__ies->{$__iee}->{'_api'}) { $__igd = 1; } $__iet = $__ies->{$__iee}->{'_apo'}; $__ieu = authlib8_4_8::_bss($__iet); $__iev = 0; if($__ieu) { $__iev = @{$__ieu}; } if ($__iev == 0) { authlib8_4_8::_bqa(171, "ACBC Error.", "ACBC Error. Attribute #" . $__iee . " has no levels.", $@); } $__ifc{$__iee} = $__ieu; push(@__ien, $__iem); $__iel[$__idw] = $__iev; $__ieo += $__iev; $__iem += ($__iev - 1); if (not exists $__iep{$__iev}) { $__iep{$__iev} = acbclib8_4_8::_cma($__iev); } $__ife = authlib8_4_8::_bsr($__iet); if ($__ife && exists($__ife->{'_gt'})) { my %__ige = (); for ($__idx = 0; $__idx < $__iev; $__idx++) { $__iff = $__ieu->[$__idx]->{'_bcm'}; $__ige{$__iff} = $__idx; if (exists $__ieu->[$__idx]->{'_axu'}) { authlib8_4_8::_bqa(172, "ACBC Error.", "ACBC Error. Attribute #" . $__iee . " level #" . $__iff . " is an Exclusive (\"None of the Above\") list member.", $@); } } push @__ifd, \%__ige; } else { push @__ifd, 0; } if (exists $__ies->{$__iee}->{'_apr'}) { $__idy{$__iee} = 1; $__ifl++; } } else { next; } } if ($__ifx) { $__igc = $__ieq[$__idw]; } else { $__igc = _cln($__iev); push @__ieq, $__igc; } if (!$__ift) { push @__ifb, [(0) x $__iev]; } if ($__iee != $__iew) { if (exists $__ilh->{$__iee}) { if ((keys %{$__ilh->{$__iee}}) >= ($__iev - 1)) { $__idy{$__iee} = 1; $__idz{$__iee} = 1; } } if ($__iev <= 1) { $__idy{$__iee} = 1; $__idz{$__iee} = 1; } $__igb = _ckw($__ilc, $__ilh, $__iee, $__idw, \@__ieh, $__ies->{$__iee}, $__ieu, $__idt, $__igc, $__iew, $__idu); if ($__igb) { return (0, 0, 0, 0, 0, 0); } } } if ($__igd) { if ($authlib8_4_8::_bzy) { for ($__idw = 0; $__idw < $__idv; $__idw++) { $__iee = $__ile->[$__idw]; if ($__iee != $__iew) { _ckr($__ies, \%__iey, \@__ifd, $__iee, $__iew, \@__iek, \@__ieq, \%__ifc, \@__ifb, $__ilh, $__idu, \@__ieh, 0, 0); } } @__iek = @__ieh; } else { for ($__idw = 0; $__idw < $__idv; $__idw++) { $__iee = $__ile->[$__idw]; if ($__iee != $__iew && $__iek[$__idw] != $__ieh[$__idw]) { _ckr($__ies, \%__iey, \@__ifd, $__iee, $__iew, \@__iek, \@__ieq, \%__ifc, \@__ifb, $__ilh, $__idu, \@__ieh, 0, 0); } } } } if ($__ift) { _cku(\@__ifb, \@__iek, $__ile, $__ies, \@__ifd, $__iea, 1); } my @__igf = (); my $__igg = "sys_ACBC_" . $__ilc . "_attCnt" . $__ili; my $__igh = authlib8_4_8::_bnc($__igg); if ($__igh) { my $__igi = eval($__igh); if ($@) { authlib8_4_8::_bqa(173, "", "Reading ACBC attribute count array error.", $@); } @__igf = @{$__igi}; } else { @__igf = (0) x $__idv; } if (exists $__ilb->{'_aqk'} && !$__iez) { $__iew = 0; authlib8_4_8::_bpz($__ilc, "Your ACBC settings indicate that one of your attributes is price, but the price attribute cannot be found."); } my $__igj = 0; my $__igk = 0; my $__igl = keys %__idy; my $__igm = $__idv - $__igl; if ($__igm < 1 && $__ifl == 0) { return (0, 0, 0, 0, 0, 0); } my $__ign = $__ilb->{'_apu'}; if ($__ign > $__igm) { $__ign = $__igm; } my $__igo = $__idv; if ($__iew) { $__igo--; } if ($__ifl) { $__igo -= $__ifl; } $__igo = authlib8_4_8::_brm($__igo / 2); my $__igp = $__ilb->{'_apv'}; if ($__igp > $__igo) { $__igp = $__igo; } if ($__igp > $__igm) { $__igp = $__igm; } if ($__igm == 1 || $__igo == 1) { $__ign = 0; } if ($__ign > $__igp) { $__ign = $__igp; } my $__igq = _cln((($__igp - $__ign) + 1)); if (!$__ifx) { $__ier = _cln($__idv); push @__ieq, $__ier; } my @__igr = (); my $__igs = $__ili; while ($__iew && $__igs > 0) { my $__igt = "sys_ACBC_" . $__ilc . "_pricelevels" . $__igs; my $__igu = authlib8_4_8::_bnc($__igt); if ($__igu) { my $__igv = eval($__igu); if ($@) { authlib8_4_8::_bqa(284, "", "Reading ACBC price level array error.", $@); } @__igr = (@{$__igv}, @__igr); } $__igs--; } my @__igw = (); my $__igx = exists $__ilb->{'_aqc'} ? 1 : 0; if (@__idp == 0) { $__igx = 0; } my @__igy = (); my @__igz = (); foreach my $__iha (@{$__ilg}) { my @__ihb = @{authlib8_4_8::_bsp($__iha)}; if ($__iew) { push(@__igy, $__ihb[$__ifa + 1]); if (defined $__igr[$__ihb[0] - 1]) { $__ihb[$__ifa + 1] = $__igr[$__ihb[0] - 1]; } else { $__ihb[$__ifa + 1] = 0; } } shift(@__ihb); push(@__igw, \@__ihb); } my %__ihc = (); $__ihc{"original"} = { "AttTwiddleCntArray" => authlib8_4_8::_bsp(\@__igf), "blnAvoidDominated" => $__igx, "intConceptNumber" => $__ilf, "LevelCountArray" => authlib8_4_8::_bsp(\@__ifb), "TaskPriceLevels" => authlib8_4_8::_bsp(\@__igr), "TaskPrices" => authlib8_4_8::_bsp(\@__igy), "Tasks" => authlib8_4_8::_bsp(\@__igw), }; $__ihc{"max"}->{"CurrentEfficiency"} = 0; $__ihc{"max"}->{"intRedealCnt"} = -1; my @__ihd = (); for ($__idw = 0; $__idw < $__idv; $__idw++) { push (@__ihd, _cla($__iek[$__idw], $__ifd[$__idw])); } my $__ihe = 0; if (exists $__ilb->{'_aqd'}) { $__ihe = !$__ill; } my @__ihf = (); my @__ihg = (); my $__ihh = 5; my $__ihi = undef; my $__ihj = 0; if (exists $__ilh->{$__iew}) { my @__ihk = keys %{$__ilh->{$__iew}}; $__ihj = $__ihk[0]; } if (exists $authlib8_4_8::_byr->{$__ilc . "_design_deals"} && defined $authlib8_4_8::_byr->{$__ilc . "_design_deals"}) { $__ihh = $authlib8_4_8::_byr->{$__ilc . "_design_deals"}; } else { if ($authlib8_4_8::_bzy == 0 && $__ili == 0) { $__ihh = 20; } eval { require("Time/HiRes.pm"); $__ihi = [Time::HiRes::gettimeofday()]; }; if ($@) { authlib8_4_8::_bqa(0, "Unable to load Time/HiRes.pm<br/><br/>", $@, ""); } } my $__ihl = 0; my %__ihm = (); my @__ihn = (); my $__iho = 0; my $__ihp = 0; my $__ihq = 0; my $__ihr = 0; my $__ihs = 0; my $__iht = 0; my $__ihu = 0; my $__ihv = 0; my $__ihw = 1; my $__ihx = 0; my $__ihy = 0; my $__ihz = 0; my $__iia = 0; my $__iib = 0; my $__iic = 0; my $__iid = 1; my $__iie = 0; my $__iif = 0; my $__iig = 0; my $__ifq = 0; my $__iih = 0; my $__iii = 0; my $__iij = 0; my $__iik = 0; my $__iil = 0; my $__iim = $__ilb->{'_apw'}; my $__iin = 0; my $__iio = 0; my $__iip = 0; my $__iiq = {}; my $__iir = 0; my $__iis = 0; my $__iit = 0; my $__iiu = 0; my $__iiv = 0; my $__iiw = 0; my $__iix = 0; my $__iiy = 0; for ($__iix = 0; $__iix < $__ihh && !$__iiy; $__iix++) { @__ihf = (); $__igj = 0; @__ihg = (); $__ihl = 0; %__ihm = (); $__iho = 0; $__ihp = 0; $__ihq = 0; $__ihr = 0; $__ihs = 0; $__iht = 0; $__ihu = 0; $__ihv = 0; $__ihw = 1; $__ihx = 0; $__ihy = 0; $__ihz = 0; $__iia = 0; $__iib = 0; $__iic = 0; $__iid = 1; $__iie = 0; $__iif = 0; $__iig = 0; $__ifq = 0; $__iih = 0; $__iii = 0; $__iij = 0; $__iik = 0; $__iil = 0; $__iim = $__ilb->{'_apw'}; $__iin = 0; $__iio = 0; $__iip = 0; @__igf = @{authlib8_4_8::_bsp($__ihc{"original"}->{"AttTwiddleCntArray"})}; $__ilf = $__ihc{"original"}->{"intConceptNumber"}; @__ifb = @{authlib8_4_8::_bsp($__ihc{"original"}->{"LevelCountArray"})}; $__iiq = {}; @__igy = @{authlib8_4_8::_bsp($__ihc{"original"}->{"TaskPrices"})}; while ($__igj < $__ild) { $__ihw = 1; $__iik = 0; $__iih = 0; while ($__ihw) { $__ihx = 0; if ($__igx && $__iik == $__iec) { $__igx = 0; authlib8_4_8::_bpz($__ilc, "Cannot create a new concept after " . $__iec . " iterations. Turning off avoid dominated concepts code."); } elsif ($__iik == $__ieb) { $__iid = 0; authlib8_4_8::_bpz($__ilc, "Cannot create a new concept after " . $__ieb . " iterations. Turning off balancing code."); } elsif ($__iik >= $__ied) { if ($authlib8_4_8::_bzy && $__idr) { $__iik = 0; $__idr = 0; } else { authlib8_4_8::_bpz($__ilc, "Cannot create a new concept after " . $__ied . " iterations. Proceeding with " . $__igj . " concepts."); $__ihp = 1; last; } } @__ids = @__ieh; $__ihs = _chc($__igq, $__idu) + $__ign; if ($__igd && $__ihs == 0 && $__igm == 1) { my @__iiz = (); for ($__idw = 0; $__idw < $__idv; $__idw++) { push(@__iiz, $__ile->[$__idw]) if($__ids[$__idw] != 0); } if (@__iiz == 1 && !$__idy{$__iiz[0]}) { $__ihs = 1; } } elsif ($__ihs == 0 && $__ifl == 0 && $__igm > 0) { $__ihs = 1; } $__ihl = 0; %__ihm = (); @__ihn = (); $__iho = 0; $__ihy = 0; $__ihz = 0; $__iia = 0; $__iib = 0; $__iic = 0; while ($__ihl < $__ihs) { my $__ija = _chc($__ier, $__idu); $__ihq = $__ile->[$__ija]; if (!exists $__idy{$__ihq} && !exists $__ihm{$__ihq} && $__ieh[$__iey{$__ihq}] != 0) { $__ihm{$__ihq} = 1; push @__ihn, $__ihq; $__ihl++; } elsif ($__iho > ($__idv * 2)) { if ($__ihl > 0) { if (!$__iil) { authlib8_4_8::_bpz($__ilc, "Could not create a new concept by altering " . $__ihs . " attributes. Proceeding with by modifying fewer attributes from the BYO selection (now is " . $__ihl . ")."); $__iil = 1; } } elsif ($__ifl == 0) { authlib8_4_8::_bpz($__ilc, "Was not able to alter any attributes in order to create a new concept. Proceeding with " . $__igj . " concepts."); $__ihp = 1; } last; } $__iho++; } if ($__ihp) { last; } if (@__ihn) { if ($__iid) { _clc(\@__igf, \@__ihn, \%__idy, $__ile, \%__iey, \@__iek); } for ($__idw = 0; $__idw < @__ihn; $__idw++) { $__ihq = $__ihn[$__idw]; $__ihr = $__iey{$__ihq}; $__iht = $__ids[$__ihr]; $__ieu = $__ifc{$__ihq}; $__iev = @{$__ieu}; $__ihv = _ckx($__ihq, $__iev, $__ieq[$__ihr], $__ieu, $__iht, $__ilh, $__iew, $__idu); if ($__ihv) { $__ids[$__ihr] = $__ihv; } if ($__iid) { ($__ihy, $__ihz) = _ckz($__ifb[$__ihr], $__ifc{$__ihq}, $__iht, $__ihq, $__ilh, $__iew); if (($__ihz > $__iia) || ($__iia == 0)) { $__iia = $__ihz; $__iib = $__ihy; $__iic = $__ihr; } } } if ($__iid) { $__ids[$__iic] = $__iib; $__ieq[$__iic]->{"i"}--; } } foreach $__iee (sort {$a <=> $b} keys %__idy) { if (!exists $__idz{$__iee} && $__ieh[$__iey{$__iee}] != 0) { if ($__iee != $__iew) { if (exists $__iey{$__iee}) { $__ihr = $__iey{$__iee}; $__ieu = $__ifc{$__iee}; $__iev = @{$__ieu}; $__ihv = _ckx($__iee, $__iev, $__ieq[$__ihr], $__ieu, 0, $__ilh, $__iew, $__idu); if ($__ihv) { $__ids[$__ihr] = $__ihv; push(@__ihn, $__iee); } } } } } if ($__igd) { foreach $__iee (@__ihn) { _ckr($__ies, \%__iey, \@__ifd, $__iee, $__iew, \@__ieh, \@__ieq, \%__ifc, \@__ifb, $__ilh, $__idu, \@__ids, 0, 0); } } if ($__idr) { if (exists $__ilb->{'_aqj'}) { $__ihx = _chg(\@__ids, $__ilb->{'_aqj'}, \%__iey, 0); } if ($__ihx == 0) { $__ihx = _chi(\@__ids, \@__ihf, $__ilg, $__ifa); } if ($__ihx == 0 && !$__ill) { my @__ijb = (0, @__iek); $__ihx = _cli(\@__ids, [\@__ijb], $__ifa); } } if ($__ihx == 0) { my $__ijc = 1; for ($__idw = 0; $__idw < @__ids && $__ijc; $__idw++) { $__ijc &= $__ids[$__idw] == 0; } $__ihx = $__ijc; } if ($__ihx == 0) { if ($__iew) { if (@__ifg > 0) { $__ids[$__ifa] = _chc($__ieq[$__ifa], $__idu) + 1; } else { $__ids[$__ifa] = 0; } if (exists $__ilb->{'_aqy'}) { $__iio = _ckt($__ilb->{'_aqy'}, \%__iey, \@__ids); } $__iih = 0; $__iii = 0; for ($__idw = 0; $__idw < $__idv; $__idw++) { $__iee = $__ile->[$__idw]; if ($__iee == $__iew) { if (@__ifg > 0) { push(@__ihg, $__ids[$__idw]); $__iii = _clp($__ifg[$__ids[$__idw] - 1], $__idu + $__ilf); } } else { if (exists $__ies->{$__iee}) { $__iij = $__ies->{$__iee}->{'_aps'}; $__ief = $__ids[$__idw]; next if ($__ief == 0); $__iip = $__iij->[$__ief - 1]; if (exists $__ilb->{'_aqy'}) { if (exists $__iio->{$__iee . "," . $__ief}) { $__iip += $__iio->{$__iee . "," . $__ief}; } } $__iih += $__iip; } } } $__iih += $__ifk; if ($__iii) { $__iih += $__iih * $__iii; } if ($__ifi) { $__iih = authlib8_4_8::_bro($__iih, $__ifi, -1); } if ($__ifj) { $__iih += $__ifj; } $__iih = authlib8_4_8::_brn($__iih, $__ifh); } } if ($__idr) { if ($__ihx == 0 && exists $__ilh->{$__iew}) { if ($__iih > $__ihj) { $__ihx = 1; } } } if ($__ihx == 0 && $__igx) { my $__ijd = 0; if ($__iew) { $__ijd = $__ids[$__ifa]; $__ids[$__ifa] = $__iih; } $__ihx = _chf(\@__ids, \@__ihf, $__ilg, \@__idp, \@__idq, $__ihe ? \@__ieh : 0, \@__ifd, -1, $__ifa, \@__iel); if ($__iew) { $__ids[$__ifa] = $__ijd; } } if ($__ihx == 0) { $__ihw = 0; } else { $__iik++; } } if ($__ihp) { last; } for ($__idw = 0; $__idw < $__idv; $__idw++) { $__ifq = 1; next if ($__ids[$__idw] == 0); $__iif = _cla($__ids[$__idw], $__ifd[$__idw]); if ($__idw != $__ifa) { $__iie = $__ihd[$__idw]; $__iee = $__ile->[$__idw]; if (exists $__ies->{$__iee} && $__ieh[$__idw] != 0) { $__iig = $__ies->{$__iee}->{'_app'}; if ($__iig) { if (($__iif == $__iie + 1) || ($__iif == $__iie - 1)) { $__ifq = $__iea; } } } } $__ifb[$__idw]->[$__iif] += $__ifq; } for ($__idw = 0; $__idw < @__ids; $__idw++) { if ($__ifa != $__idw) { if ($__ids[$__idw] != 0 && $__ieh[$__idw] != $__ids[$__idw]) { if ($__iim == 1) { $__iin = 1; } else { $__iev = @{$__ifb[$__idw]}; $__iin = 1 / $__iev; $__iin = sprintf("%.4f", $__iin); } $__igf[$__idw] += $__iin; } } } if ($__iew) { $__ids[$__ifa] = $__iih; } $__ilf++; unshift @__ids, $__ilf; push @__ihf, authlib8_4_8::_bsp(\@__ids); $__igj++; } _cku(\@__ifb, \@__iek, $__ile, $__ies, \@__ifd, $__iea, 0); $__igx = $__ihc{"original"}->{"blnAvoidDominated"}; @__igz = @{authlib8_4_8::_bsp($__ilg)}; @__igw = @{authlib8_4_8::_bsp($__ihc{"original"}->{"Tasks"})}; @__igr = (@{authlib8_4_8::_bsp($__ihc{"original"}->{"TaskPriceLevels"})}, @__ihg); foreach my $__iha (@__ihf) { my @__ihb = @{authlib8_4_8::_bsp($__iha)}; if ($__iew) { push(@__igy, $__ihb[$__ifa + 1]); if (defined $__igr[$__ihb[0] - 1]) { $__ihb[$__ifa + 1] = $__igr[$__ihb[0] - 1]; } else { $__ihb[$__ifa + 1] = 0; } } shift(@__ihb); push(@__igw, \@__ihb); } my $__ije = -1; $__ije = @__igw; for ($__idw = 0; $__idw < $__idv; $__idw++) { if ($__idw != $__ifa) { $__iee = $__ile->[$__idw]; for ($__idx = 1; $__idx <= @__iel; $__idx++) { my @__ihb = (0) x $__idv; $__ihb[$__idw] = $__idx; push(@__igw, \@__ihb); push(@__igy, 0); } } } my $__ijf = $__ije == -1 ? @__igw : $__ije; my $__ijg = _cly(\@__igw, \@__iel, $__iem, \%__iep); my $__ijh = _clv($__ijg, $__ijf, $__iem + 1); my $__iji = 0; $__iir = _clt(authlib8_4_8::_bsp($__ijh), $__ijf, $__iem + 1); if ($__iir == 0) { $__iji = 1; $__ijh = _clv($__ijg, scalar @__igw, $__iem + 1); $__iir = _clt(authlib8_4_8::_bsp($__ijh), $__ijf, $__iem + 1); } my $__ijj = 0; my $__ijk = 0; my $__ijl = 0; my $__ijm = 0; my $__ijn = 0; my @__ijo = (); my $__ijp = 0; my %__ijq = (); my @__ijr = grep { not exists $__ilj->{$_ + 1} } (0..($__ijf-1)); $__iiy = _chb($__ihi); for ($__idw = 0; $__idw < @__ijr - 1 && !$__iiy; $__idw++) { my $__ijs = $__ijr[$__idw]; $__ijl = $__igw[$__ijs]; for ($__idx = $__idw + 1; $__idx < @__ijr && !$__iiy; $__idx++) { my $__ijt = $__ijr[$__idx]; my $__iju = $__igw[$__ijt]; for ($__ijp = 0; $__ijp < $__idv && !$__iiy; $__ijp++) { if ($__ijp != $__ifa) { $__iie = $__ihd[$__ijp]; my $__ijv = _cla($__ijl->[$__ijp], $__ifd[$__ijp]); my $__ijw = _cla($__iju->[$__ijp], $__ifd[$__ijp]); if (_ckq($__iie, $__ijv, $__ijw)) { $__iee = $__ile->[$__ijp]; my $__ijx = $__ijl->[$__ijp]; my $__ijy = $__iju->[$__ijp]; my @__ijz = @{$__ijl}; my @__ika = @{$__iju}; $__ijl->[$__ijp] = $__ijy; $__iju->[$__ijp] = $__ijx; if ($__igd) { _cks($__ies, \%__iey, $__iee, $__ijl, $__iju); } if (exists $__ilb->{'_aqj'} && ( _chg($__ijl, $__ilb->{'_aqj'}, \%__iey, 0) || _chg($__iju, $__ilb->{'_aqj'}, \%__iey, 0))) { $__igw[$__ijs] = \@__ijz; $__igw[$__ijt] = \@__ika; $__ijl = $__igw[$__ijs]; $__iju = $__igw[$__ijt]; next; } my @__ikb = (); if ($__iew) { my @__ikc = ($__ijl, $__iju); my @__ikd = ($__ijs, $__ijt); my $__ike = 0; for (my $__ikf = 0; $__ikf < @__ikd && !$__ike; $__ikf++) { $__iih = 0; my $__ikg = $__ikc[$__ikf]; if (exists $__ilb->{'_aqy'}) { $__iio = _ckt($__ilb->{'_aqy'}, \%__iey, $__ikg); } for (my $__ikh = 0; $__ikh < $__idv; $__ikh++) { $__iee = $__ile->[$__ikh]; if ($__iee == $__iew) { if (@__ifg > 0) { $__iii = _clp($__ifg[$__ikg->[$__ikh] - 1], $__idu + $__ikd[$__ikf] + 1); } } else { if (exists $__ies->{$__iee}) { $__iij = $__ies->{$__iee}->{'_aps'}; $__ief = $__ikg->[$__ikh]; next if ($__ief == 0); $__iip = $__iij->[$__ief - 1]; if (exists $__ilb->{'_aqy'}) { if (exists $__iio->{$__iee . "," . $__ief}) { $__iip += $__iio->{$__iee . "," . $__ief}; } } $__iih += $__iip; } } } $__iih += $__ifk; if ($__iii) { $__iih += $__iih * $__iii; } if ($__ifi) { $__iih = authlib8_4_8::_bro($__iih, $__ifi, -1); } if ($__ifj) { $__iih += $__ifj; } $__iih = authlib8_4_8::_brn($__iih, $__ifh); push (@__ikb, $__iih); if (exists $__ilh->{$__iew}) { if ($__iih > $__ihj) { $__ike = 1; } } } if ($__ike) { $__igw[$__ijs] = \@__ijz; $__igw[$__ijt] = \@__ika; $__ijl = $__igw[$__ijs]; $__iju = $__igw[$__ijt]; next; } } if (_clh(\@__igw, $__ijs, $__ifa, \@__ieh, $__ill) || _clh(\@__igw, $__ijt, $__ifa, \@__ieh, $__ill)) { $__igw[$__ijs] = \@__ijz; $__igw[$__ijt] = \@__ika; $__ijl = $__igw[$__ijs]; $__iju = $__igw[$__ijt]; next; } my $__iki = 0; my $__ikj = 0; if ($__iew) { $__iki = $__igy[$__ijs]; $__ikj = $__igy[$__ijt]; $__igy[$__ijs] = $__ikb[0]; $__igy[$__ijt] = $__ikb[1]; } if ($__igx) { my $__ikk = _cld(\@__igw, \@__idp, \@__idq, $__ihe ? \@__ieh : 0, \@__ifd, $__ijs, $__iew, $__ifa, \@__igy); if ($__ikk) { if ($__iew) { $__igy[$__ijs] = $__iki; $__igy[$__ijt] = $__ikj; } $__igw[$__ijs] = \@__ijz; $__igw[$__ijt] = \@__ika; $__ijl = $__igw[$__ijs]; $__iju = $__igw[$__ijt]; next; } $__ikk = _cld(\@__igw, \@__idp, \@__idq, $__ihe ? \@__ieh : 0, \@__ifd, $__ijt, $__iew, $__ifa, \@__igy); if ($__ikk) { if ($__iew) { $__igy[$__ijs] = $__iki; $__igy[$__ijt] = $__ikj; } $__igw[$__ijs] = \@__ijz; $__igw[$__ijt] = \@__ika; $__ijl = $__igw[$__ijs]; $__iju = $__igw[$__ijt]; next; } } my $__ikl = authlib8_4_8::_bsp($__ijh); _clw($__ijy, $__iel[$__ijp], $__ien[$__ijp], $__iep{$__iel[$__ijp]}, $__ijg->[$__ijs], $__ikl, $__iem + 1); _clw($__ijx, $__iel[$__ijp], $__ien[$__ijp], $__iep{$__iel[$__ijp]}, $__ijg->[$__ijt], $__ikl, $__iem + 1); if ($__igd) { for (my $__ikh = 0; $__ikh < $__idv; $__ikh++) { next if ($__ikh == $__ijp); if ($__ijz[$__ikh] != $__ijl->[$__ikh]) { _clw($__ijl->[$__ikh], $__iel[$__ikh], $__ien[$__ikh], $__iep{$__iel[$__ikh]}, $__ijg->[$__ijs], $__ikl, $__iem + 1); } if ($__ika[$__ikh] != $__iju->[$__ikh]) { _clw($__iju->[$__ikh], $__iel[$__ikh], $__ien[$__ikh], $__iep{$__iel[$__ikh]}, $__ijg->[$__ijt], $__ikl, $__iem + 1); } } } $__ijn = _clt(authlib8_4_8::_bsp($__ikl), $__ijf, $__iem + 1); if ($__ijn > $__iir) { $__iir = $__ijn; my $__ikm = []; if (exists $__iiq->{$__ijs + 1}) { $__ikm = $__iiq->{$__ijs + 1}; } push(@{$__ikm}, [$__ijs, $__ijp, $__ijy]); $__iiq->{$__ijs + 1} = $__ikm; $__ikm = []; if (exists $__iiq->{$__ijt + 1}) { $__ikm = $__iiq->{$__ijt + 1}; } push(@{$__ikm}, [$__ijt, $__ijp, $__ijx]); $__iiq->{$__ijt + 1} = $__ikm; $__ijh = $__ikl; _clx($__ijy, $__iel[$__ijp], $__ien[$__ijp], $__iep{$__iel[$__ijp]}, $__ijg->[$__ijs]); _clx($__ijx, $__iel[$__ijp], $__ien[$__ijp], $__iep{$__iel[$__ijp]}, $__ijg->[$__ijt]); if ($__igd) { for (my $__ikh = 0; $__ikh < $__idv; $__ikh++) { next if ($__ikh == $__ijp); if ($__ijz[$__ikh] != $__ijl->[$__ikh]) { _clx($__ijl->[$__ikh], $__iel[$__ikh], $__ien[$__ikh], $__iep{$__iel[$__ikh]}, $__ijg->[$__ijs]); } if ($__ika[$__ikh] != $__iju->[$__ikh]) { _clx($__iju->[$__ikh], $__iel[$__ikh], $__ien[$__ikh], $__iep{$__iel[$__ikh]}, $__ijg->[$__ijt]); } } } } else { if ($__iew) { $__igy[$__ijs] = $__iki; $__igy[$__ijt] = $__ikj; } $__igw[$__ijs] = \@__ijz; $__igw[$__ijt] = \@__ika; $__ijl = $__igw[$__ijs]; $__iju = $__igw[$__ijt]; } } } $__iiy = _chb($__ihi); } } } foreach $__idw (@__ijr) { if ($__iiy) { last; } $__ijl = $__igw[$__idw]; for ($__idx = 0; $__idx < $__idv && !$__iiy; $__idx++) { if ($__idx != $__ifa) { next if ($__ijl->[$__idx] == 0); $__ijj = _cla($__ijl->[$__idx], $__ifd[$__idx]); $__iie = $__ihd[$__idx]; if ($__ijj != $__iie) { my @__ikn = (); my $__iko = 0; $__iee = $__ile->[$__idx]; if (exists $__ies->{$__iee}) { if (exists $__ies->{$__iee}->{'_apr'} || $__ieh[$__idx] == 0) { $__iig = 0; } else { $__iig = $__ies->{$__iee}->{'_app'}; } } if ($__iig) { if ($__ijj - 1 == $__iie && $__ieh[$__idx] != 0) { if ($__iie - 1 >= 0) { push(@__ikn, _clb($__iie - 1, $__ifd[$__idx])); } $__iko = 1; } elsif ($__ijj + 1 == $__iie) { if ($__iie + 1 < $__iel[$__idx]) { push(@__ikn, _clb($__iie + 1, $__ifd[$__idx])); } $__iko = 1; } } if (!$__iko) { my $__ikp = 2; $__ikp++ if ($__iig); if ($__iel[$__idx] > $__ikp) { for (my $__ikh = 0; $__ikh < $__iel[$__idx]; $__ikh++) { if ($__ikh != $__ijj) { if (exists $__ies->{$__iee}->{'_apr'}) { push(@__ikn, _clb($__ikh, $__ifd[$__idx])); } elsif ($__ikh != $__iie) { if ($__iig) { if ($__ikh != $__iie - 1 && $__ikh != $__iie + 1) { push(@__ikn, _clb($__ikh, $__ifd[$__idx])); } } else { push(@__ikn, _clb($__ikh, $__ifd[$__idx])); } } } } } } if (@__ikn > 0) { foreach $__iiu (@__ikn) { if(_cky($__iee, $__iiu, $__ilh, $__iew)) { next; } push(@__ijo, [$__idw, $__idx, $__iiu, _cla($__iiu, $__ifd[$__idx])]); } } } } $__iiy = _chb($__ihi); } } authlib8_4_8::_bnr(\@__ijo); my $__ikq = @__ijo < 50 ? @__ijo : 50; $__iiy = _chb($__ihi); while (@__ijo > 0 && !$__iiy) { my $__ikr = $__iir; my $__iks = -1; for ($__ijp = 0; $__ijp < $__ikq && !$__iiy; $__ijp++) { ($__idw, $__idx, $__iiu, $__iiw) = @{$__ijo[$__ijp]}; $__ijl = $__igw[$__idw]; $__iit = $__ijl->[$__idx]; $__iiv = _cla($__iit, $__ifd[$__idx]); if (_cko($__ifb[$__idx], $__iiw, $__iiv)) { next; } if ($__igd && _ckp($__ies, \%__iey, $__ile->[$__idx], $__iiu, $__ijl)) { next; } my @__ikt = @{$__ijl}; $__ijl->[$__idx] = $__iiu; if ($__igd) { $__iee = $__ile->[$__idx]; _ckr($__ies, \%__iey, \@__ifd, $__iee, $__iew, \@__ieh, \@__ieq, \%__ifc, \@__ifb, $__ilh, $__idu + $__idx + $__idw, $__ijl, 1, 0); } if (exists $__ilb->{'_aqj'} && _chg($__ijl, $__ilb->{'_aqj'}, \%__iey, 0)) { $__igw[$__idw] = \@__ikt; next; } if ($__iew) { $__iih = 0; if (exists $__ilb->{'_aqy'}) { $__iio = _ckt($__ilb->{'_aqy'}, \%__iey, $__ijl); } for (my $__ikh = 0; $__ikh < $__idv; $__ikh++) { $__iee = $__ile->[$__ikh]; if ($__iee == $__iew) { if (@__ifg > 0) { $__iii = _clp($__ifg[$__ijl->[$__ikh] - 1], $__idu + $__idw + 1); } } else { if (exists $__ies->{$__iee}) { $__iij = $__ies->{$__iee}->{'_aps'}; $__ief = $__ijl->[$__ikh]; next if ($__ief == 0); $__iip = $__iij->[$__ief - 1]; if (exists $__ilb->{'_aqy'}) { if (exists $__iio->{$__iee . "," . $__ief}) { $__iip += $__iio->{$__iee . "," . $__ief}; } } $__iih += $__iip; } } } $__iih += $__ifk; if ($__iii) { $__iih += $__iih * $__iii; } if ($__ifi) { $__iih = authlib8_4_8::_bro($__iih, $__ifi, -1); } if ($__ifj) { $__iih += $__ifj; } $__iih = authlib8_4_8::_brn($__iih, $__ifh); if (exists $__ilh->{$__iew}) { if ($__iih > $__ihj) { $__igw[$__idw] = \@__ikt; next; } } } if (_clh(\@__igw, $__idw, $__ifa, \@__ieh, $__ill)) { $__igw[$__idw] = \@__ikt; next; } if ($__igx) { my $__iku = 0; if ($__iew) { $__iku = $__igy[$__idw]; $__igy[$__idw] = $__iih; } my $__ikk = _cld(\@__igw, \@__idp, \@__idq, $__ihe ? \@__ieh : 0, \@__ifd, $__idw, $__iew, $__ifa, \@__igy); if ($__iew) { $__igy[$__idw] = $__iku; } if ($__ikk) { $__igw[$__idw] = \@__ikt; next; } } my $__ikl = authlib8_4_8::_bsp($__ijh); _clw($__iiu, $__iel[$__idx], $__ien[$__idx], $__iep{$__iel[$__idx]}, $__ijg->[$__idw], $__ikl, $__iem + 1); if ($__igd) { for (my $__ikh = 0; $__ikh < $__idv; $__ikh++) { next if ($__ikh == $__idx); if ($__ijl->[$__ikh] != $__ikt[$__ikh]) { _clw($__ijl->[$__ikh + 1], $__iel[$__ikh], $__ien[$__ikh], $__iep{$__iel[$__ikh]}, $__ijg->[$__idw], $__ikl, $__iem + 1); } } } $__ijn = _clt($__ikl, $__ijf, $__iem + 1); if ($__ijn > $__ikr) { $__ikr = $__ijn; $__iks = $__ijp; } $__igw[$__idw] = \@__ikt; $__iiy = _chb($__ihi); } if ($__iks != -1) { ($__idw, $__idx, $__iiu, $__iiw) = @{$__ijo[$__iks]}; my $__ikm = []; if (exists $__iiq->{$__idw + 1}) { $__ikm = $__iiq->{$__idw + 1}; } push(@{$__ikm}, $__ijo[$__iks]); $__iiq->{$__idw + 1} = $__ikm; splice(@__ijo, $__iks, 1); $__ikq--; $__iiv = _cla($__igw[$__idw]->[$__idx], $__ifd[$__idx]); my @__ikt = @{$__igw[$__idw]}; $__igw[$__idw]->[$__idx] = $__iiu; if ($__igd) { $__iee = $__ile->[$__idx]; _ckr($__ies, \%__iey, \@__ifd, $__iee, $__iew, \@__ieh, \@__ieq, \%__ifc, \@__ifb, $__ilh, $__idu + $__idx + $__idw, $__igw[$__idw], 1, 0); } if ($__iew) { $__iih = 0; if (exists $__ilb->{'_aqy'}) { $__iio = _ckt($__ilb->{'_aqy'}, \%__iey, $__igw[$__idw]); } for (my $__ikh = 0; $__ikh < $__idv; $__ikh++) { $__iee = $__ile->[$__ikh]; if ($__iee == $__iew) { if (@__ifg > 0) { $__iii = _clp($__ifg[$__igr[$__idw] - 1], $__idu + $__idw); } } else { if (exists $__ies->{$__iee}) { $__iij = $__ies->{$__iee}->{'_aps'}; $__ief = $__igw[$__idw]->[$__ikh]; next if ($__ief == 0); $__iip = $__iij->[$__ief - 1]; if (exists $__ilb->{'_aqy'}) { if (exists $__iio->{$__iee . "," . $__ief}) { $__iip += $__iio->{$__iee . "," . $__ief}; } } $__iih += $__iip; } } } $__iih += $__ifk; if ($__iii) { $__iih += $__iih * $__iii; } if ($__ifi) { $__iih = authlib8_4_8::_bro($__iih, $__ifi, -1); } $__iih = authlib8_4_8::_brn($__iih, $__ifh); if ($__ifj) { $__iih += $__ifj; } $__igy[$__idw] = $__iih; } _clw($__iiu, $__iel[$__idx], $__ien[$__idx], $__iep{$__iel[$__idx]}, $__ijg->[$__idw], $__ijh, $__iem + 1); _clx($__iiu, $__iel[$__idx], $__ien[$__idx], $__iep{$__iel[$__idx]}, $__ijg->[$__idw]); if ($__igd) { for (my $__ikh = 0; $__ikh < $__idv; $__ikh++) { next if ($__ikh == $__idx); my $__ihv = $__igw[$__idw]->[$__ikh]; my $__ikv = $__ikt[$__ikh]; if ($__ikv != $__ihv) { _clw($__ihv, $__iel[$__ikh], $__ien[$__ikh], $__iep{$__iel[$__ikh]}, $__ijg->[$__idw], $__ijh, $__iem + 1); _clx($__ihv, $__iel[$__ikh], $__ien[$__ikh], $__iep{$__iel[$__ikh]}, $__ijg->[$__idw]); if ($__ikv != 0) { my $__ikw = _cla($__ikv, $__ifd[$__ikh]); $__ifb[$__ikh]->[$__ikw - 1]--; } if ($__ihv != 0) { my $__ikx = _cla($__ihv, $__ifd[$__ikh]); $__ifb[$__ikh]->[$__ikx - 1]++; } } } } $__ifb[$__idx]->[$__iiv]--; $__ifb[$__idx]->[$__iiw]++; $__iir = $__ikr; $__iiy = _chb($__ihi); } else { @__ijo = (); $__ikq = 0; } } $__iiy = _chb($__ihi); if ($__ihc{"max"}->{"intRedealCnt"} == -1 && $__iiy) { authlib8_4_8::_bpz($__ilc, "Design optimize timed out. Proceeding with current concepts."); } $__ihc{$__iix}->{"intNumTasks"} = $__ijf; $__ihc{$__iix}->{"blnUsedBYO"} = $__iji; $__ihc{$__iix}->{"CurrentOrthogonalCoding"} = authlib8_4_8::_bsp($__ijg); $__ihc{$__iix}->{"intByoTaskIdx"} = $__ije; $__ihc{$__iix}->{"AllConcepts"} = authlib8_4_8::_bsp(\@__ihf); $__ihc{$__iix}->{"AttTwiddleCntArray"} = authlib8_4_8::_bsp(\@__igf); $__ihc{$__iix}->{"LevelCountArray"} = authlib8_4_8::_bsp(\@__ifb); $__ihc{$__iix}->{"CurrentEfficiency"} = $__iir; $__ihc{$__iix}->{"ModifiedConcepts"} = authlib8_4_8::_bsp($__iiq); $__ihc{$__iix}->{"PriceLevels"} = authlib8_4_8::_bsp(\@__ihg); $__ihc{$__iix}->{"Tasks"} = authlib8_4_8::_bsp(\@__igw); $__ihc{$__iix}->{"TaskPrices"} = authlib8_4_8::_bsp(\@__igy); } my $__iky = 0; for ($__idw = 0; $__idw < $__iix && !$__iky; $__idw++) { $__iky = $__ihc{$__idw}->{"blnUsedBYO"}; } my $__ikz = -1; my $__ila = 0; for ($__idw = 0; $__idw < $__iix; $__idw++) { if ($__iky && !$__ihc{$__idw}->{"blnUsedBYO"}) { my @__igw = @{$__ihc{$__idw}->{"Tasks"}}; my $__ijh = _clv($__ihc{$__idw}->{"CurrentOrthogonalCoding"}, scalar @__igw, $__iem + 1); $__ihc{$__idw}->{"CurrentEfficiency"} = _clt($__ijh, $__ihc{$__idw}->{"intNumTasks"}, $__iem + 1); } if ($__idw == 0 || $__ila < $__ihc{$__idw}->{"CurrentEfficiency"}) { $__ila = $__ihc{$__idw}->{"CurrentEfficiency"}; $__ikz = $__idw; } } @__igw = @{$__ihc{$__ikz}->{"Tasks"}}; @__ihf = @{$__ihc{$__ikz}->{"AllConcepts"}}; @__igf = @{$__ihc{$__ikz}->{"AttTwiddleCntArray"}}; @__ifb = @{$__ihc{$__ikz}->{"LevelCountArray"}}; @__ihg = @{$__ihc{$__ikz}->{"PriceLevels"}}; $__iiq = $__ihc{$__ikz}->{"ModifiedConcepts"}; @__igy = @{$__ihc{$__ikz}->{"TaskPrices"}}; $__iir = $__ihc{$__ikz}->{"CurrentEfficiency"} > 1 ? 1 : $__ihc{$__ikz}->{"CurrentEfficiency"}; @__igz = (@{$__ilg}, @__ihf); while (my ($__ilm, $__iln) = each %{$__iiq}) { for ($__idx = 0; $__idx < $__idv; $__idx++) { if ($__idx == $__ifa) { $__igz[$__ilm - 1]->[$__idx + 1] = $__igy[$__ilm - 1]; } else { $__igz[$__ilm - 1]->[$__idx + 1] = $__igw[$__ilm - 1]->[$__idx]; } } } $__iir = authlib8_4_8::_brr($__iir); return (\@__ihf, \@__ifb, \@__igf, \@__ieq, \@__ihg, $__iiq, $__iix, $__iir, $__iky, $__ikz + 1); } sub _chb { my ($__ilq) = @_; my $__ilo = 0; if ($__ilq) { my $__ilp = Time::HiRes::tv_interval($__ilq); $__ilo = ($__ilp < 0.99) ? 0 : 1; } return $__ilo; } sub _cko { my ($__ilt, $__ilu, $__ilv) = @_; my $__ilr = $__ilt->[$__ilu]; my $__ils = $__ilt->[$__ilv]; return ($__ilr >= $__ils); } sub _ckp { my ($__ime, $__imf, $__img, $__imh, $__imi) = @_; my @__ilw = ($__img); my $__ilx = 0; while (@__ilw > 0) { my $__ily = shift(@__ilw); if (exists $__ime->{$__ily}) { if (exists $__ime->{$__ily}->{'_apt'}) { foreach my $__ilz (sort {$a <=> $b} keys %{$__ime->{$__ily}->{'_apt'}}) { if (exists $__imf->{$__ilz}) { push (@__ilw, $__ilz); } } } if ($__img == $__ily) { next; } if (exists $__ime->{$__ily}->{'_api'}) { my $__ima = $__ime->{$__ily}->{'_api'}; my $__imb = 0; my $__imc = 0; for ($__imc = 0; $__imc < @{$__ima} && !$__imb; $__imc++) { if (exists $__imf->{$__ima->[$__imc]}) { $__ilx = $__imf->{$__ima->[$__imc]}; my $__imd = $__ime->{$__ima->[$__imc]}->{'_apt'}->{$__ily}; if ($__ima->[$__imc] == $__img) { $__imb = exists $__imd->{$__imh}; } else { $__imb = exists $__imd->{$__imi->[$__ilx]}; } } } $__ilx = $__imf->{$__ily}; if (!$__imb && $__imi->[$__ilx] != 0) { return 1; } } } } return 0; } sub _ckq { my ($__imj, $__imk, $__iml) = @_; return $__imj != $__imk && $__imj != $__iml && $__imk != -1 && $__iml != -1 && $__imk != $__iml; } sub _ckr { my ($__ing, $__inh, $__ini, $__inj, $__ink, $__inl, $__inm, $__inn, $__ino, $__inp, $__inq, $__inr, $__ins, $__int) = @_; my @__imm = ($__inj); my %__imn = ($__inj => 1); my $__imo = 0; while (@__imm > 0) { my $__imp = shift(@__imm); delete $__imn{$__imp}; if (exists $__ing->{$__imp}) { if (exists $__ing->{$__imp}->{'_apt'}) { foreach my $__imq (sort {$a <=> $b} keys %{$__ing->{$__imp}->{'_apt'}}) { if (exists $__inh->{$__imq}) { if (not exists $__imn{$__imq}) { push (@__imm, $__imq); $__imn{$__imq} = 1; } } } } if ($__inj == $__imp) { next; } if (exists $__ing->{$__imp}->{'_api'}) { my $__imr = $__ing->{$__imp}->{'_api'}; my $__ims = 0; my $__imt = 0; for ($__imt = 0; $__imt < @{$__imr} && !$__ims; $__imt++) { if (exists $__inh->{$__imr->[$__imt]}) { $__imo = $__inh->{$__imr->[$__imt]}; my $__imu = $__ing->{$__imr->[$__imt]}->{'_apt'}->{$__imp}; $__ims = exists $__imu->{$__inr->[$__imo + $__int]}; } } $__imo = $__inh->{$__imp}; if ($__ims) { next if ($__inr->[$__imo + $__int] != 0); my $__imv = 0; if (!$authlib8_4_8::_bzy) { $__imv = $__inl->[$__imo]; } my $__imw = $__inn->{$__imp}; if ($__imv == 0) { my $__imx = @{$__imw}; my $__imy = _ckx($__imp, $__imx, $__inm->[$__imo], $__imw, 0, $__inp, $__ink, $__inq); if ($__imy) { $__inr->[$__imo + $__int] = $__imy; } } else { my $__imz = $__ini->[$__imo]; my $__ina = _cla($__imv, $__imz); my @__inb = @{$__ino->[$__imo]}; my $__inc = $__ing->{$__imp}->{'_app'}; my @__ind = (); my $__ine = 2147483647; my $__imt = 0; for ($__imt = 0; $__imt < @{$__imw}; $__imt++) { if (_cky($__imp, $__imw->[$__imt]->{'_bcm'}, $__inp, $__ink)) { next; } my $__inf = $__inb[$__imt]; if ($__imt == $__ina) { $__inf /= 4; } elsif ($__inc && $__ins) { if ($__imt == $__ina - 1 || ($__imt == $__ina + 1 && $__imv != 0)) { $__inf /= 2; } } if ($__inf < $__ine) { @__ind = ($__imt); $__ine = $__inf; } elsif ($__inf == $__ine) { push (@__ind, $__imt); } } if (@__ind == 0) { $__inr->[$__imo + $__int] = $__imv; } else { $__imt = 0; if (@__ind > 1) { $__imt = int(rand(@__ind)); } $__inr->[$__imo + $__int] = $__imw->[$__ind[$__imt]]->{'_bcm'}; } } } else { $__inr->[$__imo + $__int] = 0; } } } } } sub _cks { my ($__ioh, $__ioi, $__ioj, $__iok, $__iol) = @_; my @__inu = ($__ioj); my %__inv = ($__ioj => 1); my $__inw = 0; my @__inx = @{$__iok}; my @__iny = @{$__iol}; while (@__inu > 0) { my $__inz = shift(@__inu); delete $__inv{$__inz}; if (exists $__ioh->{$__inz}) { if (exists $__ioh->{$__inz}->{'_apt'}) { foreach my $__ioa (sort {$a <=> $b} keys %{$__ioh->{$__inz}->{'_apt'}}) { if (exists $__ioi->{$__ioa}) { if (not exists $__inv{$__ioa}) { push (@__inu, $__ioa); $__inv{$__ioa} = 1; } } } } if ($__ioj == $__inz) { next; } if (exists $__ioh->{$__inz}->{'_api'}) { my $__iob = $__ioh->{$__inz}->{'_api'}; my $__ioc = 0; my $__iod = 0; my $__ioe = 0; my $__iof = $__ioi->{$__inz}; for ($__ioe = 0; $__ioe < @{$__iob}; $__ioe++) { if (exists $__ioi->{$__iob->[$__ioe]}) { $__inw = $__ioi->{$__iob->[$__ioe]}; my $__iog = $__ioh->{$__iob->[$__ioe]}->{'_apt'}->{$__inz}; if (exists $__iog->{$__iok->[$__inw]}) { $__ioc = 1; } if (exists $__iog->{$__iol->[$__inw]}) { $__iod = 1; } } if ($__ioc && $__iod) { last; } } if ($__ioc) { if ($__iok->[$__iof] == 0) { $__iok->[$__iof] = $__iny[$__iof]; } } else { $__iok->[$__iof] = 0; } if ($__iod) { if ($__iol->[$__iof] == 0) { $__iol->[$__iof] = $__inx[$__iof]; } } else { $__iol->[$__iof] = 0; } } } } } sub _ckt { my($__ioz, $__ipa, $__ipb) = @_; my $__iom = $__ioz->{'_arb'}; my $__ion = @{$__iom}; my $__ioo = 0; my $__iop = 0; my $__ioq = 0; my $__ior = 0; my $__ios = 0; my $__iot = 0; my $__iou = 0; my $__iov = 0; my $__iow = ""; my $__iox = 1; my %__ioy = (); for ($__ioq = 0; $__ioq < $__ion; $__ioq++) { $__iow = ""; $__iov = 0; $__iox = 1; $__ios = $__iom->[$__ioq]; $__ioo = @{$__ios}; for ($__ior = 0; $__ior < $__ioo; $__ior++) { $__iop = $__ios->[$__ior]; $__iot = $__iop->[0]; $__iou = $__iop->[1]; if ($__ior == 0) { $__iow = $__iot . "," . $__iou; $__iov = $__iop->[2]; } else { if (exists $__ipa->{$__iot}) { if ($__ipb->[$__ipa->{$__iot}] != $__iou) { $__iox = 0; last; } } else { $__iox = 0; last; } } } if ($__iox) { $__ioy{$__iow} += $__iov; } } return \%__ioy; } sub _cku { my($__ipj, $__ipk, $__ipl, $__ipm, $__ipn, $__ipo, $__ipp) = @_; my $__ipc = @{$__ipj}; my $__ipd = 0; my $__ipe = 0; my $__ipf = 0; my $__ipg = 0; my $__iph = 0; my $__ipi = 0; for ($__ipd = 0; $__ipd < $__ipc; $__ipd++) { $__iph = $__ipl->[$__ipd]; if (exists $__ipm->{$__iph}) { $__ipi = $__ipm->{$__iph}->{'_app'}; if ($__ipi > 0) { $__ipe = $__ipj->[$__ipd]; $__ipf = _cla($__ipk->[$__ipd], $__ipn->[$__ipd]); if ($__ipf != -1) { _ckv($__ipe, $__ipf - 1, $__ipo, $__ipp); _ckv($__ipe, $__ipf + 1, $__ipo, $__ipp); } } } } } sub _ckv { my($__ips, $__ipt, $__ipu, $__ipv) = @_; my $__ipq = @{$__ips}; if ($__ipt >= 0 && $__ipt < $__ipq) { my $__ipr = $__ips->[$__ipt]; if ($__ipv) { $__ipr = $__ipr * $__ipu; } else { $__ipr = $__ipr / $__ipu; } $__ips->[$__ipt] = $__ipr; } } sub _ckw { my($__iqj, $__iqk, $__iql, $__iqm, $__iqn, $__iqo, $__iqp, $__iqq, $__iqr, $__iqs, $__iqt) = @_; my $__ipw = 0; my $__ipx = $__iqn->[$__iqm]; if(_cky($__iql, $__ipx, $__iqk, $__iqs)) { my $__ipy = 0; my $__ipz = 0; my $__iqa = 0; my $__iqb = 0; my $__iqc = @{$__iqp}; my $__iqd = 0; $__ipz = $__iqo->{'_app'}; $__iqa = $__iqo->{'_apq'}; if ($__ipz) { my $__iqe = authlib8_4_8::_bsp($__iqp); my @__iqf = sort {$a->{'_bcm'} <=> $b->{'_bcm'}} @{$__iqe}; my $__iqg = 0; my $__iqh = 0; for ($__iqd = 0; $__iqd < $__iqc; $__iqd++) { $__iqb = $__iqf[$__iqd]->{'_bcm'}; if (!_cky($__iql, $__iqb, $__iqk, $__iqs)) { if (($__iqb < $__ipx) && ($__iqb >= $__iqg)) { $__iqg = $__iqb; } elsif (($__iqb > $__ipx) && (($__iqb <= $__iqh) || ($__iqh == 0))) { $__iqh = $__iqb; } } } if ($__iqa == 1) { $__ipy = $__iqh; } elsif ($__iqa == 2) { $__ipy = $__iqg; } else { if ($__iqh == 0) { if ($__iqg > 0) { $__ipy = $__iqg; } } elsif ($__iqg == 0) { if ($__iqh > 0) { $__ipy = $__iqh; } } else { my $__iqi = authlib8_4_8::_bsi($__iqq, 2, $__iql); if ($__iqi->[0] == 0) { $__ipy = $__iqg; } else { $__ipy = $__iqh; } } } } else { $__ipy = _ckx($__iql, $__iqc, $__iqr, $__iqp, $__ipx, $__iqk, $__iqs, $__iqt); } if ($__ipy) { $__iqn->[$__iqm] = $__ipy; } else { $__ipw = 1; authlib8_4_8::_bpz($__iqj, "Current BYO is in violation of rules. Cannot find alternative."); } } return $__ipw; } sub _ckx { my($__iqz, $__ira, $__irb, $__irc, $__ird, $__ire, $__irf, $__irg) = @_; my $__iqu = 0; my $__iqv = 0; my $__iqw = 0; my $__iqx = 0; my $__iqy = $__ira * 2; for ($__iqw = 0; $__iqw < $__iqy; $__iqw++) { $__iqv = _chc($__irb, $__irg); $__iqx = $__irc->[$__iqv]->{'_bcm'}; if ($__iqx != $__ird) { if(!_cky($__iqz, $__iqx, $__ire, $__irf)) { $__iqu = $__iqx; last; } } } return $__iqu; } sub _cky { my($__irj, $__irk, $__irl, $__irm) = @_; my $__irh = 0; if (exists $__irl->{$__irj}) { if ($__irj == $__irm) { my @__iri = keys %{$__irl->{$__irj}}; if ($__irk > $__iri[0]) { $__irh = 1; } } elsif (exists $__irl->{$__irj}->{$__irk}) { $__irh = 1; } } return $__irh; } sub _ckz { my($__irv, $__irw, $__irx, $__iry, $__irz, $__isa) = @_; my $__irn = 0; my $__iro = 0; my $__irp = 0; my $__irq = 0; my $__irr = 0; my $__irs = 0; my $__irt = @{$__irw}; my $__iru = 0; for ($__irq = 0; $__irq < $__irt; $__irq++) { $__iru = $__irw->[$__irq]->{'_bcm'}; if ($__iru != $__irx) { if (!_cky($__iry, $__iru, $__irz, $__isa)) { $__irp = $__irv->[$__irq]; if (($__irp < $__iro) || ($__irn == 0)) { $__iro = $__irp; $__irn = $__iru; } if (($__irp > $__irr) || ($__irs == 0)) { $__irr = $__irp; $__irs = $__iru; } } } } return ($__irn, $__irr - $__iro); } sub _cla { my($__isc, $__isd) = @_; my $__isb = 0; if ($__isd && $__isc) { $__isb = $__isd->{$__isc}; } else { $__isb = $__isc - 1; } return $__isb; } sub _clb { my($__isg, $__ish) = @_; my $__ise = 0; if ($__ish) { my %__isf = reverse %{$__ish}; $__ise = $__isf{$__isg}; } else { $__ise = $__isg + 1; } return $__ise; } sub _clc { my($__ist, $__isu, $__isv, $__isw, $__isx, $__isy) = @_; my $__isi = 0; my $__isj = 0; my $__isk = 0; my $__isl = 0; my $__ism = 0; my $__isn = @{$__ist}; my $__iso = 0; for ($__isi = 0; $__isi < $__isn; $__isi++) { $__iso = $__isw->[$__isi]; if (!exists $__isv->{$__iso} && $__isy->[$__isi] != 0) { $__ism = $__ist->[$__isi]; if (($__ism < $__isj) || $__isk == 0) { $__isj = $__ism; $__isk = $__iso; } } } my $__isp = 0; $__ism = 0; my $__isq = 0; my $__isr = 0; my $__iss = @{$__isu}; for ($__isi = 0; $__isi < $__iss; $__isi++) { $__iso = $__isu->[$__isi]; if (!exists $__isv->{$__iso} && $__isy->[$__isi] != 0) { if ($__iso == $__isk) { $__isl = 1; last; } else { $__isr = $__isx->{$__iso}; $__ism = $__ist->[$__isr]; if (($__ism > $__isp) || $__isq == 0) { $__isp = $__ism; $__isq = $__isi; } } } } if (!$__isl) { $__isu->[$__isq] = $__isk; } } sub _cld { my ($__ita, $__itb, $__itc, $__itd, $__ite, $__itf, $__itg, $__ith, $__iti) = @_; my $__isz = 0; if ($__itd) { $__isz = _clf($__ita->[$__itf], $__itd, $__itb, $__itc, $__ite, $__itg, $__ith, $__iti->[$__itf], $__itd->[$__ith]); } $__isz = _cle($__ita, $__itb, $__itc, $__ite, $__itf, $__itg, $__ith, $__iti); return $__isz; } sub _cle { my ($__ito, $__itp, $__itq, $__itr, $__its, $__itt, $__itu, $__itv) = @_; my $__itj = 0; my $__itk = 0; my $__itl = @{$__ito}; my $__itm = $__ito->[$__its]; my $__itn = $__itv->[$__its]; for ($__itj = 0; $__itj < $__its && !$__itk; $__itj++) { $__itk = _clf($__itm, $__ito->[$__itj], $__itp, $__itq, $__itr, $__itt, $__itu, $__itn, $__itv->[$__itj]); } for ($__itj = $__its + 1; $__itj < $__itl && !$__itk; $__itj++) { $__itk = _clf($__itm, $__ito->[$__itj], $__itp, $__itq, $__itr, $__itt, $__itu, $__itn, $__itv->[$__itj]); } return $__itk; } sub _clf { my ($__iuf, $__iug, $__iuh, $__iui, $__iuj, $__iuk, $__iul, $__ium, $__iun) = @_; my $__itw = 0; my $__itx = 0; my $__ity = 0; my $__itz = 0; my $__iua = 0; my $__iub = 0; my $__iuc = 0; foreach $__itx (@{$__iui}) { if ($__iuf->[$__itx] != $__iug->[$__itx]) { $__itw = 1; last; } } if (!$__itw) { $__ity = 0; $__itz = 0; foreach $__iua (@{$__iuh}) { $__itx = $__iua->[0]; if ($__iuk && $__itx == $__iul) { if ($__ium < $__iun) { $__itz = 1; } elsif ($__ium > $__iun) { $__ity = 1; } } else { if ($__iuf->[$__itx] != 0 && $__iug->[$__itx] != 0) { my $__iud = _cla($__iuf->[$__itx], $__iuj->[$__itx]); my $__iue = _cla($__iug->[$__itx], $__iuj->[$__itx]); if ($__iud != $__iue) { $__iub = $__iua->[1]; if ($__iub == 1) { if ($__iud < $__iue) { $__ity = 1; } else { $__itz = 1; } } elsif ($__iub == 2) { if ($__iud < $__iue) { $__itz = 1; } else { $__ity = 1; } } } } } if ($__ity && $__itz) { $__ity = 0; $__itz = 0; last; } } if ($__ity || $__itz) { $__iuc = 1; } } return $__iuc; } sub _chf { my ($__iup, $__iuq, $__iur, $__ius, $__iut, $__iuu, $__iuv, $__iuw, $__iux, $__iuy) = @_; my $__iuo = 0; if ($__iuu) { $__iuo = _clg($__iup, [$__iuu], $__ius, $__iut, $__iuv, -1, $__iux, $__iuy); } if (!$__iuo) { $__iuo = _clg($__iup, $__iuq, $__ius, $__iut, $__iuv, $__iuw, $__iux, $__iuy); } if (!$__iuo) { $__iuo = _clg($__iup, $__iur, $__ius, $__iut, $__iuv, $__iuw, $__iux, $__iuy); } return $__iuo; } sub _clg { my ($__ivo, $__ivp, $__ivq, $__ivr, $__ivs, $__ivt, $__ivu, $__ivv) = @_; my $__iuz = 0; my $__iva = 0; my $__ivb = 0; my $__ivc = 0; my $__ivd = 0; my $__ive = 0; my $__ivf = 0; my $__ivg = @{$__ivp}; my $__ivh = 0; my $__ivi = 0; for ($__iuz = 0; $__iuz < $__ivg && !$__ivc; $__iuz++) { $__ivd = 0; $__ivh = $__ivp->[$__iuz]; if ($__ivh->[0] == $__ivt) { next; } foreach $__iva (@{$__ivr}) { if ($__ivo->[$__iva] != $__ivh->[$__iva + 1]) { $__ivd = 1; last; } } if (!$__ivd) { if (@{$__ivo} == @{$__ivq}) { my $__ivj = 1; foreach $__ivb (@{$__ivq}) { $__iva = $__ivb->[0]; if ($__iva != $__ivu) { my $__ivk = $__ivv->[$__iva]; my $__ivl = 1; $__ivj &= $__ivo->[$__iva] == $__ivk || $__ivo->[$__iva] == $__ivl; } if (!$__ivj) { last; } } if ($__ivj) { $__ivc = 1; } } if (!$__ivc) { $__ive = 0; $__ivf = 0; foreach $__ivb (@{$__ivq}) { $__iva = $__ivb->[0]; if ($__ivo->[$__iva] != 0 && $__ivh->[$__iva + 1] != 0) { my $__ivm = _cla($__ivo->[$__iva], $__ivs->[$__iva]); my $__ivn = _cla($__ivh->[$__iva + 1], $__ivs->[$__iva]); if ($__ivm != $__ivn) { $__ivi = $__ivb->[1]; if ($__ivi == 1) { if ($__ivm < $__ivn) { $__ive = 1; } else { $__ivf = 1; } } elsif ($__ivi == 2) { if ($__ivm < $__ivn) { $__ivf = 1; } else { $__ive = 1; } } } } if ($__ive && $__ivf) { $__ive = 0; $__ivf = 0; last; } } if ($__ive || $__ivf) { $__ivc = 1; } } } } return $__ivc; } sub _clh { my ($__iwd, $__iwe, $__iwf, $__iwg, $__iwh) = @_; my $__ivw = 0; my $__ivx = 1; my $__ivy = 0; my $__ivz = 0; my $__iwa = $__iwd->[$__iwe]; my $__iwb = @{$__iwd}; my $__iwc = @{$__iwa}; for ($__ivy = 0; $__ivy < $__iwe && $__ivx; $__ivy++) { $__ivx = 0; for ($__ivz = 0; $__ivz < $__iwc && !$__ivx; $__ivz++) { if ($__ivz != $__iwf) { if ($__iwd->[$__ivy]->[$__ivz] != $__iwa->[$__ivz]) { $__ivx = 1; } } } } if ($__ivx == 0) { $__ivw = 1; } else { for ($__ivy = $__iwe + 1; $__ivy < $__iwb && $__ivx; $__ivy++) { $__ivx = 0; for ($__ivz = 0; $__ivz < $__iwc && !$__ivx; $__ivz++) { if ($__ivz != $__iwf) { if ($__iwd->[$__ivy]->[$__ivz] != $__iwa->[$__ivz]) { $__ivx = 1; } } } } $__ivw = !$__ivx; } if (!$__ivw && !$__iwh) { $__ivx = 0; for ($__ivz = 0; $__ivz < $__iwc && !$__ivx; $__ivz++) { if ($__ivz != $__iwf) { if ($__iwa->[$__ivz] != $__iwg->[$__ivz]) { $__ivx = 1; } } } $__ivw = !$__ivx; } return $__ivw; } sub _chi { my($__iwj, $__iwk, $__iwl, $__iwm) = @_; my $__iwi = 0; $__iwi = _cli($__iwj, $__iwk, $__iwm); if (!$__iwi) { $__iwi = _cli($__iwj, $__iwl, $__iwm); } return $__iwi; } sub _cli { my($__iwt, $__iwu, $__iwv) = @_; my $__iwn = 0; my $__iwo = 0; my $__iwp = @{$__iwu}; my $__iwq = 0; my $__iwr = 0; my $__iws = 0; for ($__iwn = 0; $__iwn < $__iwp; $__iwn++) { $__iwr = 0; $__iwq = @{$__iwu->[$__iwn]}; for ($__iwo = 0; $__iwo < $__iwq; $__iwo++) { if ($__iwo != $__iwv) { if ($__iwu->[$__iwn]->[$__iwo + 1] != $__iwt->[$__iwo]) { $__iwr = 1; last; } } } if ($__iwr == 0) { $__iws = 1; last; } } return $__iws; } sub _clj { my ($__ixc, $__ixd, $__ixe, $__ixf) = @_; my $__iww = 0; my $__iwx = 0; my $__iwy = 0; my $__iwz = 0; my %__ixa = (); foreach $__iww (@{$__ixd}) { foreach $__iwx (@{$__iww}) { $__iwy = $__iwx->[0]; $__iwz = $__iwx->[1]; if ($__ixf) { if (exists $__ixc->{$__iwy}) { if ($__ixc->{$__iwy}->{'_vm'} == $__iwz) { if (exists $__ixc->{$__iwy}->{'_cmm'} || exists $__ixc->{$__iwy}->{'_cmn'}) { $__ixa{$__iwy} = 1; } } } } else { if (exists $__ixe->{$__iwy}) { if ($__ixc->[$__ixe->{$__iwy}] == $__iwz) { $__ixa{$__iwy} = 1; } } } } } my @__ixb = sort {$a <=> $b} keys %__ixa; return \@__ixb; } sub _chg { my($__ixm, $__ixn, $__ixo, $__ixp) = @_; my $__ixg = 0; my $__ixh = 0; my $__ixi = 0; my $__ixj = 0; my $__ixk = 0; my $__ixl = 1; foreach $__ixh (@{$__ixn}) { $__ixl = 1; foreach $__ixi (@{$__ixh}) { $__ixj = $__ixi->[0]; $__ixk = $__ixi->[1]; if ($__ixp) { if (exists $__ixm->{$__ixj}) { if ($__ixm->{$__ixj}->{'_vm'} != $__ixk) { $__ixl = 0; last; } } else { $__ixl = 0; last; } } else { if (exists $__ixo->{$__ixj}) { if ($__ixm->[$__ixo->{$__ixj}] != $__ixk) { $__ixl = 0; last; } } else { $__ixl = 0; last; } } } if ($__ixl) { $__ixg = 1; last; } } return $__ixg; } sub _clk { my($__ixy, $__ixz) = @_; my $__ixq = 0; my $__ixr = 20000; my $__ixs = 0; my $__ixt = 0; my $__ixu = 0; my $__ixv = 0; while (_chg($__ixy, $__ixz, 0, 1)) { my $__ixw = _clj($__ixy, $__ixz, 0, 1); if ($__ixv) { authlib8_4_8::_bqa(197, "ACBCBYO Error", "Cannot create a BYO concept. All combinations considered. Too many prohibitions.", ""); } if (@{$__ixw} == 0) { authlib8_4_8::_bqa(198, "ACBCBYO Error", "Cannot create a BYO concept after " . $__ixq . " iterations.", ""); } for ($__ixs = 0; $__ixs < @{$__ixw}; $__ixs++) { my $__ixx = $__ixy->{$__ixw->[$__ixs]}; $__ixt = 0; $__ixx->{'_e'}++; $__ixu = @{$__ixx->{'_fy'}}; if ($__ixx->{'_e'} > ($__ixu - 1)) { $__ixx->{'_e'} = 0; if ($__ixs == @{$__ixw} - 1) { $__ixv = 1; } } else { $__ixt = 1; } $__ixx->{'_vm'} = $__ixx->{'_fy'}->[$__ixx->{'_e'}]; if($__ixt) { last; } } if ($__ixq >= $__ixr) { authlib8_4_8::_bqa(198, "ACBCBYO Error", "Cannot create a BYO concept after " . $__ixq . " iterations.", ""); } $__ixq++; } } sub _cll { my($__iyh, $__iyi) = @_; my $__iya = $__iyh->{'_apa'}; my $__iyb = 0; my $__iyc = ""; my $__iyd = 0; my $__iye = 0; my @__iyf = (); if ($__iyi) { if (exists $__iya->{$__iyi}) { push @__iyf, $__iyi; } } else { @__iyf = sort {$a <=> $b} keys %{$__iya}; } foreach $__iyb (@__iyf) { $__iyc = $__iya->{$__iyb}->{'_apo'}; $__iyd = authlib8_4_8::_bsw($__iyc); $__iye = @{$__iyd}; my @__iyg = (0) x $__iye; $__iya->{$__iyb}->{'_cbi'} = \@__iyg; } return $__iya; } sub _clm { my($__iyo, $__iyp, $__iyq, $__iyr, $__iys) = @_; my $__iyj = 0; my $__iyk = 0; $__iyj = $__iyp->{$__iyq}->{'_cbi'}; my $__iyl = @{$__iyj}; my $__iym = $__iyp->{$__iyq}->{'_app'}; my $__iyn = $__iyp->{$__iyq}->{'_apq'}; if ($__iyo == 24) { if (($__iym == 1 && $__iys == 1) || ($__iym == 2 && $__iys == 2)) { for ($__iyk = $__iyr - 2; $__iyk >= 0; $__iyk--) { $__iyj->[$__iyk] = 1; } } elsif (($__iym == 1 && $__iys == 2) || ($__iym == 2 && $__iys == 1)) { for ($__iyk = $__iyr; $__iyk < $__iyl; $__iyk++) { $__iyj->[$__iyk] = 1; } } elsif ($__iym == 0 || ($__iym > 0 && $__iys == 0)) { for ($__iyk = 0; $__iyk < $__iyl; $__iyk++) { if ($__iyk != ($__iyr - 1)) { $__iyj->[$__iyk] = 1; } } } } else { if (($__iym == 1 && $__iyn == 1) || ($__iym == 2 && $__iyn == 1)) { for ($__iyk = $__iyr - 1; $__iyk >= 0; $__iyk--) { $__iyj->[$__iyk] = 1; } } elsif (($__iym == 1 && $__iyn == 2) || ($__iym == 2 && $__iyn == 2)) { for ($__iyk = $__iyr - 1; $__iyk < $__iyl; $__iyk++) { $__iyj->[$__iyk] = 1; } } else { $__iyj->[$__iyr - 1] = 1; } } } sub _cln { my($__iyt) = @_; return {"i"=> 0, "size"=> $__iyt}; } sub _chc { my($__iyv, $__iyw) = @_; if (!exists $__iyv->{"a"} || $__iyv->{"i"} >= @{$__iyv->{"a"}}) { _clo($__iyv, $__iyw); $__iyv->{"i"} = 0; } my $__iyu = $__iyv->{"a"}->[$__iyv->{"i"}]; $__iyv->{"i"}++; return $__iyu; } sub _clo { my($__iza, $__izb) = @_; my $__iyx = 0; if (exists $__iza->{"a"}) { $__iyx = @{$__iza->{"a"}}; } elsif(exists $__iza->{"size"}) { $__iyx = $__iza->{"size"}; } my $__iyy = $__izb + $acbclib8_4_8::_cmi; $acbclib8_4_8::_cmi++; my $__iyz = authlib8_4_8::_bsi($__iyy, $__iyx, 0); $__iza->{"a"} = $__iyz; } sub _clp { my($__izg, $__izh) = @_; my $__izc = $__izg->[0]; my $__izd = $__izg->[1]; my $__ize = $__izd - $__izc; $__izh += $acbclib8_4_8::_cmi; $acbclib8_4_8::_cmi++; authlib8_4_8::_bsj($__izh); my $__izf = rand($__ize); $__izf += $__izc; return $__izf; } sub _clq { my ($__izn, $__izo) = @_; if ($__izo->{'_aqk'}) { my $__izi = $__izo->{'_aqk'}->{'_aql'}; my $__izj = acbclib8_4_8::_cjt($__izn, $__izo); my $__izk = @{$__izj}; my $__izl = 0; for (my $__izm = 0; $__izm < $__izk && !$__izl; $__izm++) { $__izl = $__izj->[$__izm] == $__izi; } if (!$__izl) { authlib8_4_8::_bqa(177, "ACBC Error.", "ACBC Error. The study was configured to include Summed Pricing but the price attribute was not included in the constructed list.", $@); } } } sub _clr { my($__izz, $__jaa) = @_; my $__izp = 0; my $__izq = 0; my $__izr = 0; my $__izs = $__izz->{'_apa'}; my $__izt = 1; if (exists $__izz->{'_aqk'}) { $__izp = $__izz->{'_aqk'}->{'_aql'}; } if($__jaa) { my $__izu = {}; foreach $__izq (@{$__jaa}) { $__izr = $__izq->{'_bcm'}; $__izu->{$__izr} = 1; } foreach $__izq (@{$__jaa}) { $__izr = $__izq->{'_bcm'}; if ($__izr != $__izp) { if (exists $__izs->{$__izr}->{'_api'}) { my $__izv = $__izs->{$__izr}->{'_api'}; my $__izw = 0; my $__izx = 0; my $__izy = 0; foreach $__izx (@{$__izv}) { if(exists $__izu->{$__izx} && !exists $__izs->{$__izx}->{'_apr'}) { $__izy = 1; last; } } if (!$__izy) { next; } } if (!exists $__izs->{$__izr}->{'_apr'}) { $__izt = 0; last; } } } } return $__izt; } sub _cls { my($__jae) = @_; my $__jab = ""; my $__jac = 0; my $__jad = ""; $__jab .= "["; foreach $__jac (@{$__jae}) { $__jab .= "{"; foreach $__jad (sort keys %{$__jac}) { if ($__jad eq "a") { $__jab .= "\"" . $__jad . "\"=>"; $__jab .= authlib8_4_8::_bni($__jac->{$__jad}); } elsif ($__jad eq "i") { $__jab .= "\"" . $__jad . "\"=>"; $__jab .= $__jac->{$__jad}; } else { next; } $__jab .= ","; } $__jab =~ s/,$//; $__jab .= "}"; $__jab .= ","; } $__jab =~ s/,$//; $__jab .= "]"; return $__jab; } sub _clt { my ($__jah, $__jai, $__jaj) = @_; my $__jaf = _clu($__jah, $__jaj); if ($__jaf <= 0 || $__jaf =~ m/inf/io) { return 0; } if ($__jai == 0 || $__jaj == 0) { return 0; } my $__jag = 1/($__jai*((1/$__jaf)**(1/$__jaj))); $__jag = 1 < $__jag ? 2 : $__jag; $__jag = 0 > $__jag ? 0 : $__jag; return $__jag; } sub _clu { my ($__jas, $__jat) = @_; my $__jak = 1; my $__jal = 0; my $__jam = 0; my $__jan = 0; my $__jao = 0; my $__jap = 0; my $__jaq = 0; my $__jar = 0; for ($__jan = 0; $__jan < $__jat - 1; $__jan++) { $__jaq = $__jas->[$__jan]; if ($__jaq->[$__jan] == 0) { for ($__jao = $__jan + 1; $__jao < $__jat; $__jao++) { $__jar = $__jas->[$__jao]; if ($__jar->[$__jan] != 0) { for ($__jap = 0; $__jap < $__jat; $__jap++) { $__jal = $__jaq->[$__jap]; $__jaq->[$__jap] = $__jar->[$__jap]; $__jar->[$__jap] = $__jal; } $__jak *= -1; } } } if ($__jaq->[$__jan] == 0) { return 0; } for ($__jao = $__jan + 1; $__jao < $__jat; $__jao++) { $__jar = $__jas->[$__jao]; if ($__jar->[$__jan] != 0) { $__jam = $__jar->[$__jan] / $__jaq->[$__jan]; for ($__jap = $__jan; $__jap < $__jat; $__jap++) { $__jar->[$__jap] -= ($__jam * $__jaq->[$__jap]); } } } } for ($__jan = 0; $__jan < $__jat; $__jan++) { $__jak *= $__jas->[$__jan]->[$__jan]; } return $__jak; } sub _clv { my ($__jba, $__jbb, $__jbc) = @_; my $__jau = 0; my $__jav = 0; my $__jaw = 0; my $__jax = 0; my @__jay = (); for ($__jau = 0; $__jau < $__jbc; $__jau++) { my @__jaz = (0) x $__jbc; push(@__jay, \@__jaz); } for ($__jau = 0; $__jau < $__jbc; $__jau++) { for ($__jav = $__jau; $__jav < $__jbc; $__jav++) { $__jax = 0; for ($__jaw = 0; $__jaw < $__jbb; $__jaw++) { $__jax += $__jba->[$__jaw]->[$__jau]*$__jba->[$__jaw]->[$__jav]; } $__jay[$__jau]->[$__jav] = $__jax; $__jay[$__jav]->[$__jau] = $__jax if ($__jau != $__jav); } } return \@__jay; } sub _clw { my ($__jbk, $__jbl, $__jbm, $__jbn, $__jbo, $__jbp, $__jbq) = @_; my $__jbd = 0; my $__jbe = 0; my $__jbf = 0; my $__jbg = 0; my $__jbh = $__jbn->[$__jbk - 1]; my @__jbi = (); my @__jbj = (); for ($__jbe = 0; $__jbe < $__jbl - 1; $__jbe++, $__jbm++) { push(@__jbj, $__jbm + 1); push(@__jbi, 0); if ($__jbk != 0) { $__jbi[-1] = $__jbh->[$__jbe]; } } for ($__jbd = 0; $__jbd < @__jbj; $__jbd++) { $__jbf = $__jbj[$__jbd]; $__jbg = $__jbi[$__jbd]; if ($__jbo->[$__jbf] != $__jbg) { for ($__jbe = 0; $__jbe < $__jbj[0]; $__jbe++) { $__jbp->[$__jbe]->[$__jbf] -= $__jbo->[$__jbe] * $__jbo->[$__jbf]; $__jbp->[$__jbe]->[$__jbf] += $__jbo->[$__jbe] * $__jbg; $__jbp->[$__jbf]->[$__jbe] = $__jbp->[$__jbe]->[$__jbf]; } for ($__jbe = $__jbj[-1] + 1; $__jbe < $__jbq; $__jbe++) { $__jbp->[$__jbf]->[$__jbe] -= $__jbo->[$__jbf] * $__jbo->[$__jbe]; $__jbp->[$__jbf]->[$__jbe] += $__jbg * $__jbo->[$__jbe]; $__jbp->[$__jbe]->[$__jbf] = $__jbp->[$__jbf]->[$__jbe]; } } for ($__jbe = $__jbd; $__jbe < @__jbj; $__jbe++) { if ($__jbo->[$__jbf] != $__jbg || $__jbo->[$__jbj[$__jbe]] != $__jbi[$__jbe]) { $__jbp->[$__jbf]->[$__jbj[$__jbe]] -= $__jbo->[$__jbf] * $__jbo->[$__jbj[$__jbe]]; $__jbp->[$__jbf]->[$__jbj[$__jbe]] += $__jbg * $__jbi[$__jbe]; if ($__jbj[$__jbe] != $__jbf) { $__jbp->[$__jbj[$__jbe]]->[$__jbf] = $__jbp->[$__jbf]->[$__jbj[$__jbe]]; } } } } } sub _clx { my ($__jbt, $__jbu, $__jbv, $__jbw, $__jbx) = @_; my $__jbr = 0; my $__jbs = $__jbw->[$__jbt - 1]; for ($__jbr = 0; $__jbr < $__jbu - 1; $__jbr++, $__jbv++) { if ($__jbt == 0) { $__jbx->[$__jbv + 1] = 0; } else { $__jbx->[$__jbv + 1] = $__jbs->[$__jbr]; } } } sub _cly { my ($__jcf, $__jcg, $__jch, $__jci) = @_; my $__jby = @{$__jcf}; my $__jbz = $__jch + 1; my @__jca = (); my @__jcb = (0) x $__jbz; my $__jcc = 0; my $__jcd = 0; for ($__jcd = 0; $__jcd < $__jby; $__jcd++) { my @__jce = (0) x $__jbz; push(@__jca, \@__jce); } for ($__jcd = 0; $__jcd < $__jby; $__jcd++) { _clz($__jcf->[$__jcd], \@__jcb, $__jcg, $__jci); $__jca[$__jcd]->[0] = 1; for ($__jcc = 0; $__jcc < $__jbz - 1; $__jcc++) { $__jca[$__jcd]->[$__jcc + 1] = $__jcb[$__jcc]; } } return \@__jca; } sub _clz { my ($__jcq, $__jcr, $__jcs, $__jct) = @_; my $__jcj = 0; my $__jck = @{$__jcs}; my $__jcl = 0; my $__jcm = 0; my $__jcn = 0; my $__jco = 0; my $__jcp = 0; for ($__jcl = 0; $__jcl < $__jck; $__jcl++) { my $__jcn = $__jcs->[$__jcl] - 1; if ($__jcq->[$__jcl] == 0) { for ($__jcm = 0; $__jcm < $__jcn; $__jcm++, $__jcj++) { $__jcr->[$__jcj] = 0; } next; } $__jco = $__jct->{$__jcs->[$__jcl]}; $__jcp = $__jco->[$__jcq->[$__jcl] - 1]; for (my $__jcm = 0; $__jcm < $__jcn; $__jcm++, $__jcj++) { $__jcr->[$__jcj] = $__jcp->[$__jcm]; } } } sub _cma { my ($__jda) = @_; my @__jcu = (); for (my $__jcv = 0; $__jcv < $__jda; $__jcv++) { my @__jcw = (0) x ($__jda - 1); push(@__jcu, \@__jcw); } if ($__jda == 2) { $__jcu[0]->[0] = 1; $__jcu[1]->[0] = -1; } else { my @__jcx = (); for (my $__jcv = 0; $__jcv < $__jda; $__jcv++) { my @__jcw = (0) x $__jda; push(@__jcx, \@__jcw); } for (my $__jcy = 0; $__jcy < $__jda; $__jcy++) { $__jcx[$__jcy]->[0] = 1; if ($__jcy == $__jda - 1) { for (my $__jcz = 1; $__jcz < $__jda; $__jcz++) { $__jcx[$__jcy]->[$__jcz] = -1; } } else { for (my $__jcz = 1; $__jcz < $__jda; $__jcz++) { if ($__jcy == $__jcz - 1) { $__jcx[$__jcy]->[$__jcz] = 1; } } } } _cmb($__jda, $__jda, \@__jcx); for (my $__jcy = 0; $__jcy < $__jda; $__jcy++) { for (my $__jcz = 1; $__jcz < $__jda; $__jcz++) { $__jcu[$__jcy]->[$__jcz - 1] = $__jcx[$__jcy]->[$__jcz]; } } } return \@__jcu; } sub _cmb { my ($__jdg, $__jdh, $__jdi) = @_; my @__jdb = (); my $__jdc = 0; my $__jdd = 0; my $__jde = 0; my $__jdf = 0; for ($__jdf = 0; $__jdf < $__jdh; $__jdf++) { $__jdc = 0; @__jdb = (0) x $__jdh; for ($__jde = 0; $__jde < $__jdf; $__jde++) { for ($__jdd = 0; $__jdd < $__jdg; $__jdd++) { $__jdb[$__jde] += $__jdi->[$__jdd]->[$__jde]*$__jdi->[$__jdd]->[$__jdf]; } } for ($__jdd = 0; $__jdd < $__jdg; $__jdd++) { for ($__jde = 0; $__jde < $__jdf; $__jde++) { $__jdi->[$__jdd]->[$__jdf] -= $__jdi->[$__jdd]->[$__jde]*$__jdb[$__jde]; } } for ($__jdd = 0; $__jdd < $__jdg; $__jdd++) { $__jdc += $__jdi->[$__jdd]->[$__jdf]*$__jdi->[$__jdd]->[$__jdf]; } $__jdc = sqrt($__jdc); for ($__jdd = 0; $__jdd < $__jdg; $__jdd++) { $__jdi->[$__jdd]->[$__jdf] /= $__jdc; } } $__jdc = sqrt($__jdg); for ($__jdd = 0; $__jdd < $__jdg; $__jdd++) { for ($__jde = 0; $__jde < $__jdh; $__jde++) { $__jdi->[$__jdd]->[$__jde] *= $__jdc; } } } 1;  package acbcbyolib8_4_8; our @ISA = qw(acbclib8_4_8); sub new { my ($__jdj) = @_; $__jdj->{'_bmc'} = "acbc_byo"; bless($__jdj); return $__jdj; } sub _cir { my ($__jdm, $__jdn, $__jdo, $__jdp) = @_; if ($authlib8_4_8::_bzy == 0) { my $__jdk = $__jdm->{'_bgt'}; my $__jdl = ""; if ($__jdk =~ m/(.*?)_BYO/) { my $__jdl = $1; } if ($__jdp == 0) { $__jdm->{'_bky'} = 1; } elsif (acbclib8_4_8::_clr($__jdn, $__jdo)) { acbclib8_4_8::_clq($__jdl, $__jdn); $__jdm->{'_bky'} = 1; } else { acbclib8_4_8::_clq($__jdl, $__jdn); } } } sub _blt { my ($__jdu) = @_; my $__jdq = $__jdu->SUPER::_blt(); my $__jdr = ""; my $__jds = $__jdu->{'_bkt'}; my $__jdt = $__jds->{'_cmk'}; if (exists $__jds->{'_asy'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .acbc_task_top_row {background-color:#" . $__jds->{'_asy'} . ";}\n"; } if (exists $__jds->{'_bam'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .inner_table, .panel_table {" . ciwlib8_4_8::_bkc($__jds->{'_bam'}) . "}\n"; } if (exists $__jds->{'_atb'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .attributes_header_cell {text-align:" . $__jds->{'_atb'} . ";}\n"; } if (exists $__jds->{'_atd'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .levels_header_cell {text-align:" . $__jds->{'_atd'} . ";}\n"; } if (exists $__jds->{'_atf'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .price_header_cell {text-align:" . $__jds->{'_atf'} . ";}\n"; } if (exists $__jds->{'_ass'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .acbc_byo_price_box {width:" . $__jds->{'_ass'} . "px;}\n"; } if (exists $__jds->{'_atv'}) { $__jdr = ciwlib8_4_8::_bkb($__jds->{'_atv'}, 0, 0); if ($__jdr) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .task_header_cell {" . $__jdr . "}\n"; } } if (exists $__jds->{'_aua'}) { $__jdr = ciwlib8_4_8::_bkb($__jds->{'_aua'}, 0, 0); if ($__jdr) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .task_footer_cell {" . $__jdr . "}\n"; } } if (exists $__jds->{'_aum'}) { $__jdr = ciwlib8_4_8::_bkb($__jds->{'_aum'}, 0, 0); if (exists $__jds->{'_aum'}->{'_aur'}) { $__jdr .= " vertical-align: " . $__jds->{'_aum'}->{'_aur'} . ";"; } if (exists $__jds->{'_aum'}->{'_aus'}) { $__jdr .= " width: " . $__jds->{'_aum'}->{'_aus'} . "px;"; } if ($__jdr) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .task_left_panel_cell {" . $__jdr . "}\n"; } } if (exists $__jds->{'_auf'}) { $__jdr = ciwlib8_4_8::_bkb($__jds->{'_auf'}, 0, 0); if (exists $__jds->{'_auf'}->{'_aur'}) { $__jdr .= " vertical-align: " . $__jds->{'_auf'}->{'_aur'} . ";"; } if (exists $__jds->{'_auf'}->{'_aus'}) { $__jdr .= " width: " . $__jds->{'_auf'}->{'_aus'} . "px;"; } if ($__jdr) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .task_right_panel_cell {" . $__jdr . "}\n"; } } if (exists $__jdt->{'_bef'}) { if ($__jdt->{'_bef'}->{'_beg'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .alt_color1 {background-color: #" . $__jdt->{'_bef'}->{'_beg'} . ";}\n"; } if ($__jdt->{'_bef'}->{'_beh'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .alt_color2 {background-color: #" . $__jdt->{'_bef'}->{'_beh'} . ";}\n"; } } if (exists $__jds->{'_asw'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .acbc_proh_error {border-color: #" . $__jds->{'_asw'} . ";}\n"; } if (exists $__jds->{'_bbw'}) { $__jdr = ciwlib8_4_8::_bkb($__jds->{'_bbw'}, 0, 0); if ($__jdr) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .label_text {" . $__jdr . "}\n"; } } if (exists $__jds->{'_bca'}) { $__jdr = ciwlib8_4_8::_bkb($__jds->{'_bca'}, 0, 0); if ($__jdr) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .level_text {" . $__jdr . "}\n"; } if (exists $__jds->{'_bca'}->{'_bfu'}) { if (exists $__jds->{'_bca'}->{'_bfu'}->{'_bfw'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .acbc_byo_options {" . ciwlib8_4_8::_bkc($__jds->{'_bca'}->{'_bfu'}->{'_bfw'}) . "}\n"; } } } if (exists $__jds->{'_asz'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .acbc_task_bottom_row {background-color: #" . $__jds->{'_asz'} . ";}\n"; } if (exists $__jds->{'_bdl'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .inner_table_cell {padding: " . $__jds->{'_bdl'} . "px;}\n"; } if (exists $__jds->{'_asx'}) { $__jdq .= "\n#" . $__jdu->{'_bgt'} . "_div .acbc_price_change_warning td{background-color: #" . $__jds->{'_asx'} . ";}\n"; } return $__jdq; } sub _bmf { my ($__jid, $__jie, $__jif, $__jig, $__jih) = @_; my $__jdv = ""; my $__jdw = $__jid->{'_bkt'}; my $__jdx = $__jid->{'_bgt'}; my $__jdy = $__jdw->{'_asc'}; my $__jdz = @{$__jdy}; my $__jea = 0; my $__jeb = $__jdw->{'_cmk'}; my $__jec = $__jdw->{'_aus'}; my $__jed = 0; my $__jee = 0; my $__jef = 0; my $__jeg = 1; my $__jeh = 0; my $__jei = 0; my $__jej = 0; my %__jek = (); my $__jel = 0; my $__jem = 0; my $__jen = 0; my @__jeo = (); my @__jep = (); my @__jeq = (); my @__jer = (); my $__jes = 0; my %__jet = (); my $__jeu = 0; my $__jev = ""; if ($authlib8_4_8::_bzy) { $__jig = 1; if(acbclib8_4_8::_clr($__jeb, $__jdy)) { ciwlib8_4_8::_bio("All attributes have been removed from the BYO question. When the survey is run the BYO question will be skipped and this message will not appear."); return ""; } } if (exists $__jeb->{'_aqk'}) { $__jee = $__jeb->{'_aqk'}; $__jef = $__jee->{'_aql'}; if (!exists $__jdw->{'_asq'}) { $__jed = 1; } } if (exists $__jeb->{'_ara'} && $__jig) { my $__jew = $__jeb->{'_ara'}; my $__jex = $__jew->{'_arb'}; my $__jey = @{$__jex}; my $__jez = 0; my $__jfa = 0; my $__jfb = 0; my $__jfc = 0; my $__jfd = 0; my $__jfe = 0; my $__jff = ""; for ($__jei = 0; $__jei < $__jey; $__jei++) { $__jfb = $__jex->[$__jei]; if (exists $__jfb->{'_aro'}) { $__jfe = $__jfb->{'_aro'}; $__jfa = $__jfb->{'_asc'}; $__jez = @{$__jfa}; $__jfd = 1; for ($__jeh = 0; $__jeh < $__jez; $__jeh++) { $__jfc = 0; for ($__jej = 0; $__jej < $__jdz; $__jej++) { if ($__jfa->[$__jeh] == $__jdy->[$__jej]->{'_bcm'}) { $__jfc = 1; last; } } if (!$__jfc) { $__jfd = 0; last; } } if ($__jfd) { $__jel = 1; $__jek{($__jei + 1)} = $__jfb; $__jff = acbclib8_4_8::_ciw($__jdx, $__jfe, ($__jei + 1), "", 0); if ($__jfe->{'_aru'} eq "top") { push @__jeo, $__jff; } elsif ($__jfe->{'_aru'} eq "right") { push @__jep, $__jff; } elsif ($__jfe->{'_aru'} eq "bottom") { push @__jeq, $__jff; } elsif ($__jfe->{'_aru'} eq "left") { push @__jer, $__jff; } } } } } if (exists $__jeb->{'_aqy'} && $__jig) { $__jem = 1; } my $__jfg = 0; my $__jfh = 30; my $__jfi = 100; my $__jfj = 0; my $__jfk = 15; if (exists $__jdw->{'_bbw'}) { $__jfg = $__jdw->{'_bbw'}; if (exists $__jdw->{'_bdj'}) { $__jfh = $__jdw->{'_bdj'}; } $__jfi -= $__jfh; } if ($__jed && $__jig) { $__jfi -= $__jfk; } my $__jfl = 0; if (exists $__jdw->{'_atv'} || exists $__jdw->{'_aua'} || exists $__jdw->{'_auf'} || exists $__jdw->{'_aum'}) { $__jfl = 1; } if ($__jfl) { $__jdv .= "<table class=\"panel_table\" width=\"100%\""; if (exists $__jdw->{'_bal'}) { $__jdv .= " style=\"width: " . $__jdw->{'_bal'} . "px\""; } $__jdv .= ">\n"; if (exists $__jdw->{'_atv'}) { $__jdv .= "<tr>"; if (exists $__jdw->{'_aum'}) { $__jdv .= "<td></td>\n"; } $__jdv .= "<td class=\"task_header_cell\"><div class=\"task_header\">"; if (@__jeo) { foreach $__jes (@__jeo) { $__jdv .= $__jes; } } $__jdv .= $__jdw->{'_atv'}->{'_bft'}; $__jdv .= "</div></td>\n"; if (exists $__jdw->{'_auf'}) { $__jdv .= "<td></td>\n"; } $__jdv .= "</tr>"; } $__jdv .= "<tr>\n"; if (exists $__jdw->{'_aum'}) { my $__jfm = $__jdw->{'_aum'}; $__jdv .= "<td class=\"task_left_panel_cell\"><div class=\"task_left_panel\">\n"; if (@__jer) { foreach $__jes (@__jer) { $__jdv .= $__jes; } } $__jdv .= $__jfm->{'_bft'}; $__jdv .= "</div></td>\n"; } $__jdv .= "<td class=\"task_center_panel_cell\">\n"; } $__jdv .= "<table class=\"inner_table\" width=\"100%\""; if (!$__jfl && exists $__jdw->{'_bal'}) { $__jdv .= " style=\"width: " . $__jdw->{'_bal'} . "px\""; } $__jdv .= ">"; if (exists $__jdw->{'_ata'} || exists $__jdw->{'_atc'} || exists $__jdw->{'_ate'}) { my $__jfn = 0; $__jfj = 1; $__jdv .= "<tr class=\"acbc_task_top_row\">"; if ($__jfg) { $__jdv .= "<td class=\"attributes_header_cell inner_table_cell\">"; if (exists $__jdw->{'_ata'}) { $__jdv .= $__jdw->{'_ata'}; } else { $__jdv .= "&nbsp;"; } $__jdv .= "</td>"; } $__jdv .= "<td class=\"levels_header_cell inner_table_cell\">"; if (exists $__jdw->{'_atc'}) { $__jdv .= $__jdw->{'_atc'}; } else { $__jdv .= "&nbsp;"; } $__jdv .= "</td>"; if ($__jed && $__jig) { $__jdv .= "<td class=\"price_header_cell inner_table_cell\">"; if (exists $__jdw->{'_ate'}) { $__jdv .= $__jdw->{'_ate'}; } else { $__jdv .= "&nbsp;"; } $__jdv .= "</td>"; } $__jdv .= "</tr>"; } my $__jfo = 0; my $__jfp = 0; my $__jfq = 0; my $__jfr = 0; my $__jfs = 0; my $__jft = ""; my $__jfu = ""; my @__jfv = (); my $__jfw = ""; my $__jfx = "left"; my $__jfy = 0; my $__jfz = ""; my $__jga = ""; my $__jgb = $__jeb->{'_apa'}; my %__jgc = (); if ($__jed) { if (exists $__jee->{'_aqm'}) { $__jfw = $__jee->{'_aqm'}; } if (exists $__jee->{'_aqn'}) { $__jfx = $__jee->{'_aqn'}; } if (exists $__jee->{'_aqr'}) { $__jfy = $__jee->{'_aqr'}; } if (exists $__jee->{'_aqp'}) { $__jfz = $__jee->{'_aqp'}; } if (exists $__jee->{'_aqq'}) { $__jga = $__jee->{'_aqq'}; } } my $__jgd = 0; my $__jge = ""; my $__jgf = 0; my $__jgg = ""; my @__jgh = (); my $__jgi = ""; my $__jgj = ""; my $__jgk = 0; my $__jgl = 0; for ($__jei = 0; $__jei < $__jdz; $__jei++) { $__jfr = $__jdy->[$__jei]; $__jfs = $__jfr->{'_bcm'}; if ($__jfs != $__jef) { if (exists $__jgb->{$__jfs}) { $__jgd = $__jgb->{$__jfs}; $__jgj = $__jgd->{'_apo'}; $__jgk = 0; $__jfp = 0; $__jfo = 0; $__jgl = authlib8_4_8::_bsr($__jgj); if($__jgl) { if (exists($__jgl->{'_gt'})) { $__jgk = 1; } $__jfo = authlib8_4_8::_bss($__jgj); if($__jfo) { $__jfp = @{$__jfo}; } else { $__jfp = 0; } } if ($__jfp < 1) { if (!$authlib8_4_8::_bzy) { $__jdv .= "</table><br>"; authlib8_4_8::_bqa(174, "ACBC error.", "ACBC Error. Level list is empty for attribute " . $__jfs . ".", $@); } } $__jge = $__jdx . "_" . $__jfs; if (exists $__jgd->{'_apr'}) { push @__jgh, $__jfs; } else { push @__jfv, $__jfs; $__jdv .= "<tr id=\"" . $__jdx . "_row_" . $__jfs . "\""; $__jgf = 0; if ($ciwlib8_4_8::_bkn && exists $authlib8_4_8::_bzi{"sys_acbc_proh_atts"}) { my $__jgm = $authlib8_4_8::_bzi{"sys_acbc_proh_atts"}; if (exists $__jgm->{$__jfs}) { $__jgf = 1; } } $__jdv .= " class=\"byo_att_row"; if ($__jgf) { $__jdv .= " acbc_proh_error"; } else { $__jdv .= " alt_color" . $__jeg; } if (exists $__jgd->{'_api'}) { $__jdv .= " conditional_att"; $__jen = 1; } $__jdv .= "\">"; if ($__jfg) { $__jdv .= "<td class=\"label_text_cell inner_table_cell\" width=\"" . $__jfh . "%\">\n"; $__jdv .= "<div class=\"label_text\">\n"; $__jdv .= $__jfr->{'_bft'}; $__jdv .= "</div>\n"; $__jdv .= "</td>\n"; } $__jdv .= "<td class=\"level_text_cell inner_table_cell\" width=\"" . $__jfi . "%\">\n"; if ($__jdw->{'_bgu'} eq "radio") { $__jdv .= "<table class=\"acbc_byo_options\" id=\"" . $__jdx . "_" . $__jfs . "_error\">\n"; } elsif ($__jdw->{'_bgu'} eq "combo") { $__jdv .= "<div id=\"" . $__jdx . "_" . $__jfs . "_error\">\n"; $__jdv .= "<select name=\"" . $__jge . "\" class=\"acbc_byo_options\">\n"; $__jdv .= "<option value=\"\">" . $__jdw->{'_bba'} . "</option>\n"; } $__jgc{$__jfs} = $__jfo; my %__jgn = (); for ($__jeh = 0; $__jeh < $__jfp; $__jeh++) { $__jfq = $__jfo->[$__jeh]; $__jft = $__jfq->{'_bft'}; if ($__jgk) { if (exists $__jfq->{'_axu'}) { if ($__jdw->{'_bgu'} eq "radio") { $__jdv .= "</table>"; } elsif ($__jdw->{'_bgu'} eq "combo") { $__jdv .= "</select></div>\n"; } $__jdv .= "</table><br>"; authlib8_4_8::_bqa(175, "ACBC error.", "ACBC Error. Attribute #" . $__jfs . " level #" . $__jfq->{'_bcm'} . " is an Exclusive (\"None of the Above\") list member.", $@); } } if ($__jed) { $__jfu = acbclib8_4_8::_cja($__jdw, $__jfq, $__jgd, $__jeb); $__jft .= " <span class=\"acbc_byo_price_text\">" . $__jfu . "</span>"; } if ($__jdw->{'_bgu'} eq "radio") { $__jdv .= "<tr class=\"clickable\">"; $__jdv .= "<td class=\"input_cell\">\n"; $__jdv .= ciwlib8_4_8::_bkd($__jge, $__jfq->{'_bcm'}, 1, $__jdw); $__jdv .= "</td>\n"; $__jdv .= "<td class=\"option_cell\">\n"; $__jdv .= "<div class=\"options\">\n"; $__jdv .= "<label for=\"" . $__jge . "_" . $__jfq->{'_bcm'} . "\">\n"; $__jgi = "<span id=\"" . $__jge . "_" . $__jfq->{'_bcm'} . "_label\" class=\"level_text\">" . $__jft . "</span>"; $__jdv .= $__jgi; $__jdv .= "</label></div></td></tr>"; } elsif ($__jdw->{'_bgu'} eq "combo") { $__jdv .= "<option value=\"" . $__jfq->{'_bcm'} . "\""; if (exists $__jdw->{'_bku'}) { if ($__jdw->{'_bku'}->{$__jge} == $__jfq->{'_bcm'}) { $__jdv .= " selected"; } } $__jdv .= " id=\"" . $__jge . "_" . $__jfq->{'_bcm'} . "_label\">" . $__jft . "</option>\n"; $__jgn{$__jfq->{'_bcm'}} = $__jft; } } if ($__jdw->{'_bgu'} eq "radio") { $__jdv .= "</table>"; } elsif ($__jdw->{'_bgu'} eq "combo") { $__jdv .= "</select></div>\n"; $__jdv .= "<div style=\"display: none;\">\n"; foreach my $__jgo (sort {$a <=> $b} keys %__jgn) { $__jdv .= "<div class=\"combo_label_" . $__jgo . "\">" . $__jgn{$__jgo} . "</div>\n"; } $__jdv .= "</div>\n"; } $__jdv .= "</td>"; if ($__jed && $__jig) { $__jdv .= "<td class=\"price_cell inner_table_cell\" width=\"" . $__jfk . "%\" nowrap>"; if($__jfw) { $__jdv .= "<table cellpadding=\"0\" cellspacing=\"0\"><tr><td>"; } if ($__jfw && $__jfx eq "left") { $__jdv .= $__jfw; $__jdv .= "</td><td>"; } $__jev = $__jdx . "_price" . $__jfs; $__jdv .= "<input name=\"" . $__jev . "\" type=\"tel\" id=\"" . $__jev . "\" class=\"acbc_byo_price_box numeric_input\">"; if ($__jfw && $__jfx eq "right") { $__jdv .= "</td><td>"; $__jdv .= $__jfw; } if($__jfw) { $__jdv .= "</td></tr></table>"; } $__jdv .= "</td>"; } $__jdv .= "</tr>"; if ($__jeg == 1) { $__jeg = 2; } else { $__jeg = 1; } } } else { if (!$authlib8_4_8::_bzy) { $__jdv .= "</table><br>"; authlib8_4_8::_bqa(176, "ACBC error.", "ACBC Error. No level list specified for attribute " . $__jfs . ".", $@); } } } } if ($__jed && $__jig) { $__jdv .= "<tr class=\"acbc_task_bottom_row\">"; if ($__jfg) { $__jdv .= "<td>&nbsp;</td>"; } $__jdv .= "<td class=\"total_label_cell inner_table_cell\">" . $__jdw->{'_asr'} . "</td>"; $__jdv .= "<td class=\"price_cell total_price inner_table_cell\">"; if($__jfw) { $__jdv .= "<table cellpadding=\"0\" cellspacing=\"0\"><tr><td>"; } if ($__jfw && $__jfx eq "left") { $__jdv .= $__jfw; $__jdv .= "</td><td>"; } $__jev = $__jdx . "_" . $__jef; $__jdv .= "<input name=\"" . $__jev . "\" type=\"tel\" id=\"" . $__jev . "\" class=\"acbc_byo_price_box numeric_input\">"; if ($__jfw && ($__jfx eq "right")) { $__jdv .= "</td><td>"; $__jdv .= $__jfw; } if($__jfw) { $__jdv .= "</td></tr></table>"; } $__jdv .= "</td>"; $__jdv .= "</tr>"; } $__jdv .= "</table>\n"; if ($__jfl) { $__jdv .= "</td>"; if (exists $__jdw->{'_auf'}) { my $__jgp = $__jdw->{'_auf'}; $__jdv .= "<td class=\"task_right_panel_cell\"><div class=\"task_right_panel\">"; if (@__jep) { foreach $__jes (@__jep) { $__jdv .= $__jes; } } $__jdv .= $__jgp->{'_bft'}; $__jdv .= "</div></td>\n"; } $__jdv .= "</tr>\n"; if (exists $__jdw->{'_aua'}) { $__jdv .= "<tr>"; if (exists $__jdw->{'_aum'}) { $__jdv .= "<td></td>\n"; } $__jdv .= "<td class=\"task_footer_cell\"><div class=\"task_footer\">"; if (@__jeq) { foreach $__jes (@__jeq) { $__jdv .= $__jes; } } $__jdv .= $__jdw->{'_aua'}->{'_bft'}; $__jdv .= "</div></td>\n"; if (exists $__jdw->{'_auf'}) { $__jdv .= "<td></td>\n"; } $__jdv .= "</tr>"; } $__jdv .= "</table>\n"; } my $__jgq = join(",", @__jfv); $__jdv .= "\n<input type=\"hidden\" name=\"hid_list_" . $__jdx . "\" value=\"" . $__jgq . "\">\n"; my $__jgr = 0; my $__jgs = "BYOObj_" . $__jdx; if ($__jig && $authlib8_4_8::_bzy == 0) { if ($__jed || exists $__jeb->{'_aqj'} || $__jel || $__jem || $__jen) { $__jdv .= "<script type=\"text/javascript\">\n"; my @__jgt = (); my @__jgu = (); my $__jgv = ""; my @__jgw = (); my $__jgx = 0; my @__jgy = (); for ($__jei = 0; $__jei < $__jdz; $__jei++) { $__jfr = $__jdy->[$__jei]; $__jfs = $__jfr->{'_bcm'}; if (exists $__jgb->{$__jfs}) { $__jgx = $__jgb->{$__jfs}; push @__jgu, $__jfs; if (!exists $__jgx->{'_apr'}) { push @__jgt, $__jfs; if ($__jed) { ciwlib8_4_8::_bie($__jgx->{'_aps'}); $__jgv .= $__jgs . ".BYOAddPrices(\"" . $__jfs . "\", [" . join(",", @{$__jgx->{'_aps'}}) . "]);\n"; } if (exists $__jgx->{'_apt'}) { my $__jgz = $__jgx->{'_apt'}; my $__jha = 0; my $__jhb = 0; my $__jgo = 0; foreach $__jha (sort {$a <=> $b} keys %{$__jgz}) { $__jhb = $__jgz->{$__jha}; foreach $__jgo(sort {$a <=> $b} keys %{$__jhb}) { push @__jgy, [$__jfs . "-" . $__jgo, $__jha]; } } } } } } my $__jhc = @__jgt; my $__jhd = "[" . join(",", @__jgt) . "]"; if (exists $__jeb->{'_aqj'}) { $__jgr = 1; } my $__jhe = 0; if (exists $__jeb->{'_aqk'}) { if (exists $__jeb->{'_aqk'}->{'_aqo'}) { $__jhe = $__jeb->{'_aqk'}->{'_aqo'}; if (!authlib8_4_8::_bto($__jhe)) { $__jhe = 0; } } } my $__jhf = "[]"; my $__jhg = ""; if ($__jgr) { $__jgr = 1; my $__jhh = $__jeb->{'_aqj'}; if (@__jgh) { $__jhh = authlib8_4_8::_bqy(\@__jgh, $__jhh); } $__jhf = "[" . join(",", map{authlib8_4_8::_bni($_)} @{$__jhh}) . "]"; my $__jhi = $authlib8_4_8::_bzl->{'_es'}; $__jhg = ciwlib8_4_8::_bjo($__jhi->{'_fk'}); } my $__jhj = "[]"; my $__jhk = "[]"; if ($__jel) { my $__jhl = 0; my $__jhm = 0; my @__jhn = (); my @__jho = (); foreach $__jhl (sort {$a <=> $b} keys %__jek) { $__jhm = $__jek{$__jhl}->{'_asc'}; push @__jhn, "[" . join(",", @{$__jhm}) . "]"; push @__jho, $__jhl; } $__jhj = "[" . join(",", @__jhn) . "]"; $__jhk = "[" . join(",", @__jho) . "]"; } my $__jhp = "[]"; my $__jhq = ""; my $__jhr = ""; my $__jhs = ""; my $__jht = ""; my $__jhu = "[]"; if ($__jem && $__jed) { my $__jhv = $__jeb->{'_aqy'}->{'_arb'}; my $__jfb = 0; my $__jhw = 0; my $__jhx = ""; foreach $__jfb (@{$__jhv}) { $__jhx .= "["; foreach $__jhw (@{$__jfb}) { $__jhx .= "[" . join(",", @{$__jhw}) . "],"; if (@{$__jhw} == 3) { $__jet{$__jhw->[0]} = 1; } } $__jhx =~ s/,$//; $__jhx .= "],"; } $__jhx =~ s/,$//; $__jhp = "[" . $__jhx . "]"; if (exists $__jdw->{'_ast'}) { $__jhq = ciwlib8_4_8::_bjq(authlib8_4_8::_bsl($__jdw->{'_ast'})); } if (exists $__jdw->{'_asu'}) { $__jhr = ciwlib8_4_8::_bjq(authlib8_4_8::_bsl($__jdw->{'_asu'})); } if (exists $__jdw->{'_asv'}) { $__jhs = ciwlib8_4_8::_bjq(authlib8_4_8::_bsl($__jdw->{'_asv'})); } my $__jhi = $authlib8_4_8::_bzl->{'_es'}; $__jht = $__jhi->{'_fl'}; $__jht = ciwlib8_4_8::_bjo($__jht); $__jht = ciwlib8_4_8::_bjp($__jht); } my $__jhy = ""; if (exists $__jdw->{'_bds'}) { $__jhy = ciwlib8_4_8::_bjo($__jdw->{'_bds'}); } $__jdv .= "var " . $__jgs . " = new SSI_BYOClass(\"" . $__jdx . "\"," . $__jhd . ",\"" . $__jdw->{'_bgu'} . "\"," . $__jed . "," . $__jhf . "," . $__jel . "," . $__jem . "," . $__jhe . "," . $__jfy . ",\"" . $__jfz . "\",\"" . $__jga . "\"," . $__jef . "," . $__jdw->{'_cmo'} . ",\"" . $__jhy . "\",\"" . $__jhg . "\"," . $__jhj . "," . $__jhk . ", \"" . $authlib8_4_8::_bwy . "\",\"" . $authlib8_4_8::_byz . "\",\"" . ($authlib8_4_8::_bzi{"hid_respnum"} . "," . $authlib8_4_8::_bzi{"hid_checksum"}) . "\"," . $authlib8_4_8::_bzi{"hid_pagenum"} . "," . $__jhp . ",\"" . $__jhq . "\",\"" . $__jhr . "\",\"" . $__jhs . "\",\"" . ciwlib8_4_8::_bjq($__jfw) . "\",\"" . $__jfx . "\",\"" . $__jht; $__jdv .= "\",["; my $__jhz = 0; foreach $__jhz (@__jgy) { $__jdv .= "[\"" . $__jhz->[0] . "\", " . $__jhz->[1] . "],"; } if(@__jgy) { chop($__jdv); } $__jdv .= "]"; $__jdv .= ");\n"; $__jdv .= $__jgv; if ($__jel) { my $__jia = ""; $__jia .= $__jgs . ".BYOCondText(1, 0);\n"; ciwlib8_4_8::_bja($__jia); } if ($__jem && $__jed) { ciwlib8_4_8::_bja($__jgs . ".BYOCondPrice(false);\n"); } $__jdv .= "jQuery(document).ready(function(){" . $__jgs . ".SetupEvents();})\n"; $__jdv .= "\n</script>\n"; if ($__jem) { foreach $__jea (sort {$a <=> $b} keys %__jet) { $__jdv .= "<input type=\"hidden\" name=\"" . $__jdx . "_" . $__jea . "_prices\" value=\"\">\n"; } } } } if ($authlib8_4_8::_byb) { my @__jib = (); $__jdv .= "<!--LoadTestMode: <question><name>$__jdx</name><type>acbcbyo</type><atts>$__jgq</atts>"; $__jdv .= "<subtype>" . $__jdw->{'_bgu'} . "</subtype>"; if (exists $__jeb->{'_aqk'}) { $__jdv .= "<showprice>" . ($__jed == 1 ? "true" : "false") . "</showprice>"; $__jdv .= "<priceatt>" . $__jef . "</priceatt>"; } for ($__jei = 0; $__jei < $__jdz; $__jei++) { $__jea = $__jdy->[$__jei]->{'_bcm'}; if (exists $__jgb->{$__jea}) { $__jgd = $__jgb->{$__jea}; $__jfo = authlib8_4_8::_bss($__jgd->{'_apo'}); @__jib = (); if($__jfo) { foreach $__jeu (@{$__jfo}) { push @__jib, $__jeu->{'_bcm'}; } } $__jdv .= "<levs attindex=\"" . $__jea . "\">" . join(",", @__jib) . "</levs>"; if (exists $__jgd->{'_apt'}) { $__jdv .= "<conditionalatts attindex=\"" . $__jea . "\">"; while (my ($__jii, $__jij) = each %{$__jgd->{'_apt'}}) { $__jdv .= "<conditionalatt att=\"" . $__jii . "\">"; $__jdv .= join(',', sort {$a <=> $b} keys %{$__jij}); $__jdv .= "</conditionalatt>"; } $__jdv .= "</conditionalatts>"; } if (exists $__jgd->{'_api'}) { $__jdv .= "<primaryatts attindex=\"" . $__jea . "\">"; $__jdv .= join(',', @{$__jgd->{'_api'}}); $__jdv .= "</primaryatts>"; } } } $__jdv .= "</question>-->\n"; } my %__jic = (); $__jic{'_cmp'} = \@__jfv; $__jic{'_cmq'} = $__jgr; $__jic{'_cmr'} = $__jgs; $__jid->{'_bmm'} = \%__jic; return $__jdv; } sub _bmg { my($__jiq, $__jir, $__jis, $__jit) = @_; if (exists $__jiq->{'_bmm'}) { my $__jik = $__jiq->{'_bmm'}->{'_cmp'}; my $__jil = $__jiq->{'_bmm'}->{'_cmq'}; my $__jim = $__jiq->{'_bmm'}->{'_cmr'}; my $__jin = @{$__jik}; if ($__jiq->{'_bkt'}->{'_bgu'} eq "radio") { for (my $__jio = 0; $__jio < $__jin; $__jio++) { my $__jip = "SSI_RadCheck(\"" . $__jiq->{'_bgt'} . "_" . $__jik->[$__jio] . "\",\"" . $__jiq->{'_bgt'} . "\", \"" . ciwlib8_4_8::_bjo($__jiq->{'_bkt'}->{'_bds'}) . "\", " . $__jit . ", true)"; push @{$__jir}, $__jip; } $__jis->{'_bli'} = 1; } elsif ($__jiq->{'_bkt'}->{'_bgu'} eq "combo") { for (my $__jio = 0; $__jio < $__jin; $__jio++) { my $__jip = "SSI_ComboCheck(\"" . $__jiq->{'_bgt'} . "_" . $__jik->[$__jio] . "\",\"" . $__jiq->{'_bgt'} . "\", \"" . ciwlib8_4_8::_bjo($__jiq->{'_bkt'}->{'_bds'}) . "\", " . $__jit . ", true)"; push @{$__jir}, $__jip; } $__jis->{'_bll'} = 1; } if ($__jil) { my $__jip = $__jim . ".CheckBYOProhibitions()"; push @{$__jir}, $__jip; } } } 1;  package acbcscreenerlib8_4_8; our @ISA = qw(acbclib8_4_8); sub new { my ($__jiu) = @_; $__jiu->{'_bmc'} = "acbc_screener"; bless($__jiu); return $__jiu; } sub _cis { my ($__jiy) = @_; my $__jiv = $__jiy->{'_bgt'}; my $__jiw = $__jiy->{'_bkt'}->{'_cmx'}; my $__jix = $__jiy->{'_bkt'}->{'_cmk'}; my($__jiz, $__jja) = acbclib8_4_8::_cjw($__jiv, $__jix, $__jiw); if (@{$__jja}) { $__jiy->{'_bkt'}->{'_cmt'} = $__jiz; $__jiy->{'_bkt'}->{'_cbj'} = $__jja; } else { $__jiy->{'_bky'} = 1; } $__jiy->_cms(); } sub _cms { my ($__jjh) = @_; my $__jjb = $__jjh->{'_bkt'}; my @__jjc = ('_bfd', '_bfi', '_bfs'); my $__jjd = ""; my $__jje = ""; my $__jjf = $authlib8_4_8::_byf; my $__jjg = 0; if ($__jjf =~ m/_Screener(\d+)/i) { $__jjg = $1; } foreach $__jjd (@__jjc) { if (exists $__jjb->{$__jjd}) { $__jje = authlib8_4_8::_bsl($__jjb->{$__jjd}->{'_bft'}); $__jje =~ s/\[%ACBCCURRENTSCREENER\(\)%\]/$__jjg/sig; $__jje =~ s/\[%ACBCNUMSCREENERS\(\)%\]/$__jjb->{'_cmk'}->{'_apx'}/sig; $__jjb->{$__jjd}->{'_bft'} = $__jje; } } } sub _blt { my ($__jjm) = @_; my $__jji = $__jjm->SUPER::_blt(); my $__jjj = ""; my $__jjk = $__jjm->{'_bkt'}; my $__jjl = $__jjk->{'_cmk'}; if (exists $__jjk->{'_bam'}) { $__jji .= "\n#" . $__jjm->{'_bgt'} . "_div .inner_table {" . ciwlib8_4_8::_bkc($__jjk->{'_bam'}) . "}\n"; } if (exists $__jjl->{'_bef'}) { if (exists $__jjl->{'_bef'}->{'_beg'}) { $__jji .= "\n#" . $__jjm->{'_bgt'} . "_div .alt_color1 {background-color: #" . $__jjl->{'_bef'}->{'_beg'} . ";}\n"; } if (exists $__jjl->{'_bef'}->{'_beh'}) { $__jji .= "\n#" . $__jjm->{'_bgt'} . "_div .alt_color2 {background-color: #" . $__jjl->{'_bef'}->{'_beh'} . ";}\n"; } } if (exists $__jjk->{'_bbw'}) { $__jjj = ciwlib8_4_8::_bkb($__jjk->{'_bbw'}, 0, 0); if ($__jjj) { $__jji .= "\n#" . $__jjm->{'_bgt'} . "_div .label_text {" . $__jjj . "}\n"; } } if (exists $__jjk->{'_bca'}) { $__jjj = ciwlib8_4_8::_bkb($__jjk->{'_bca'}, 0, 0); if ($__jjj) { $__jji .= "\n#" . $__jjm->{'_bgt'} . "_div .level_text {" . $__jjj . "}\n"; } } if (exists $__jjk->{'_bdl'}) { $__jji .= "\n#" . $__jjm->{'_bgt'} . "_div .inner_table_cell {padding: " . $__jjk->{'_bdl'} . "px;}\n"; } return $__jji; } sub _bmf { my ($__jkm, $__jkn, $__jko, $__jkp, $__jkq) = @_; my $__jjn = $__jkm->{'_bkt'}; my $__jjo = $__jkm->{'_bgt'}; my $__jjp = ""; my $__jjq = $__jjn->{'_cmk'}; my $__jjr = 0; my $__jjs = ""; my @__jjt = (); my $__jju = 0; if ($__jjo =~ m/_Screener(\d+)/i) { $__jjr = $1; } my $__jjv = 2; if ($__jjr & 1) { $__jjv = 1; } my $__jjw = 0; my $__jjx = 20; if (exists $__jjn->{'_bbw'}) { $__jjw = $__jjn->{'_bbw'}; if (exists $__jjn->{'_bdj'}) { $__jjx = $__jjn->{'_bdj'}; } } $__jjp .= "<table class=\"inner_table\" width=\"100%\""; if (exists $__jjn->{'_bal'}) { $__jjp .= " style=\"width: " . $__jjn->{'_bal'} . "px\""; } $__jjp .= ">"; my $__jjy = 0; my $__jjz = 0; my $__jka = ""; my $__jkb = $__jjn->{'_cbj'}; my $__jkc = $__jjn->{'_asc'}; my $__jkd = $__jjn->{'_cmt'}; my ($__jkr, $__jks) = acbclib8_4_8::_cjb($__jkb, $__jkc, $__jkd, $__jjw, $__jjq); my $__jke = @{$__jkr->[0]->{'_cmj'}}; my $__jkf = @{$__jkr}; my $__jkg = int((100 - $__jjx) / $__jkf); for ($__jjy = 0; $__jjy < $__jke; $__jjy++) { $__jjp .= "<tr"; if ($__jjy == 0) { $__jjp .= " class=\"acbc_task_top_row\""; } $__jjp .= ">\n"; if ($__jjw) { $__jjp .= "<td class=\"label_text_cell inner_table_cell\" width=\"" . $__jjx . "%\">\n"; $__jjp .= "<div class=\"label_text\">\n"; $__jjp .= $__jks->[$__jjy]; $__jjp .= "</div>\n"; $__jjp .= "</td>\n"; } for ($__jjz = 0; $__jjz < $__jkf; $__jjz++) { $__jjp .= "<td class=\"level_text_cell inner_table_cell alt_color" . $__jjv . "\" width=\"" . $__jkg . "%\">"; $__jka = $__jkr->[$__jjz]->{'_cmj'}->[$__jjy]; $__jjp .= "<div class=\"level_text\">\n"; $__jjp .= $__jka; $__jjp .= "</div>\n"; $__jjp .= "</td>\n"; if ($__jjv == 1) { $__jjv = 2; } else { $__jjv = 1; } } $__jjp .= "</tr>\n"; if ($__jkf & 1) { if ($__jjv == 1) { $__jjv = 2; } else { $__jjv = 1; } } } $__jjp .= "<tr class=\"acbc_task_bottom_row\">\n"; my $__jkh = 0; my $__jki = ""; if ($__jjw) { $__jjp .= "<td>&nbsp;</td>\n"; } my $__jkj = ""; my $__jkk = ""; for ($__jjz = 0; $__jjz < $__jkf; $__jjz++) { $__jkk = ""; $__jkh = $__jjz + 1; $__jki = $__jjo . "_" . $__jkh; $__jjp .= "<td class=\"options_cell inner_table_cell alt_color" . $__jjv . "\">\n"; if ($__jjv == 1) { $__jjv = 2; } else { $__jjv = 1; } $__jjp .= "<table id=\"" . $__jki. "\" class=\"acbc_screener_options\">\n"; $__jjp .= "<tr class=\"clickable\">"; $__jju = $__jkr->[$__jjz]->{'_cmu'}; push @__jjt, $__jju; $__jkj = "1"; $__jjp .= "<td class=\"input_cell\">\n"; $__jjp .= ciwlib8_4_8::_bkd($__jki, $__jkj, 1, $__jjn); $__jjp .= "</td>"; $__jjp .= "<td class=\"option_cell\">\n"; $__jjp .= "<div class=\"options\">\n"; $__jjp .= " <label for=\"" . $__jki . "_" . $__jkj . "\">" . $__jjn->{'_avh'} . "</label><br>"; $__jjp .= "</div>"; $__jjp .= "</td></tr>"; $__jjp .= "<tr class=\"clickable\">"; $__jkj = "0"; $__jjp .= "<td class=\"input_cell\">\n"; $__jjp .= ciwlib8_4_8::_bkd($__jki, $__jkj, 1, $__jjn); $__jjp .= "</td>"; $__jjp .= "<td class=\"option_cell\">\n"; $__jjp .= "<div class=\"options\">\n"; $__jjp .= " <label for=\"" . $__jki . "_" . $__jkj . "\">" . $__jjn->{'_avi'} . "</label>"; $__jjp .= "</div>"; $__jjp .= "</td>\n"; $__jjp .= "</td></tr></table>"; $__jjp .= "</td>\n"; } $__jjp .= "</tr>\n"; $__jjp .= "</table>\n"; $__jjp .= "<input name=\"hid_" . $__jjo . "_num_cols\" type=\"hidden\" value=\"" . $__jkf . "\">\n"; $__jjp .= "<input name=\"" . $__jjo . "_shown\" type=\"hidden\" value=\"" . join(',', @__jjt) . "\">\n"; if ($authlib8_4_8::_byb) { $__jjp .= "<!--LoadTestMode: <question><name>$__jjo</name><type>acbcscreener</type>"; $__jjp .= "<concepts>" . $__jkf . "</concepts>"; $__jjp .= "</question>-->\n"; } my %__jkl = (); $__jkl{'_cmv'} = $__jkf; $__jkm->{'_bmm'} = \%__jkl; return $__jjp; } sub _bmg { my($__jkw, $__jkx, $__jky, $__jkz) = @_; if (exists $__jkw->{'_bmm'}) { my $__jkt = $__jkw->{'_bmm'}->{'_cmv'}; for (my $__jku = 0; $__jku < $__jkt; $__jku++) { my $__jkv = "SSI_RadCheck(\"" . $__jkw->{'_bgt'} . "_" . ($__jku + 1) . "\",\"" . $__jkw->{'_bgt'} . "\", \"" . ciwlib8_4_8::_bjo($__jkw->{'_bkt'}->{'_bds'}) . "\", " . $__jkz . ", true)"; push @{$__jkx}, ($__jkv); } $__jky->{'_bli'} = 1; } } 1;  package acbcmusthavelib8_4_8; our @ISA = qw(acbclib8_4_8); sub new { my ($__jla) = @_; $__jla->{'_bmc'} = "acbc_musthave"; bless($__jla); return $__jla; } sub _cis { my ($__jlf) = @_; my $__jlb = $__jlf->{'_bgt'}; my $__jlc = $__jlf->{'_bkt'}->{'_cmx'}; my $__jld = $__jlf->{'_bkt'}->{'_cmk'}; my ($__jlg, $__jlh) = acbclib8_4_8::_cjj($__jlc, $__jlb); my $__jle = acbclib8_4_8::_cjx($__jld, $__jlc, $__jlb); if ($__jle && @{$__jlg}) { $__jlf->{'_bkt'}->{'_cmw'} = $__jlg; if (@{$__jlh}) { $__jlf->{'_bkt'}->{'_cml'} = $__jlh; } } else { $__jlf->{'_bky'} = 1; } $__jlf->_cjf("\\[%ACBCMUSTHAVERULES\\(\\)%\\]", "\\[%ACBCMUSTHAVETEXT\\(\\)%\\]"); } sub _blt { my ($__jll) = @_; my $__jli = $__jll->SUPER::_blt(); my $__jlj = ""; my $__jlk = $__jll->{'_bkt'}; if (exists $__jlk->{'_bam'}) { $__jli .= "\n#" . $__jll->{'_bgt'} . "_div .inner_table {" . ciwlib8_4_8::_bkc($__jlk->{'_bam'}) . "}\n"; } if (exists $__jlk->{'_bas'}) { $__jlj = ciwlib8_4_8::_bkb($__jlk->{'_bas'}, 0, 0); if ($__jlj) { $__jli .= "\n#" . $__jll->{'_bgt'} . "_div .option_cell {" . $__jlj . "}\n"; } } if (exists $__jlk->{'_aym'}) { $__jlj = ciwlib8_4_8::_bkb($__jlk->{'_aym'}, 0, 0); if ($__jlj) { $__jli .= "\n#" . $__jll->{'_bgt'} . "_div .options_header_cell {" . $__jlj . "}\n"; } } return $__jli; } sub _bmf { my ($__jmp, $__jmq, $__jmr, $__jms, $__jmt) = @_; my $__jlm = $__jmp->{'_bkt'}; my $__jln = $__jmp->{'_bgt'}; my $__jlo = ""; my $__jlp = $__jlm->{'_cmk'}; my $__jlq = $__jlp->{'_apa'}; my $__jlr = 0; my $__jls = 0; my $__jlt = 0; my $__jlu = 0; my $__jlv = ""; my $__jlw = ""; my $__jlx = 0; my $__jly = 0; my $__jlz = ""; my $__jma = ""; my @__jmb = (); push (@__jmb, 0); my $__jmc = ""; if (exists $__jlm->{'_axx'}) { $__jlr = 1; my $__jmd = $__jlp->{'_aoz'}; $__jls = acbclib8_4_8::_ciu($__jmd); } my $__jme = $__jlm->{'_aus'}; $__jlo .= "<table class=\"inner_table\" width=\"100%\""; if (exists $__jlm->{'_bal'}) { $__jlo .= " style=\"width: " . $__jlm->{'_bal'} . "px\""; } $__jlo .= ">"; $__jlo .= "<tr>"; my $__jmf = "left"; if (exists $__jlm->{'_axz'}) { $__jmf = $__jlm->{'_axz'}; } if (exists $__jlm->{'_axy'} && $__jmf eq "left") { $__jlo .= "<td class=\"left_panel_cell\">" . $__jlm->{'_axy'} . "</td>"; } $__jlo .= "<td class=\"center_panel_cell\">"; if (exists $__jlm->{'_cmw'}) { my $__jmg = $__jlm->{'_cmw'}; $__jmg = acbclib8_4_8::_cjd($__jmg, $__jln); my $__jmh = @{$__jmg}; my $__jmi = 0; my $__jmj = 0; my $__jmk = ""; my $__jml = ""; my $__jmm = 0; if (exists($__jlm->{'_axu'})) { $__jml = $__jlm->{'_axu'}; $__jmh++; } $__jlo .= "<div class=\"acbc_potential_rules\">\n"; $__jlo .= "<table class=\"acbc_rules\">"; if (exists $__jlm->{'_aym'}) { $__jlo .= "<tr><td class=\"options_header_cell\" colspan=\"2\">"; $__jlo .= $__jlm->{'_aym'}->{'_bft'}; $__jlo .= "</td></tr>"; } for ($__jmj = 0; $__jmj < $__jmh; $__jmj++) { if (exists($__jlm->{'_axu'}) && (($__jmj + 1) == $__jmh)) { $__jmm = 1; $__jlo .= "<tr><td colspan=\"2\">&nbsp;</td></tr>"; } $__jlo .= "<tr class=\"clickable\">"; if ($__jmm) { $__jmc = "0"; } else { $__jmi = $__jmg->[$__jmj]; $__jlt = $__jmi->[0]; $__jlu = $__jmi->[1]; $__jly = $__jmi->[2]; $__jmc = $__jmj + 1; } $__jlo .= "<td class=\"input_cell\" width=\"5%\">\n"; $__jlo .= ciwlib8_4_8::_bkd($__jln, $__jmc, 1, $__jlm); $__jlo .= "</td>"; push @__jmb, $__jmc; $__jlo .= "<td class=\"option_cell\">\n"; $__jlo .= "<div class=\"options\">\n"; $__jlo .= "<label for=\"" . $__jln . "_" . $__jmc . "\">\n"; if ($__jmm) { $__jlz = $__jml; } else { $__jlz = acbclib8_4_8::_cji($__jlt, $__jlu, $__jly, $__jlm, $__jlr, $__jls, $__jlq, $__jlp); } $__jlo .= $__jlz; $__jlo .= "</label>\n"; $__jlo .= "</div>\n"; $__jlo .= "</td>"; $__jlo .= "</tr>"; } $__jlo .= "</table></div>"; $__jlo .= "<input name=\"" . $__jln . "_shown\" type=\"hidden\" value=\"" . authlib8_4_8::_bni($__jmg) . "\">\n"; } $__jlo .= "</td>"; if (exists $__jlm->{'_axy'} && $__jmf eq "right") { $__jlo .= "<td class=\"right_panel_cell\">" . $__jlm->{'_axy'} . "</td>"; } $__jlo .= "</tr></table>\n"; if ($authlib8_4_8::_byb) { $__jlo .= "<!--LoadTestMode: <question><name>$__jln</name><type>acbcmusthave</type>"; $__jlo .= "<values>"; my %__jmn = (); foreach my $__jmo (@__jmb) { if (not exists $__jmn{$__jmo}) { $__jlo .= "<value>" . $__jmo . "</value>"; $__jmn{$__jmo} = 1; } } $__jlo .= "</values>"; $__jlo .= "</question>-->\n"; } return $__jlo; } sub _bmg { my($__jmv, $__jmw, $__jmx, $__jmy) = @_; my $__jmu = "SSI_RadCheck(\"" . $__jmv->{'_bgt'} . "\",\"" . $__jmv->{'_bgt'} . "\", \"" . ciwlib8_4_8::_bjo($__jmv->{'_bkt'}->{'_bds'}) . "\", " . $__jmy . ", true)"; push @{$__jmw}, $__jmu; $__jmx->{'_bli'} = 1; } 1;  package acbcunacceptablelib8_4_8; our @ISA = qw(acbclib8_4_8); sub new { my ($__jmz) = @_; $__jmz->{'_bmc'} = "acbc_unacceptable"; bless($__jmz); return $__jmz; } sub _cis { my ($__jne) = @_; my $__jna = $__jne->{'_bgt'}; my $__jnb = $__jne->{'_bkt'}->{'_cmx'}; my $__jnc = $__jne->{'_bkt'}->{'_cmk'}; my ($__jnf, $__jng) = acbclib8_4_8::_cjk($__jnb, $__jna); my $__jnd = acbclib8_4_8::_cjx($__jnc, $__jnb, $__jna); if ($__jnd && @{$__jnf}) { $__jne->{'_bkt'}->{'_cmw'} = $__jnf; if (@{$__jng}) { $__jne->{'_bkt'}->{'_cml'} = $__jng; } } else { $__jne->{'_bky'} = 1; } $__jne->_cjf("\\[%ACBCUNACCEPTABLERULES\\(\\)%\\]", "\\[%ACBCUNACCEPTABLETEXT\\(\\)%\\]"); } sub _blt { my ($__jnk) = @_; my $__jnh = $__jnk->SUPER::_blt(); my $__jni = ""; my $__jnj = $__jnk->{'_bkt'}; if (exists $__jnj->{'_bam'}) { $__jnh .= "\n#" . $__jnk->{'_bgt'} . "_div .inner_table {" . ciwlib8_4_8::_bkc($__jnj->{'_bam'}) . "}\n"; } if (exists $__jnj->{'_bas'}) { $__jni = ciwlib8_4_8::_bkb($__jnj->{'_bas'}, 0, 0); if ($__jni) { $__jnh .= "\n#" . $__jnk->{'_bgt'} . "_div .option_cell {" . $__jni . "}\n"; } } if (exists $__jnj->{'_aym'}) { $__jni = ciwlib8_4_8::_bkb($__jnj->{'_aym'}, 0, 0); if ($__jni) { $__jnh .= "\n#" . $__jnk->{'_bgt'} . "_div .options_header_cell {" . $__jni . "}\n"; } } return $__jnh; } sub _bmf { my ($__jom, $__jon, $__joo, $__jop, $__joq) = @_; my $__jnl = $__jom->{'_bkt'}; my $__jnm = $__jom->{'_bgt'}; my $__jnn = ""; my $__jno = $acbclib8_4_8::_cmf->{$__jnl->{'_cmx'}}; my $__jnp = $__jno->{'_apa'}; my $__jnq = 0; my $__jnr = 0; my $__jns = 0; my $__jnt = 0; my $__jnu = ""; my $__jnv = ""; my $__jnw = 0; my $__jnx = ""; my $__jny = ""; my $__jnz = ""; my @__joa = (); push (@__joa, 0); if (exists $__jnl->{'_axx'}) { $__jnq = 1; my $__job = $__jno->{'_aoz'}; $__jnr = acbclib8_4_8::_ciu($__job); } $__jnn .= "<table class=\"inner_table\" width=\"100%\""; if (exists $__jnl->{'_bal'}) { $__jnn .= " style=\"width: " . $__jnl->{'_bal'} . "px\""; } $__jnn .= ">"; $__jnn .= "<tr>"; my $__joc = "right"; if (exists $__jnl->{'_axz'}) { $__joc = $__jnl->{'_axz'}; } if (exists $__jnl->{'_axy'} && $__joc eq "left") { $__jnn .= "<td class=\"left_panel_cell\">" . $__jnl->{'_axy'} . "</td>"; } $__jnn .= "<td class=\"center_panel_cell\">"; if (exists $__jnl->{'_cmw'}) { my $__jod = $__jnl->{'_cmw'}; $__jod = acbclib8_4_8::_cjd($__jod, $__jnm); my $__joe = @{$__jod}; my $__jof = 0; my $__jog = 0; my $__joh = ""; my $__joi = ""; my $__joj = 0; if (exists($__jnl->{'_axu'})) { $__joi = $__jnl->{'_axu'}; $__joe++; } $__jnn .= "<div class=\"acbc_potential_rules\">\n"; $__jnn .= "<table class=\"acbc_rules\">"; if (exists $__jnl->{'_aym'}) { $__jnn .= "<tr><td class=\"options_header_cell\" colspan=\"2\">"; $__jnn .= $__jnl->{'_aym'}->{'_bft'}; $__jnn .= "</td></tr>"; } for ($__jog = 0; $__jog < $__joe; $__jog++) { if (exists($__jnl->{'_axu'}) && (($__jog + 1) == $__joe)) { $__joj = 1; $__jnn .= "<tr><td colspan=\"2\">&nbsp;</td></tr>"; } $__jnn .= "<tr class=\"clickable\">"; if ($__joj) { $__jnz = "0"; } else { $__jof = $__jod->[$__jog]; $__jns = $__jof->[0]; $__jnt = $__jof->[1]; $__jnz = $__jog + 1; } $__jnn .= "<td class=\"input_cell\" width=\"5%\">\n"; $__jnn .= ciwlib8_4_8::_bkd($__jnm, $__jnz, 1, $__jnl); $__jnn .= "</td>"; push @__joa, $__jnz; $__jnn .= "<td class=\"option_cell\">\n"; $__jnn .= "<div class=\"options\">\n"; $__jnn .= "<label for=\"" . $__jnm . "_" . $__jnz . "\">\n"; if ($__joj) { $__jnx = $__joi; } else { $__jnx = acbclib8_4_8::_cji($__jns, $__jnt, 0, $__jnl, $__jnq, $__jnr, $__jnp, $__jno); } $__jnn .= $__jnx; $__jnn .= "</label>\n"; $__jnn .= "</div>\n"; $__jnn .= "</td>"; $__jnn .= "</tr>"; } $__jnn .= "</table></div>"; $__jnn .= "<input name=\"" . $__jnm . "_shown\" type=\"hidden\" value=\"" . authlib8_4_8::_bni($__jod) . "\">\n"; } $__jnn .= "</td>"; if (exists $__jnl->{'_axy'} && $__joc eq "right") { $__jnn .= "<td class=\"right_panel_cell\">" . $__jnl->{'_axy'} . "</td>"; } $__jnn .= "</tr></table>\n"; if ($authlib8_4_8::_byb) { $__jnn .= "<!--LoadTestMode: <question><name>$__jnm</name><type>acbcunacceptables</type>"; $__jnn .= "<values>"; my %__jok = (); foreach my $__jol (@__joa) { if (not exists $__jok{$__jol}) { $__jnn .= "<value>" . $__jol . "</value>"; $__jok{$__jol} = 1; } } $__jnn .= "</values>"; $__jnn .= "</question>-->\n"; } return $__jnn; } sub _bmg { my($__jos, $__jot, $__jou, $__jov) = @_; my $__jor = "SSI_RadCheck(\"" . $__jos->{'_bgt'} . "\",\"" . $__jos->{'_bgt'} . "\", \"" . ciwlib8_4_8::_bjo($__jos->{'_bkt'}->{'_bds'}) . "\", " . $__jov . ", true)"; push @{$__jot}, $__jor; $__jou->{'_bli'} = 1; } 1;  package acbcchoicelib8_4_8; our @ISA = qw(acbclib8_4_8); sub new { my ($__jow) = @_; $__jow->{'_bmc'} = "acbc_choicetask"; bless($__jow); return $__jow; } sub _cis { my ($__jpb) = @_; my $__jox = $__jpb->{'_bkt'}; my $__joy = $__jpb->{'_bgt'}; my $__joz = $__jpb->{'_bkt'}->{'_cmx'}; my $__jpa = $__jpb->{'_bkt'}->{'_cmk'}; my($__jpc, $__jpd, $__jpe) = acbclib8_4_8::_cjy($__jpa, $__joz, $__joy); if (@{$__jpd}) { $__jox->{'_cmt'} = $__jpc; $__jox->{'_cbj'} = $__jpd; $__jox->{'_cmy'} = $__jpe; } else { $__jpb->{'_bky'} = 1; } $__jpb->_cms(); } sub _cms { my ($__jpo) = @_; my $__jpf = $__jpo->{'_bkt'}; my $__jpg = $__jpf->{'_cmk'}; my $__jph = $__jpf->{'_cmy'}; my $__jpi = acbclib8_4_8::_cjh($__jph, $__jpg); my $__jpj = 0; my @__jpk = ('_bfd', '_bfi', '_bfs'); my $__jpl = ""; my $__jpm = ""; my $__jpn = $authlib8_4_8::_byf; if ($__jpn =~ m/_ChoiceTask(\d+)/i) { $__jpj = $1; } foreach $__jpl (@__jpk) { if (exists $__jpf->{$__jpl}) { $__jpm = authlib8_4_8::_bsl($__jpf->{$__jpl}->{'_bft'}); $__jpm =~ s/\[%ACBCNUMCHOICETASKS\(\)%\]/$__jpi/sgi; $__jpm =~ s/\[%ACBCCURRENTCHOICETASK\(\)%\]/$__jpj/sgi; $__jpf->{$__jpl}->{'_bft'} = $__jpm; } } } sub _blt { my ($__jpt) = @_; my $__jpp = $__jpt->SUPER::_blt(); my $__jpq = ""; my $__jpr = $__jpt->{'_bkt'}; my $__jps = $__jpr->{'_cmk'}; if (exists $__jpr->{'_azk'}) { $__jpp .= "\n#" . $__jpt->{'_bgt'} . "_div .acbc_common_level .label_text, .acbc_common_level .level_text{color: #" . $__jpr->{'_azk'} . ";}\n"; } if (exists $__jpr->{'_azj'}) { $__jpp .= "\n#" . $__jpt->{'_bgt'} . "_div .acbc_common_level {background-color: #" . $__jpr->{'_azj'} . " !important;}\n"; } if (exists $__jpr->{'_bam'}) { $__jpp .= "\n#" . $__jpt->{'_bgt'} . "_div .inner_table {" . ciwlib8_4_8::_bkc($__jpr->{'_bam'}) . "}\n"; } if (exists $__jps->{'_bef'}) { if (exists $__jps->{'_bef'}->{'_beg'}) { $__jpp .= "\n#" . $__jpt->{'_bgt'} . "_div .alt_color1 {background-color: #" . $__jps->{'_bef'}->{'_beg'} . ";}\n"; } if (exists $__jps->{'_bef'}->{'_beh'}) { $__jpp .= "\n#" . $__jpt->{'_bgt'} . "_div .alt_color2 {background-color: #" . $__jps->{'_bef'}->{'_beh'} . ";}\n"; } } if (exists $__jpr->{'_bbw'}) { $__jpq = ciwlib8_4_8::_bkb($__jpr->{'_bbw'}, 0, 0); if ($__jpq) { $__jpp .= "\n#" . $__jpt->{'_bgt'} . "_div .label_text {" . $__jpq . "}\n"; } } if (exists $__jpr->{'_bca'}) { $__jpq = ciwlib8_4_8::_bkb($__jpr->{'_bca'}, 0, 0); if ($__jpq) { $__jpp .= "\n#" . $__jpt->{'_bgt'} . "_div .level_text {" . $__jpq . "}\n"; } } if (exists $__jpr->{'_bdl'}) { $__jpp .= "\n#" . $__jpt->{'_bgt'} . "_div .inner_table td {padding: " . $__jpr->{'_bdl'} . "px;}\n"; } return $__jpp; } sub _bmf { my ($__jqy, $__jqz, $__jra, $__jrb, $__jrc) = @_; my $__jpu = $__jqy->{'_bgt'}; my $__jpv = $__jqy->{'_bkt'}; my $__jpw = ""; my $__jpx = $__jpv->{'_cmk'}; my $__jpy = $__jpv->{'_cmt'}; my $__jpz = $__jpv->{'_cbj'}; my $__jqa = @{$__jpy}; my $__jqb = 0; my $__jqc = 2; my $__jqd = ""; my $__jqe = ""; my $__jqf = 0; my $__jqg = 1; if (exists $__jpv->{'_azi'}) { $__jqf = 1; $__jqg = 0; } if ($__jpu =~ m/_ChoiceTask(\d+)/i) { $__jqb = $1; } if ($__jqf) { if ($__jqb & 1) { $__jqc = 1; } else { $__jqc = 2; } } my $__jqh = 0; my $__jqi = 20; if (exists $__jpv->{'_bbw'}) { $__jqh = $__jpv->{'_bbw'}; if (exists $__jpv->{'_bdj'}) { $__jqi = $__jpv->{'_bdj'}; } } $__jpw .= "<table class=\"inner_table\" width=\"100%\""; if (exists $__jpv->{'_bal'}) { $__jpw .= " style=\"width: " . $__jpv->{'_bal'} . "px\""; } $__jpw .= ">"; my $__jqj = $__jpv->{'_asc'}; my $__jqk = $__jpx->{'_apa'}; my $__jql = 0; my $__jqm = 0; my $__jqn = 0; my $__jqo = 0; my $__jqp = ""; my $__jqq = ""; my $__jqr = 0; my ($__jrd, $__jre) = acbclib8_4_8::_cjb($__jpz, $__jqj, $__jpy, $__jqh, $__jpx); my $__jqs = @{$__jrd->[0]->{'_cmj'}}; my $__jqt = @{$__jrd}; my $__jqu = int((100 - $__jqi) / $__jqt); if (exists $__jpx->{'_aqk'}) { $__jqo = $__jpx->{'_aqk'}->{'_aql'}; } for ($__jql = 0; $__jql < $__jqs; $__jql++) { $__jqr = 1; $__jqq = ""; for ($__jqm = 0; $__jqm < $__jqt; $__jqm++) { $__jqp = $__jrd->[$__jqm]->{'_cmj'}->[$__jql]; if ($__jqq eq "") { $__jqq = $__jqp; } elsif ($__jqp ne $__jqq) { $__jqr = 0; last; } } $__jpw .= "<tr"; if ($__jql == 0) { $__jpw .= " class=\"acbc_task_top_row\""; } $__jpw .= ">\n"; if ($__jqh) { $__jpw .= "<td class=\"label_text_cell"; if ($__jqr && $__jqg) { $__jpw .= " acbc_common_level"; } $__jpw .= "\" width=\"" . $__jqi . "%\">"; $__jpw .= "<div class=\"label_text\">\n"; $__jpw .= $__jre->[$__jql]; $__jpw .= "</div>\n"; $__jpw .= "</td>\n"; } for ($__jqm = 0; $__jqm < $__jqt; $__jqm++) { $__jpw .= "<td class=\"level_text_cell"; if ($__jqf) { $__jpw .= " alt_color" . $__jqc; if ($__jqc == 1) { $__jqc = 2; } else { $__jqc = 1; } } if($__jqr && $__jqg) { $__jpw .= " acbc_common_level"; } $__jpw .= "\" width=\"" . $__jqu . "%\">\n"; $__jqp = $__jrd->[$__jqm]->{'_cmj'}->[$__jql]; $__jpw .= "<div class=\"level_text\">\n"; $__jpw .= $__jqp; $__jpw .= "</div>\n"; $__jpw .= "</td>\n"; } $__jpw .= "</tr>\n"; if ($__jqt & 1) { if ($__jqc == 1) { $__jqc = 2; } else { $__jqc = 1; } } } $__jpw .= "<tr class=\"acbc_task_bottom_row\">"; my $__jqv = 0; my $__jqw = ""; if ($__jqh) { $__jpw .= "<td>&nbsp;</td>\n"; } my @__jqx = (); for ($__jql = 0; $__jql < $__jqt; $__jql++) { push(@__jqx, $__jrd->[$__jql]->{'_cmu'}); $__jpw .= "<td class=\"input_cell clickable"; if ($__jqf) { $__jpw .= " alt_color" . $__jqc; if ($__jqc == 1) { $__jqc = 2; } else { $__jqc = 1; } } $__jqe = $__jql + 1; $__jpw .= "\" nowrap>\n"; $__jpw .= ciwlib8_4_8::_bkd($__jpu, $__jqe, 1, $__jpv); $__jpw .= "</td>\n"; } $__jpw .= "</tr>\n"; $__jpw .= "</table>\n"; $__jpw .= "<input name=\"" . $__jpu . "_shown\" type=\"hidden\" value=\"" . join(',', @__jqx) . "\">\n"; if ($authlib8_4_8::_byb) { $__jpw .= "<!--LoadTestMode: <question><name>$__jpu</name><type>acbcchoicetask</type>"; $__jpw .= "<min>1</min>"; $__jpw .= "<max>" . $__jqt . "</max>"; $__jpw .= "</question>-->\n"; } return $__jpw; } sub _bmg { my($__jrg, $__jrh, $__jri, $__jrj) = @_; my $__jrf = "SSI_RadCheck(\"" . $__jrg->{'_bgt'} . "\",\"" . $__jrg->{'_bgt'} . "\", \"" . ciwlib8_4_8::_bjo($__jrg->{'_bkt'}->{'_bds'}) . "\", " . $__jrj . ", true)"; push @{$__jrh}, $__jrf; $__jri->{'_bli'} = 1; } 1;  package acbccalibrationlib8_4_8; our @ISA = qw(acbclib8_4_8); sub new { my ($__jrk) = @_; $__jrk->{'_bmc'} = "acbc_calibration"; bless($__jrk); return $__jrk; } sub _cis { my ($__jro) = @_; my $__jrl = $__jro->{'_bgt'}; my $__jrm = $__jro->{'_bkt'}->{'_cmx'}; my $__jrn = $__jro->{'_bkt'}->{'_cmk'}; my($__jrp, $__jrq, $__jrr, $__jrs) = acbclib8_4_8::_cka($__jrn, $__jrm, $__jrl); if (@{$__jrq}) { $__jro->{'_bkt'}->{'_cmt'} = $__jrp; $__jro->{'_bkt'}->{'_cbj'} = $__jrq; $__jro->{'_bkt'}->{'_cmz'} = $__jrr; $__jro->{'_bkt'}->{'_aqf'} = $__jrs; $__jro->_cms(); } else { $__jro->{'_bky'} = 1; } } sub _cms { my ($__jsb) = @_; my $__jrt = $__jsb->{'_bkt'}; my $__jru = $__jrt->{'_cmk'}; my $__jrv = 0; my $__jrw = $__jru->{'_aqf'}; my @__jrx = ('_bfd', '_bfi', '_bfs'); my $__jry = ""; my $__jrz = ""; my $__jsa = ""; if ($__jsb->{'_bgt'} =~ m/_Calibration(\d+)/i) { $__jrv = $1; } if ($__jrv == 1) { if (exists $__jrt->{'_bbe'} && $__jsb->{'_bkt'}->{'_cmz'} == 0) { $__jsa = $__jrt->{'_bbe'}; } } elsif ($__jrv == $__jrw) { if (exists $__jrt->{'_bbf'}) { $__jsa = $__jrt->{'_bbf'}; } } foreach $__jry (@__jrx) { if (exists $__jrt->{$__jry}) { $__jrz = authlib8_4_8::_bsl($__jrt->{$__jry}->{'_bft'}); $__jrz =~ s/\[%ACBCCALIBRATIONTEXT\(\)%\]/$__jsa/sgi; $__jrz =~ s/\[%ACBCCURRENTCALIBRATION\(\)%\]/$__jrv/sgi; $__jrz =~ s/\[%ACBCNUMCALIBRATIONS\(\)%\]/$__jrw/sgi; $__jrt->{$__jry}->{'_bft'} = $__jrz; } } } sub _blt { my ($__jsg) = @_; my $__jsc = $__jsg->SUPER::_blt(); my $__jsd = ""; my $__jse = $__jsg->{'_bkt'}; my $__jsf = $__jse->{'_cmk'}; if (exists $__jse->{'_bam'}) { $__jsc .= "\n#" . $__jsg->{'_bgt'} . "_div .inner_table {" . ciwlib8_4_8::_bkc($__jse->{'_bam'}) . "}\n"; } if (exists $__jsf->{'_bef'}) { if (exists $__jsf->{'_bef'}->{'_beg'}) { $__jsc .= "\n#" . $__jsg->{'_bgt'} . "_div .alt_color1 {background-color: #" . $__jsf->{'_bef'}->{'_beg'} . ";}\n"; } if (exists $__jsf->{'_bef'}->{'_beh'}) { $__jsc .= "\n#" . $__jsg->{'_bgt'} . "_div .alt_color2 {background-color: #" . $__jsf->{'_bef'}->{'_beh'} . ";}\n"; } } if (exists $__jse->{'_bbw'}) { $__jsd = ciwlib8_4_8::_bkb($__jse->{'_bbw'}, 0, 0); if ($__jsd) { $__jsc .= "\n#" . $__jsg->{'_bgt'} . "_div .label_text {" . $__jsd . "}\n"; } } if (exists $__jse->{'_bca'}) { $__jsd = ciwlib8_4_8::_bkb($__jse->{'_bca'}, 0, 0); if ($__jsd) { $__jsc .= "\n#" . $__jsg->{'_bgt'} . "_div .level_text {" . $__jsd . "}\n"; } } if (exists $__jse->{'_bar'}) { $__jsd = ciwlib8_4_8::_bkb($__jse->{'_bar'}, 0, 0); if ($__jsd) { $__jsc .= "\n#" . $__jsg->{'_bgt'} . "_div .radio_input_cell {" . $__jsd . " text-align: left;}\n"; $__jsc .= "\n#" . $__jsg->{'_bgt'} . "_div .combo_input_cell {" . $__jsd . "}\n"; } if (exists $__jse->{'_bar'}->{'_bfu'}) { if (exists $__jse->{'_bar'}->{'_bfu'}->{'_bfw'}) { $__jsc .= "\n#" . $__jsg->{'_bgt'} . "_div .acbc_calibration_options {" . ciwlib8_4_8::_bkc($__jse->{'_bar'}->{'_bfu'}->{'_bfw'}) . "}\n"; } } } if (exists $__jse->{'_bdl'}) { $__jsc .= "\n#" . $__jsg->{'_bgt'} . "_div .inner_table_cell {padding: " . $__jse->{'_bdl'} . "px;}\n"; } return $__jsc; } sub _bmf { my ($__jtk, $__jtl, $__jtm, $__jtn, $__jto) = @_; my $__jsh = ""; my $__jsi = $__jtk->{'_bgt'}; my $__jsj = $__jtk->{'_bkt'}; my $__jsk = $acbclib8_4_8::_cmf->{$__jsj->{'_cmx'}}; my $__jsl = $__jsj->{'_cmt'}; my $__jsm = $__jsj->{'_cbj'}; my $__jsn = $__jsj->{'_cmz'}; my $__jso = @{$__jsl}; my $__jsp = $__jsj->{'_aus'}; my $__jsq = ""; my $__jsr = 0; my $__jss = 1; my $__jst = ""; my @__jsu = (); if ($__jsi =~ m/_Calibration(\d+)/i) { $__jsr = $1; } if ($__jsr & 1) { $__jss = 1; } else { $__jss = 2; } my $__jsv = 0; my $__jsw = 30; if (exists $__jsj->{'_bbw'}) { $__jsv = $__jsj->{'_bbw'}; if (exists $__jsj->{'_bdj'}) { $__jsw = $__jsj->{'_bdj'}; } } $__jsh .= "<table class=\"inner_table\" width=\"100%\""; if (exists $__jsj->{'_bal'}) { $__jsh .= " style=\"width: " . $__jsj->{'_bal'} . "px\""; } $__jsh .= ">"; my $__jsx = $__jsj->{'_asc'}; my $__jsy = $__jsk->{'_apa'}; my $__jsz = 0; my $__jta = 0; my $__jtb = ""; my ($__jtp, $__jtq) = acbclib8_4_8::_cjb($__jsm, $__jsx, $__jsl, $__jsv, $__jsk); my $__jtc = @{$__jtp->[0]->{'_cmj'}}; for ($__jsz = 0; $__jsz < $__jtc; $__jsz++) { $__jsh .= "<tr"; if ($__jsz == 0) { $__jsh .= " class=\"acbc_task_top_row\""; } $__jsh .= ">"; if ($__jsv) { $__jsh .= "<td class=\"label_text_cell inner_table_cell\" width=\"" . $__jsw . "%\">\n"; $__jsh .= "<div class=\"label_text\">\n"; $__jsh .= $__jtq->[$__jsz]; $__jsh .= "</div>\n"; $__jsh .= "</td>\n"; } $__jsh .= "<td class=\"level_text_cell inner_table_cell alt_color" . $__jss . "\">"; $__jsh .= "<div class=\"level_text\">\n"; $__jtb = $__jtp->[0]->{'_cmj'}->[$__jsz]; $__jsh .= $__jtb; $__jsh .= "</div>\n"; $__jsh .= "</td>\n"; $__jsh .= "</tr>\n"; } my $__jtd = $__jsj->{'_bar'}; my $__jte = $__jtd->{'_bas'}; my $__jtf = @{$__jte}; my $__jtg = 0; my $__jth = $__jtd->{'_bgu'}; $__jsh .= "<tr class=\"acbc_task_bottom_row\">"; if ($__jsv) { $__jsh .= "<td>&nbsp;</td>\n"; } $__jsh .= "<td class=\"options_cell inner_table_cell alt_color" . $__jss; if ($__jth eq "radio") { $__jsh .= " radio_input_cell\">\n"; $__jsh .= "<table class=\"acbc_calibration_options\">\n"; for ($__jsz = 0; $__jsz < $__jtf; $__jsz++) { $__jtg = $__jte->[$__jsz]->{'_bcm'}; $__jst = $__jtg; push @__jsu, $__jst; $__jsh .= "<tr class=\"clickable\">"; $__jsh .= "<td class=\"input_cell\">"; $__jsh .= ciwlib8_4_8::_bkd($__jsi, $__jst, 1, $__jsj); $__jsh .= "</td>"; $__jsh .= "<td class=\"option_cell\">"; $__jsh .= "<div class=\"options\">\n"; $__jsh .= "<label for=\"" . $__jsi . "_" . $__jtg . "\">\n"; $__jsh .= $__jte->[$__jsz]->{'_bft'}; $__jsh .= "</label></div>\n"; $__jsh .= "</td>"; $__jsh .= "</tr>"; } $__jsh .= "</table>\n"; } elsif ($__jth eq "combo") { $__jsh .= " combo_input_cell\">\n"; $__jsh .= "<select name=\"" . $__jsi . "\">\n"; $__jsh .= "<option value=\"\">"; if (exists $__jtd->{'_bba'}) { $__jsh .= $__jtd->{'_bba'}; } $__jsh .= "</option>\n"; for ($__jsz = 0; $__jsz < $__jtf; $__jsz++) { $__jst = $__jte->[$__jsz]->{'_bcm'}; push @__jsu, $__jst; $__jsh .= "<option value=\"" . $__jst . "\""; if (exists $__jsj->{'_bku'}) { if ($__jsj->{'_bku'}->{$__jsi} eq $__jst) { $__jsh .= " selected"; } } $__jsh .= ">" . $__jte->[$__jsz]->{'_bft'} . "</option>\n"; } $__jsh .= "</select>\n"; } $__jsh .= "</td></tr>\n"; $__jsh .= "</table>\n"; $__jsh .= "<input name=\"" . $__jsi . "_shown\" type=\"hidden\" value=\"" . $__jsn . "\">\n"; if ($authlib8_4_8::_byb) { $__jsh .= "<!--LoadTestMode: <question><name>$__jsi</name><type>acbccalibration</type>"; $__jsh .= "<scaletype>" . $__jth . "</scaletype>"; $__jsh .= "<values>"; foreach my $__jti (@__jsu) { $__jsh .= "<value>" . $__jti . "</value>"; } $__jsh .= "</values>"; $__jsh .= "</question>-->\n"; } my %__jtj = (); $__jtj{'_cna'} = $__jth; $__jtk->{'_bmm'} = \%__jtj; return $__jsh; } sub _bmg { my($__jtt, $__jtu, $__jtv, $__jtw) = @_; my $__jtr = ""; if (exists $__jtt->{'_bmm'}) { my $__jts = $__jtt->{'_bmm'}->{'_cna'}; if ($__jts eq "radio") { $__jtr .= "SSI_RadCheck(\""; $__jtv->{'_bli'} = 1; } elsif ($__jts eq "combo") { $__jtr .= "SSI_ComboCheck(\""; $__jtv->{'_bll'} = 1; } $__jtr .= $__jtt->{'_bgt'} . "\",\"" . $__jtt->{'_bgt'} . "\", \"" . ciwlib8_4_8::_bjo($__jtt->{'_bkt'}->{'_bds'}) . "\", " . $__jtw . ", true)\n"; push @{$__jtu}, $__jtr; } } 1; 
