Frame 1
var gameName = "topmodel";
var adTag = "8ad72958a3944472";
var adLink1 = "http://x.mochiads.com/link/6ad8c11eb9913102";
var adLink2 = "http://x.mochiads.com/link/d91a12a3e43f2ff8";
var adLink3 = "http://x.mochiads.com/link/a9acdb79a2ae42bc";
var adLink4 = "http://x.mochiads.com/link/d87cdea0c597cbc2";
var gameBkgColor = 0;
var loader = null;
var magicWait = 0;
onEnterFrame = function () {
if ((_root.getBytesLoaded() == _root.getBytesTotal()) && (_root._framesloaded == _root._totalframes)) {
if (magicWait == 10) {
var _local2 = attachMovie("bg", "kingbkg", 0);
_local2._x = Stage.width / 2;
_local2._y = Stage.height / 2;
loader = new adloader.AdGameLoader(_root, gameName, adTag, adLink1, adLink2, adLink3, adLink4, gameBkgColor, overrideSrv);
}
if (magicWait == 16) {
gotoAndPlay (2);
}
magicWait++;
}
};
stop();
Frame 2
adloader.mochi.MochiAd.showPreGameAd({id:adTag, res:(Stage.width + "x") + Stage.height, background:3027236, color:6778714, outline:6778714, no_bg:true});
Frame 3
loader.ready();
stop();
Symbol 18 MovieClip [button] Frame 1
#initclip 8
Object.registerClass("button", adloader.HoverButton);
#endinitclip
_droptarget;
stop();
Symbol 57 MovieClip [AllStars] Frame 1
#initclip 7
Object.registerClass("AllStars", adloader.FlareLoop);
#endinitclip
Symbol 64 MovieClip Frame 1
stop();
Symbol 75 MovieClip [dlg] Frame 1
stop();
Symbol 90 MovieClip [__Packages.adloader.AdGameLoader] Frame 0
class adloader.AdGameLoader
{
var m_logbox, m_overrideSrv, m_gameDataTimeoutAt, m_retryCount, m_adLink1, m_adLink2, m_adLink3, m_adLink4, m_gameBkgColor, m_hideBannerAt, m_showGameLogoAt, m_nextAlignBugFixAt, m_i18n, m_parent, m_gameName, m_adTag, m_isFirst, m_isDialogSetup, m_errorShown, m_gameDisplayName, m_originalWidth, m_originalHeight, m_kingbkg, m_kingContainer, m_gameBackground, m_gameParent, m_dialogParent, m_dialog, m_gameClick, m_smallLogo, m_progressLogo, m_bannerContainer, m_errorBox, m_gotoTitleAt, m_readyState, m_gameImage, m_gameForeground, m_retryLoadAt, m_game, m_lastScore, m_starLevel, m_banner, m_bannerId, m_lang, m_mirrorUrl, m_preloadBox, m_responseXml, m_requestXml, m_gameUrl, m_gameId, m_gameData, m_gameImageImage, m_gameImageClick, m_mcl;
function AdGameLoader (aParent, gameName, adTag, adLink1, adLink2, adLink3, adLink4, gameBkgColor, overrideSrv) {
var _local4 = aParent.attachMovie("logbox", "logging", 262144);
_local4._visible = false;
m_logbox = _local4.log_txt;
if ((overrideSrv == undefined) || (overrideSrv == null)) {
m_overrideSrv = "adgames.king.com";
} else {
m_overrideSrv = overrideSrv;
}
Key.addListener(this);
log("starting " + VERSION);
setState("init");
m_gameDataTimeoutAt = -1;
m_retryCount = 0;
m_adLink1 = adLink1;
m_adLink2 = adLink2;
m_adLink3 = adLink3;
m_adLink4 = adLink4;
m_gameBkgColor = gameBkgColor;
log((" gameName=[" + gameName) + "]");
log((" adTag=[" + adTag) + "]");
log((" adLink1=[" + m_adLink1) + "] (bpfc)");
log((" adLink2=[" + m_adLink2) + "] (glog)");
log((" adLink3=[" + m_adLink3) + "] (bpmg)");
log((" adLink4=[" + m_adLink4) + "] (slog)");
log((" gameBkgColor=[" + gameBkgColor) + "]");
m_hideBannerAt = -1;
m_showGameLogoAt = -1;
m_nextAlignBugFixAt = 0;
m_i18n = {};
m_parent = aParent;
m_gameName = gameName;
m_adTag = adTag;
m_isFirst = true;
m_isDialogSetup = false;
m_errorShown = false;
m_gameDisplayName = "???";
var _local3 = Stage.width;
var _local2 = Stage.height;
m_originalWidth = -1;
m_originalHeight = -1;
m_kingbkg = m_parent.kingbkg;
m_parent.scrollRect = new flash.geom.Rectangle(0, 0, Stage.width, Stage.height);
m_kingContainer = m_parent.createEmptyMovieClip("kingroot", 1024);
m_gameBackground = m_kingContainer.createEmptyMovieClip("gameBkg", 1);
m_gameBackground.beginFill(gameBkgColor);
m_gameBackground.moveTo(0, 0);
m_gameBackground.lineTo(_local3, 0);
m_gameBackground.lineTo(_local3, _local2);
m_gameBackground.lineTo(0, _local2);
m_gameBackground.endFill();
m_gameBackground._visible = false;
m_gameBackground.onEnterFrame = mx.utils.Delegate.create(this, earlyEnterFrame);
m_gameParent = m_kingContainer.createEmptyMovieClip("gameparent", 10);
m_gameParent._visible = false;
m_dialogParent = m_kingContainer.createEmptyMovieClip("dlgparent", 11);
m_dialogParent._x = 0;
m_dialogParent._y = 0;
m_dialogParent._visible = false;
m_dialog = m_dialogParent.attachMovie("dlg", "dlg1", 1);
m_dialog._x = _local3 / 2;
m_dialog._y = _local2 / 2;
m_gameClick = m_dialog.attachMovie("click_box", "cbox", 3);
m_gameClick._x = -155;
m_gameClick._y = -152;
m_gameClick._visible = false;
adloader.mochi.MochiServices.addLinkEvent(m_adLink2, getURLForPlayForCash("glog"), m_gameClick);
m_smallLogo = m_dialogParent.attachMovie("kinglogo_static", "logo1", 2);
m_smallLogo._x = Stage.width - 102;
m_smallLogo._y = Stage.height - 56;
m_smallLogo._xscale = 33;
m_smallLogo._yscale = 33;
adloader.mochi.MochiServices.addLinkEvent(m_adLink4, getURLForPlayMoreGames("slog"), m_smallLogo);
m_progressLogo = m_kingContainer.attachMovie("bg_logo", "logo", 20);
m_progressLogo._x = _local3 / 2;
m_progressLogo._y = _local2 / 2;
m_progressLogo._visible = false;
m_progressLogo.progress._visible = false;
m_progressLogo.progress.bar._xscale = 0;
m_bannerContainer = m_dialog.createEmptyMovieClip("bannercont", 23);
m_bannerContainer._x = -155;
m_bannerContainer._y = -152;
m_bannerContainer._visible = false;
m_errorBox = m_kingContainer.attachMovie("errorbox", "err", m_kingContainer.getNextHighestDepth());
m_errorBox._x = (_local3 - m_errorBox._width) / 2;
m_errorBox._y = (_local2 - m_errorBox._height) / 2;
m_errorBox._visible = false;
adloader.mochi.MochiServices.addLinkEvent(m_adLink4, getURLForPlayMoreGames("slog"), m_errorBox);
m_gotoTitleAt = -1;
sendGameDataRequest();
}
function setState(newState) {
if (m_readyState != newState) {
m_readyState = newState;
log("setState(): " + newState);
} else {
log("setState() state already " + newState);
}
}
function log(str) {
var _local3 = ((getTimer() + ": ") + str) + newline;
m_logbox.text = m_logbox.text + _local3;
var _local2 = m_logbox.text.length;
if (_local2 > 8192) {
m_logbox.text = m_logbox.text.substring(_local2 - 8192);
}
m_logbox.scroll = m_logbox.textHeight;
}
function showError() {
if (!m_errorShown) {
m_progressLogo.removeMovieClip();
m_dialogParent.removeMovieClip();
m_gameBackground.removeMovieClip();
m_gameImage.removeMovieClip();
m_gameClick.removeMovieClip();
m_bannerContainer.removeMovieClip();
m_gameParent.removeMovieClip();
m_gameForeground.removeMovieClip();
m_errorBox._visible = true;
m_errorShown = true;
}
}
function ready() {
log("adloader.AdGameLoader.ready() " + m_readyState);
if (m_readyState == "halt") {
showError();
return(undefined);
}
if (m_readyState != "game_ready") {
m_progressLogo._visible = true;
}
m_kingContainer.onEnterFrame = mx.utils.Delegate.create(this, enterFrame);
}
function earlyEnterFrame() {
if (Stage.scaleMode != "showAll") {
log("scaleMode reset.");
Stage.scaleMode = "showAll";
}
}
function enterFrame() {
if (m_readyState == "wait_request") {
if (m_retryCount == 3) {
m_gameDataTimeoutAt = -1;
log("retry count exceeded, aborting.");
setState("halt");
} else if ((m_gameDataTimeoutAt != -1) && (getTimer() > m_gameDataTimeoutAt)) {
m_retryCount++;
sendGameDataRequest();
}
}
if (m_readyState == "game_wait") {
if (m_retryCount == 3) {
log("retry count exceeded, aborting.");
setState("halt");
showError();
return(undefined);
}
if (getTimer() > m_retryLoadAt) {
m_retryCount++;
retryLoadGame();
m_retryLoadAt = -1;
}
}
if (m_readyState == "halt") {
showError();
return(undefined);
}
if (getTimer() > m_nextAlignBugFixAt) {
var _local3 = Stage.width / 2;
var _local2 = Stage.height / 2;
m_kingbkg._x = _local3;
m_kingbkg._y = _local2;
m_dialog._x = _local3;
m_dialog._y = _local2;
Stage.scaleMode = "showAll";
m_nextAlignBugFixAt = getTimer() + 4000;
}
if (m_readyState == "game_unload") {
m_game.gameData = undefined;
m_game._level0.gameData = undefined;
m_game.___myFsCommand = undefined;
unloadMovie (m_game);
m_game = undefined;
setState("game_gone");
}
if (m_readyState == "game_gone") {
m_isDialogSetup = true;
m_gameImage._visible = false;
m_dialog.gotoAndStop(2);
m_dialog.stars_txt.text = m_i18n.stars_column;
m_dialog.targets_txt.text = m_i18n.score_column;
m_dialog.score_txt.text = m_i18n.final_score.split("{0}").join(m_lastScore);
m_dialog.goldstar._visible = m_lastScore >= m_starLevel[0];
m_dialog.silverstar._visible = !m_dialog.goldstar._visible;
m_dialog.level5_score_txt.text = m_starLevel[4];
m_dialog.level5.gotoAndStop(((m_lastScore >= m_starLevel[4]) ? 2 : 1));
m_dialog.level4_score_txt.text = m_starLevel[3];
m_dialog.level4.gotoAndStop(((m_lastScore >= m_starLevel[3]) ? 2 : 1));
m_dialog.level3_score_txt.text = m_starLevel[2];
m_dialog.level3.gotoAndStop(((m_lastScore >= m_starLevel[2]) ? 2 : 1));
m_dialog.level2_score_txt.text = m_starLevel[1];
m_dialog.level2.gotoAndStop(((m_lastScore >= m_starLevel[1]) ? 2 : 1));
m_dialog.level1_score_txt.text = m_starLevel[0];
m_dialog.level1.gotoAndStop(((m_lastScore >= m_starLevel[0]) ? 2 : 1));
m_dialogParent._visible = true;
m_gotoTitleAt = getTimer() + 5000;
sendGameDataRequest();
}
if ((m_hideBannerAt != -1) && (getTimer() > m_hideBannerAt)) {
removeBanner();
}
if ((m_showGameLogoAt != -1) && (getTimer() > m_showGameLogoAt)) {
m_showGameLogoAt = -1;
m_gameImage._visible = true;
}
if (((m_readyState == "game_ready") && (m_gotoTitleAt != -1)) && (getTimer() > m_gotoTitleAt)) {
m_dialog.gotoAndStop(1);
m_gotoTitleAt = -1;
if (m_banner) {
m_banner.removeMovieClip();
}
var _local4 = ((((("http://" + m_mirrorUrl) + "/images/adgame_push/") + m_lang.toLowerCase()) + "/endscreen") + m_bannerId) + "_310x198.swf";
m_banner = m_bannerContainer.createEmptyMovieClip("bannerImage", 1);
m_banner._lockroot = true;
m_banner.loadMovie(_local4);
m_bannerContainer._visible = true;
m_gameClick._visible = true;
m_isDialogSetup = false;
m_hideBannerAt = getTimer() + 14800;
m_showGameLogoAt = getTimer() + 5000;
}
if ((m_readyState == "game_ready") && (!m_isDialogSetup)) {
m_isDialogSetup = true;
m_progressLogo.removeMovieClip();
m_dialog.gotoAndStop(1);
m_dialog.score_txt.text = "";
m_dialog.title_txt.text = m_gameDisplayName;
m_dialog.btn1.label_txt.text = m_i18n.play_btn;
m_dialog.btn1.onPress = mx.utils.Delegate.create(this, onBtnStart);
m_dialog.btn2.label_txt.text = m_i18n.more_btn;
adloader.mochi.MochiServices.addLinkEvent(m_adLink3, getURLForPlayMoreGames("bpmg"), m_dialog.btn2);
m_dialog.btn3.label_txt.text = m_i18n.cash_btn;
adloader.mochi.MochiServices.addLinkEvent(m_adLink1, getURLForPlayForCash("bpfc"), m_dialog.btn3);
m_preloadBox.removeMovieClip();
m_dialogParent._visible = true;
preloadBanner();
}
}
function preloadBanner() {
m_bannerId = 1 + (((Math.random() * 262144) | 0) % 3);
m_preloadBox = m_kingContainer.createEmptyMovieClip("preloaddummy", 50);
m_preloadBox._lockroot = true;
m_preloadBox._visible = false;
var _local3 = new Object();
var ctx = this;
_local3.onLoadInit = function (mc) {
ctx.log("preloadBanner().onLoadInit() load init(), removing.");
unloadMovie (mc);
};
var _local4 = ((((("http://" + m_mirrorUrl) + "/images/adgame_push/") + m_lang.toLowerCase()) + "/endscreen") + m_bannerId) + "_310x198.swf";
var _local5 = m_preloadBox.createEmptyMovieClip("banner", 2);
var _local2 = new MovieClipLoader();
_local2.addListener(_local3);
log("preloadBanner() requesting " + _local4);
_local2.loadClip(_local4, _local5);
}
function removeBanner() {
m_bannerContainer._visible = false;
m_gameClick._visible = false;
m_hideBannerAt = -1;
unloadMovie (m_banner);
m_banner = undefined;
}
function sendGameDataRequest() {
var _local3 = ((("<request><client action=\"getinitdata\" game=\"" + m_gameName) + "\" lang=\"") + System.capabilities.language) + "\" /></request>";
m_responseXml = new XML();
m_responseXml.ignoreWhite = true;
m_responseXml.onHTTPStatus = mx.utils.Delegate.create(this, onHTTPStatus);
m_responseXml.onLoad = mx.utils.Delegate.create(this, onGameData);
var _local2 = ("http://" + m_overrideSrv) + "/servlet/AdGameServlet";
log(("requesting " + _local2) + " ...");
m_gameDataTimeoutAt = getTimer() + 10000;
log((" (request timeout at " + m_gameDataTimeoutAt) + ")");
m_requestXml = new XML(_local3);
m_requestXml.sendAndLoad(_local2, m_responseXml);
m_gameParent.scrollRect = undefined;
setState("wait_request");
}
function onHTTPStatus(http) {
log((" (gamedata http status " + http) + ")");
}
function onGameData() {
m_gameUrl = m_responseXml.firstChild.attributes.path;
m_mirrorUrl = m_responseXml.firstChild.attributes.mirror;
m_lang = m_responseXml.firstChild.attributes.lang;
m_gameId = int(m_responseXml.firstChild.attributes.id);
m_originalWidth = int(m_responseXml.firstChild.attributes.width);
m_originalHeight = int(m_responseXml.firstChild.attributes.height);
m_gameDisplayName = m_responseXml.firstChild.attributes.name;
if ((!m_gameUrl) || (!m_mirrorUrl)) {
log("onGameData FAILED.");
m_gameDataTimeoutAt = getTimer() + 1000;
return(undefined);
}
setState("parse");
log("game download url: " + m_gameUrl);
log("mirror host: " + m_mirrorUrl);
log(((("locale: " + m_lang) + " (") + m_lang.toLowerCase()) + ")");
m_retryCount = 0;
m_gameDataTimeoutAt = -1;
m_starLevel = [0, 0, 0, 0, 0];
m_starLevel[0] = int(m_responseXml.firstChild.attributes.star1);
m_starLevel[1] = int(m_responseXml.firstChild.attributes.star2);
m_starLevel[2] = int(m_responseXml.firstChild.attributes.star3);
m_starLevel[3] = int(m_responseXml.firstChild.attributes.star4);
m_starLevel[4] = int(m_responseXml.firstChild.attributes.star5);
var _local3 = m_responseXml.firstChild.firstChild;
while (_local3 != null) {
if (_local3.nodeName == "gamedata") {
m_gameData = _local3.toString();
}
if (_local3.nodeName == "loader") {
var _local2 = _local3.firstChild;
while (_local2 != null) {
m_i18n[_local2.attributes.id] = _local2.firstChild.nodeValue;
_local2 = _local2.nextSibling;
}
}
_local3 = _local3.nextSibling;
}
if (m_isFirst) {
m_gameImage = m_dialog.createEmptyMovieClip("img", 1);
m_gameImage._x = -155;
m_gameImage._y = -152;
m_gameImageImage = m_gameImage.createEmptyMovieClip("img", 1);
m_gameImageImage._lockroot = true;
m_gameImageImage.loadMovie(((("http://" + m_mirrorUrl) + "/images/games/") + m_gameName) + "_310x198.gif");
m_gameImageClick = m_gameImage.createEmptyMovieClip("click", 2);
m_gameImageClick.beginFill(16711935, 0);
m_gameImageClick.moveTo(0, 0);
m_gameImageClick.lineTo(310, 0);
m_gameImageClick.lineTo(310, 198);
m_gameImageClick.lineTo(0, 198);
m_gameImageClick.onPress = mx.utils.Delegate.create(this, onBtnStart);
}
m_game = m_gameParent.createEmptyMovieClip("game", 1);
if (m_gameForeground) {
m_gameForeground.removeMovieClip();
}
m_gameForeground = m_gameParent.createEmptyMovieClip("gamefg", 10);
m_game._lockroot = true;
retryLoadGame();
}
function retryLoadGame() {
m_retryLoadAt = getTimer() + 5000;
log((" (retry game loading at " + m_retryLoadAt) + ")");
m_mcl = new MovieClipLoader();
m_mcl.addListener(this);
m_mcl.loadClip(m_gameUrl, m_game);
setState("game_wait");
}
function onLoadError(mc, errorCode, httpStatus) {
log((("error during game download, status=" + httpStatus) + ", message=") + errorCode);
if (m_readyState == "game_wait") {
m_retryLoadAt = getTimer() + 5000;
log((" (retry game loading at " + m_retryLoadAt) + ")");
setState("game_wait");
}
}
function onLoadProgress(mc, loaded, total) {
var _local2 = Math.ceil((loaded / total) * 100);
if (m_isFirst) {
m_progressLogo.progress._visible = true;
m_progressLogo.progress.bar._xscale = _local2;
}
log("onLoadProgress() p=" + _local2);
}
function onLoadStart(mc) {
setState("game_almost");
System.security.allowDomain(mc._url);
m_retryLoadAt = -1;
}
function onLoadInit(mc) {
setState("game_ready");
System.security.allowDomain(mc._url);
m_gameParent.scrollRect = new flash.geom.Rectangle(0, 0, m_originalWidth, m_originalHeight);
m_isFirst = false;
m_mcl = undefined;
m_responseXml = undefined;
m_requestXml = undefined;
m_retryCount = 0;
}
function onBtnStart() {
if (m_readyState == "game_ready") {
removeBanner();
m_dialogParent._visible = false;
m_gameParent._visible = true;
m_kingbkg._visible = false;
m_gameBackground._visible = true;
m_isDialogSetup = false;
m_game.___myFsCommand = mx.utils.Delegate.create(this, interceptedFsCommand);
m_game._level0.gameData = m_gameData;
m_game.gameData = m_gameData;
setState("game_play");
}
}
function getURLForPlayMoreGames(tag) {
return(getURLIntoKing("/", tag));
}
function getURLForPlayForCash(tag) {
return(getURLIntoKing("/signup.jsp?gameId=" + m_gameId, tag));
}
function getURLIntoKing(target, tag) {
var _local2 = (("http://www.king.com/servlet/SelectServlet?partner=mochi&target=" + escape(target)) + "&channel=") + getHostURL();
if (tag != undefined) {
_local2 = _local2 + ("," + tag);
}
return(_local2);
}
function getHostURL() {
var _local2 = _url;
var _local1 = _local2.indexOf("//");
if (_local1 != -1) {
_local1 = _local1 + 2;
var _local3 = _local2.indexOf("/", _local1 + 2);
if (_local3 != -1) {
return(_local2.substring(_local1, _local3));
}
}
return("[unknown]");
}
function interceptedFsCommand(command, target) {
if ((m_readyState != "game_started") && (command == "gameStart")) {
setState("game_started");
}
if ((m_readyState == "game_started") && ((command == "gameEnd") || (command == "gameOver"))) {
setState("game_end");
m_lastScore = target;
}
if ((m_readyState == "game_end") && ((command == "gameQuit") || (command == "gameOver"))) {
setState("game_unload");
m_gameBackground._visible = false;
m_gameParent._visible = false;
m_kingbkg._visible = true;
Mouse.show();
}
}
function onKeyDown() {
if (Key.getCode() == 107) {
m_logbox._parent._visible = true;
}
}
function onKeyUp() {
if (Key.getCode() == 107) {
m_logbox._parent._visible = false;
}
}
static var VERSION = "1.50 (2008-11-18)";
}
Symbol 91 MovieClip [__Packages.mx.utils.Delegate] Frame 0
class mx.utils.Delegate extends Object
{
var func;
function Delegate (f) {
super();
func = f;
}
static function create(obj, func) {
var _local2 = function () {
var _local2 = arguments.callee.target;
var _local3 = arguments.callee.func;
return(_local3.apply(_local2, arguments));
};
_local2.target = obj;
_local2.func = func;
return(_local2);
}
function createDelegate(obj) {
return(create(obj, func));
}
}
Symbol 92 MovieClip [__Packages.adloader.mochi.MochiServices] Frame 0
class adloader.mochi.MochiServices
{
static var _id, _container, _clip, _sendChannelName, _rcvChannelName, __get__comChannelName, onError, _listenChannel, _rcvChannel, _loader, _loaderListener, _sendChannel;
function MochiServices () {
}
static function get id() {
return(_id);
}
static function get clip() {
return(_container);
}
static function get childClip() {
return(_clip);
}
static function getVersion() {
return("1.35");
}
static function allowDomains(server) {
var _local1 = server.split("/")[2].split(":")[0];
if (System.security) {
if (System.security.allowDomain) {
System.security.allowDomain("*");
System.security.allowDomain(_local1);
}
if (System.security.allowInsecureDomain) {
System.security.allowInsecureDomain("*");
System.security.allowInsecureDomain(_local1);
}
}
return(_local1);
}
static function get isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function set comChannelName(val) {
if (val != undefined) {
if (val.length > 3) {
_sendChannelName = val + "_fromgame";
_rcvChannelName = val;
initComChannels();
}
}
//return(__get__comChannelName());
}
static function get connected() {
return(_connected);
}
static function connect(id, clip, onError) {
if ((!_connected) && (_clip == undefined)) {
_connecting = true;
init(id, clip);
}
if (onError != undefined) {
adloader.mochi.MochiServices.onError = onError;
} else if (adloader.mochi.MochiServices.onError == undefined) {
adloader.mochi.MochiServices.onError = function (errorCode) {
};
}
}
static function disconnect() {
if (_connected || (_connecting)) {
_connecting = (_connected = false);
flush(true);
if (_clip != undefined) {
_clip.removeMovieClip();
delete _clip;
}
_listenChannel.close();
_rcvChannel.close();
}
}
static function init(id, clip) {
_id = id;
if (clip != undefined) {
_container = clip;
} else {
_container = _root;
}
loadCommunicator(id, _container);
}
static function loadCommunicator(id, clip) {
var _local2 = "_mochiservices_com_" + id;
if (_clip != null) {
return(_clip);
}
if (!isNetworkAvailable) {
return(null);
}
allowDomains(_gatewayURL);
_clip = clip.createEmptyMovieClip(_local2, 10336, false);
_loader = new MovieClipLoader();
if (_loaderListener.waitInterval != null) {
clearInterval(_loaderListener.waitInterval);
}
_loaderListener = {};
_loaderListener.onLoadError = function (target_mc, errorCode, httpStatus) {
adloader.mochi.MochiServices.disconnect();
adloader.mochi.MochiServices.onError.apply(null, [errorCode]);
};
_loaderListener.onLoadStart = function (target_mc) {
this.isLoading = true;
};
_loaderListener.startTime = getTimer();
_loaderListener.wait = function () {
if ((getTimer() - this.startTime) > 10000) {
if (!this.isLoading) {
adloader.mochi.MochiServices.disconnect();
adloader.mochi.MochiServices.onError.apply(null, ["IOError"]);
}
clearInterval(this.waitInterval);
}
};
_loaderListener.waitInterval = setInterval(_loaderListener, "wait", 1000);
_loader.addListener(_loaderListener);
_loader.loadClip(_gatewayURL, _clip);
_sendChannel = new LocalConnection();
_sendChannel._queue = [];
_rcvChannel = new LocalConnection();
_rcvChannel.allowDomain = function (d) {
return(true);
};
_rcvChannel.allowInsecureDomain = _rcvChannel.allowDomain;
_rcvChannel._nextcallbackID = 0;
_rcvChannel._callbacks = {};
listen();
return(_clip);
}
static function onStatus(infoObject) {
if (!(infoObject.level === "error")) {
} else {
_connected = false;
_listenChannel.connect(_listenChannelName);
}
}
static function listen() {
_listenChannel = new LocalConnection();
_listenChannel.handshake = function (args) {
adloader.mochi.MochiServices.__set__comChannelName(args.newChannel);
};
_listenChannel.allowDomain = function (d) {
return(true);
};
_listenChannel.allowInsecureDomain = _listenChannel.allowDomain;
_listenChannel.connect(_listenChannelName);
}
static function initComChannels() {
if (!_connected) {
_sendChannel.onStatus = function (infoObject) {
adloader.mochi.MochiServices.onStatus(infoObject);
};
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"});
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"registerGame", id:_id, clip:_clip, version:getVersion()});
_rcvChannel.onStatus = function (infoObject) {
adloader.mochi.MochiServices.onStatus(infoObject);
};
_rcvChannel.onReceive = function (pkg) {
var _local5 = pkg.callbackID;
var _local4 = this._callbacks[_local5];
if (!_local4) {
return(undefined);
}
var _local2 = _local4.callbackMethod;
var _local3 = _local4.callbackObject;
if (_local3 && (typeof(_local2) == "string")) {
_local2 = _local3[_local2];
}
if (_local2 != undefined) {
_local2.apply(_local3, pkg.args);
}
delete this._callbacks[_local5];
};
_rcvChannel.onError = function () {
adloader.mochi.MochiServices.onError.apply(null, ["IOError"]);
};
_rcvChannel.connect(_rcvChannelName);
_connecting = false;
_connected = true;
_listenChannel.close();
while (_sendChannel._queue.length > 0) {
_sendChannel.send(_sendChannelName, "onReceive", _sendChannel._queue.shift());
}
}
}
static function flush(error) {
var _local1;
var _local2;
while (_sendChannel._queue.length > 0) {
_local1 = _sendChannel._queue.shift();
if (_local1.callbackID != null) {
_local2 = _rcvChannel._callbacks[_local1.callbackID];
}
delete _rcvChannel._callbacks[_local1.callbackID];
if (error) {
handleError(_local1.args, _local2.callbackObject, _local2.callbackMethod);
}
}
}
static function handleError(args, callbackObject, callbackMethod) {
if (args != null) {
if (args.onError != null) {
args.onError.apply(null, ["NotConnected"]);
}
if ((args.options != null) && (args.options.onError != null)) {
args.options.onError.apply(null, ["NotConnected"]);
}
}
if (callbackMethod != null) {
args = {};
args.error = true;
args.errorCode = "NotConnected";
if ((callbackObject != null) && (typeof(callbackMethod) == "string")) {
callbackObject[callbackMethod](args);
} else if (callbackMethod != null) {
callbackMethod.apply(args);
}
}
}
static function send(methodName, args, callbackObject, callbackMethod) {
if (_connected) {
_sendChannel.send(_sendChannelName, "onReceive", {methodName:methodName, args:args, callbackID:_rcvChannel._nextcallbackID});
} else {
if ((_clip == undefined) || (!_connecting)) {
onError.apply(null, ["NotConnected"]);
handleError(args, callbackObject, callbackMethod);
flush(true);
return(undefined);
}
_sendChannel._queue.push({methodName:methodName, args:args, callbackID:_rcvChannel._nextcallbackID});
}
_rcvChannel._callbacks[_rcvChannel._nextcallbackID] = {callbackObject:callbackObject, callbackMethod:callbackMethod};
_rcvChannel._nextcallbackID++;
}
static function addLinkEvent(url, burl, btn, onClick) {
var _local2 = new Object();
_local2.mav = getVersion();
_local2.swfv = btn.getSWFVersion() || 6;
_local2.swfurl = btn._url;
_local2.fv = System.capabilities.version;
_local2.os = System.capabilities.os;
_local2.lang = System.capabilities.language;
_local2.scres = (System.capabilities.screenResolutionX + "x") + System.capabilities.screenResolutionY;
var s = "?";
var _local3 = 0;
for (var _local6 in _local2) {
if (_local3 != 0) {
s = s + "&";
}
_local3++;
s = ((s + _local6) + "=") + escape(_local2[_local6]);
}
var _local4 = btn.createEmptyMovieClip("clk", 1001);
var _local8 = btn._width * (100 / btn._xscale);
var _local7 = btn._height * (100 / btn._yscale);
_local4.beginFill(1044735, 0);
_local4.moveTo(0, 0);
_local4.lineTo(_local8, 0);
_local4.lineTo(_local8, _local7);
_local4.lineTo(0, _local7);
_local4.lineTo(0, 0);
_local4.endFill();
_local4.onRelease = function () {
var _local3;
var _local2 = new LoadVars();
var timeout = 1500;
var t0 = getTimer();
var ping = this.createEmptyMovieClip("ping", 777);
this.onEnterFrame = function () {
if ((ping._totalframes > 0) && (ping._totalframes == ping._framesloaded)) {
delete this.onEnterFrame;
delete this.ping;
getURL (url + s, "_blank");
} else if ((getTimer() - t0) > timeout) {
delete this.onEnterFrame;
delete this.ping;
getURL (burl, "_blank");
}
};
ping.loadMovie("http://x.mochiads.com/linkping.swf?t=" + getTimer());
if (onClick != undefined) {
onClick();
}
};
}
static var _gatewayURL = "http://www.mochiads.com/static/lib/services/services.swf";
static var _listenChannelName = "__mochiservices";
static var _connecting = false;
static var _connected = false;
}
Symbol 93 MovieClip [__Packages.adloader.FlareLoop] Frame 0
class adloader.FlareLoop extends MovieClip
{
var m_firstRender, m_fps, stop, __get__fps, _visible, m_startTime, m_lastFrame, _totalframes, gotoAndStop;
function FlareLoop () {
super();
}
function Flare() {
m_firstRender = true;
m_fps = 30;
stop();
}
function restart() {
m_firstRender = true;
}
function set fps(v) {
m_fps = v;
//return(__get__fps());
}
function onEnterFrame() {
var _local3 = getTimer();
if (m_firstRender) {
_visible = true;
m_startTime = _local3;
m_lastFrame = -1;
m_firstRender = false;
}
var _local4 = (1 / m_fps) * 1000;
var _local2 = Math.round(((_local3 - m_startTime) / _local4) + 1) | 0;
if (_local2 >= _totalframes) {
m_firstRender = true;
_local2 = _totalframes;
}
if (_local2 != m_lastFrame) {
gotoAndStop(_local2);
m_lastFrame = _local2;
}
}
}
Symbol 94 MovieClip [__Packages.adloader.HoverButton] Frame 0
class adloader.HoverButton extends MovieClip
{
var clk, gotoAndStop;
function HoverButton () {
super();
}
function onRelease() {
if (clk != undefined) {
clk.onRelease();
}
}
function onRollOver() {
gotoAndStop(2);
}
function onRollOut() {
gotoAndStop(1);
}
function onRollOutside() {
gotoAndStop(1);
}
}
Symbol 95 MovieClip [__Packages.adloader.mochi.MochiAd] Frame 0
class adloader.mochi.MochiAd
{
function MochiAd () {
}
static function getVersion() {
return("2.6");
}
static function showPreGameAd(options) {
var _local26 = {clip:_root, ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:16747008, background:16777161, outline:13994812, no_progress_bar:false, ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}, ad_failed:function () {
}, ad_loaded:function (width, height) {
}, ad_skipped:function () {
}, ad_progress:function (percent) {
}};
options = _parseOptions(options, _local26);
if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def") {
options.ad_started();
options.ad_finished();
return(undefined);
}
var clip = options.clip;
var _local22 = 11000;
var _local25 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_failed();
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local14 = _getRes(options);
var _local4 = _local14[0];
var _local13 = _local14[1];
mc._x = _local4 * 0.5;
mc._y = _local13 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk._x = _local4 * -0.5;
chk._y = _local13 * -0.5;
var _local6 = chk.createEmptyMovieClip("_mochiad_bar", 4);
if (options.no_progress_bar) {
_local6._visible = false;
delete options.no_progress_bar;
} else {
_local6._x = 10;
_local6._y = _local13 - 20;
}
var _local21 = options.color;
delete options.color;
var _local19 = options.background;
delete options.background;
var _local23 = options.outline;
delete options.outline;
var _local5 = _local6.createEmptyMovieClip("_outline", 1);
_local5.beginFill(_local19);
_local5.moveTo(0, 0);
_local5.lineTo(_local4 - 20, 0);
_local5.lineTo(_local4 - 20, 10);
_local5.lineTo(0, 10);
_local5.lineTo(0, 0);
_local5.endFill();
var _local3 = _local6.createEmptyMovieClip("_inside", 2);
_local3.beginFill(_local21);
_local3.moveTo(0, 0);
_local3.lineTo(_local4 - 20, 0);
_local3.lineTo(_local4 - 20, 10);
_local3.lineTo(0, 10);
_local3.lineTo(0, 0);
_local3.endFill();
_local3._xscale = 0;
var _local7 = _local6.createEmptyMovieClip("_outline", 3);
_local7.lineStyle(0, _local23, 100);
_local7.moveTo(0, 0);
_local7.lineTo(_local4 - 20, 0);
_local7.lineTo(_local4 - 20, 10);
_local7.lineTo(0, 10);
_local7.lineTo(0, 0);
chk.ad_msec = _local22;
chk.ad_timeout = _local25;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
adloader.mochi.MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.regContLC = function (lc_name) {
mc._containerLCName = lc_name;
};
var sendHostProgress = false;
mc.lc.sendHostLoadProgress = function (lc_name) {
sendHostProgress = true;
};
mc.lc.adLoaded = options.ad_loaded;
mc.lc.adSkipped = options.ad_skipped;
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec;
};
mc.lc.rpc = function (callbackID, arg) {
adloader.mochi.MochiAd.rpc(clip, callbackID, arg);
};
mc.rpcTestFn = function (s) {
return(s);
};
chk.onEnterFrame = function () {
var _local6 = this._parent._parent;
var _local11 = this._parent._mochiad_ctr;
var _local5 = getTimer() - this.started;
var _local3 = false;
var _local4 = _local6.getBytesTotal();
var _local8 = _local6.getBytesLoaded();
var _local2 = (100 * _local8) / _local4;
var _local10 = (100 * _local5) / chk.ad_msec;
var _local9 = this._mochiad_bar._inside;
var _local13 = Math.min(100, Math.min(_local2 || 0, _local10));
_local13 = Math.max(this.last_pcnt, _local13);
this.last_pcnt = _local13;
_local9._xscale = _local13;
options.ad_progress(_local13);
if (sendHostProgress) {
clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"hostLoadPcnt", pcnt:_local2});
if (_local2 == 100) {
sendHostProgress = false;
}
}
if (!chk.showing) {
var _local7 = _local11.getBytesTotal();
if ((_local7 > 0) || (typeof(_local7) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if ((_local5 > chk.ad_timeout) && (_local2 == 100)) {
options.ad_failed();
_local3 = true;
}
}
if (_local5 > chk.ad_msec) {
_local3 = true;
}
if (((_local4 > 0) && (_local8 >= _local4)) && (_local3)) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
}
}
};
}
static function showClickAwayAd(options) {
var _local9 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showClickAwayAd", res:"300x250", no_bg:true, ad_started:function () {
}, ad_finished:function () {
}, ad_loaded:function (width, height) {
}, ad_failed:function () {
}, ad_skipped:function () {
}};
options = _parseOptions(options, _local9);
var clip = options.clip;
var _local8 = options.ad_timeout;
delete options.ad_timeout;
if (!load(options)) {
options.ad_failed();
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local4 = _getRes(options);
var _local10 = _local4[0];
var _local7 = _local4[1];
mc._x = _local10 * 0.5;
mc._y = _local7 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk.ad_timeout = _local8;
chk.started = getTimer();
chk.showing = false;
mc.lc.adLoaded = options.ad_loaded;
mc.lc.adSkipped = options.ad_skipped;
mc.lc.rpc = function (callbackID, arg) {
adloader.mochi.MochiAd.rpc(clip, callbackID, arg);
};
mc.rpcTestFn = function (s) {
return(s);
};
var _local20 = false;
mc.lc.regContLC = function (lc_name) {
mc._containerLCName = lc_name;
};
chk.onEnterFrame = function () {
var _local5 = this._parent._mochiad_ctr;
var _local4 = getTimer() - this.started;
var _local2 = false;
if (!chk.showing) {
var _local3 = _local5.getBytesTotal();
if ((_local3 > 0) || (typeof(_local3) == "undefined")) {
_local2 = true;
chk.showing = true;
chk.started = getTimer();
} else if (_local4 > chk.ad_timeout) {
options.ad_failed();
_local2 = true;
}
}
if (_local2) {
delete this.onEnterFrame;
}
};
}
static function showInterLevelAd(options) {
var _local13 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}, ad_failed:function () {
}, ad_loaded:function (width, height) {
}, ad_skipped:function () {
}};
options = _parseOptions(options, _local13);
var clip = options.clip;
var _local10 = 11000;
var _local12 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_failed();
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local5 = _getRes(options);
var _local14 = _local5[0];
var _local11 = _local5[1];
mc._x = _local14 * 0.5;
mc._y = _local11 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk.ad_msec = _local10;
chk.ad_timeout = _local12;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
adloader.mochi.MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.adLoaded = options.ad_loaded;
mc.lc.adSkipped = options.ad_skipped;
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec - 250;
};
mc.lc.rpc = function (callbackID, arg) {
adloader.mochi.MochiAd.rpc(clip, callbackID, arg);
};
mc.rpcTestFn = function (s) {
return(s);
};
chk.onEnterFrame = function () {
var _local5 = this._parent._mochiad_ctr;
var _local4 = getTimer() - this.started;
var _local2 = false;
if (!chk.showing) {
var _local3 = _local5.getBytesTotal();
if ((_local3 > 0) || (typeof(_local3) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local4 > chk.ad_timeout) {
options.ad_failed();
_local2 = true;
}
}
if (_local4 > chk.ad_msec) {
_local2 = true;
}
if (_local2) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
}
}
};
}
static function showPreloaderAd(options) {
showPreGameAd(options);
}
static function showTimedAd(options) {
showInterLevelAd(options);
}
static function _allowDomains(server) {
var _local1 = server.split("/")[2].split(":")[0];
if (System.security) {
if (System.security.allowDomain) {
System.security.allowDomain("*");
System.security.allowDomain(_local1);
}
if (System.security.allowInsecureDomain) {
System.security.allowInsecureDomain("*");
System.security.allowInsecureDomain(_local1);
}
}
return(_local1);
}
static function load(options) {
var _local13 = {clip:_root, server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = _parseOptions(options, _local13);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local9 = options.clip;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local9._mochiad_loaded) {
return(null);
}
var _local12 = options.depth;
delete options.depth;
var _local6 = _local9.createEmptyMovieClip("_mochiad", _local12);
var _local11 = _getRes(options);
options.res = (_local11[0] + "x") + _local11[1];
options.server = options.server + options.id;
delete options.id;
_local9._mochiad_loaded = true;
var _local4 = _local6.createEmptyMovieClip("_mochiad_ctr", 1);
for (var _local7 in options) {
_local4[_local7] = options[_local7];
}
var _local10 = _local4.server;
delete _local4.server;
var _local14 = _allowDomains(_local10);
_local6.onEnterFrame = function () {
if (this._mochiad_ctr._url != this._url) {
this.onEnterFrame = function () {
if (!this._mochiad_ctr) {
delete this.onEnterFrame;
adloader.mochi.MochiAd.unload(this._parent);
}
};
}
};
var _local5 = new LocalConnection();
var _local8 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local5.mc = _local6;
_local5.name = _local8;
_local5.hostname = _local14;
_local5.allowDomain = function (d) {
return(true);
};
_local5.allowInsecureDomain = _local5.allowDomain;
_local5.connect(_local8);
_local6.lc = _local5;
_local4.lc = _local8;
_local4.st = getTimer();
_local4.loadMovie(_local10 + ".swf", "POST");
return(_local6);
}
static function unload(clip) {
if (typeof(clip) == "undefined") {
clip = _root;
}
if (clip.clip && (clip.clip._mochiad)) {
clip = clip.clip;
}
if (!clip._mochiad) {
return(false);
}
if (clip._mochiad._containerLCName != undefined) {
clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"unload"});
}
clip._mochiad.removeMovieClip();
delete clip._mochiad_loaded;
delete clip._mochiad;
return(true);
}
static function _isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function _getRes(options) {
var _local3 = options.clip.getBounds();
var _local2 = 0;
var _local1 = 0;
if (typeof(options.res) != "undefined") {
var _local4 = options.res.split("x");
_local2 = parseFloat(_local4[0]);
_local1 = parseFloat(_local4[1]);
} else {
_local2 = _local3.xMax - _local3.xMin;
_local1 = _local3.yMax - _local3.yMin;
}
if ((_local2 == 0) || (_local1 == 0)) {
_local2 = Stage.width;
_local1 = Stage.height;
}
return([_local2, _local1]);
}
static function _parseOptions(options, defaults) {
var _local4 = {};
for (var _local8 in defaults) {
_local4[_local8] = defaults[_local8];
}
if (options) {
for (var _local8 in options) {
_local4[_local8] = options[_local8];
}
}
if (_root.mochiad_options) {
var _local5 = _root.mochiad_options.split("&");
var _local2 = 0;
while (_local2 < _local5.length) {
var _local3 = _local5[_local2].split("=");
_local4[unescape(_local3[0])] = unescape(_local3[1]);
_local2++;
}
}
if (_local4.id == "test") {
}
return(_local4);
}
static function rpc(clip, callbackID, arg) {
switch (arg.id) {
case "setValue" :
setValue(clip, arg.objectName, arg.value);
break;
case "getValue" :
var _local4 = getValue(clip, arg.objectName);
clip._mochiad.lc.send(clip._mochiad._containerLCName, "rpcResult", callbackID, _local4);
break;
case "runMethod" :
var _local3 = runMethod(clip, arg.method, arg.args);
clip._mochiad.lc.send(clip._mochiad._containerLCName, "rpcResult", callbackID, _local3);
}
}
static function setValue(base, objectName, value) {
var _local2 = objectName.split(".");
var _local1;
_local1 = 0;
while (_local1 < (_local2.length - 1)) {
if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) {
return(undefined);
}
base = base[_local2[_local1]];
_local1++;
}
base[_local2[_local1]] = value;
}
static function getValue(base, objectName) {
var _local2 = objectName.split(".");
var _local1;
_local1 = 0;
while (_local1 < (_local2.length - 1)) {
if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) {
return(undefined);
}
base = base[_local2[_local1]];
_local1++;
}
return(base[_local2[_local1]]);
}
static function runMethod(base, methodName, argsArray) {
var _local2 = methodName.split(".");
var _local1;
_local1 = 0;
while (_local1 < (_local2.length - 1)) {
if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) {
return(undefined);
}
base = base[_local2[_local1]];
_local1++;
}
if (typeof(base[_local2[_local1]]) == "function") {
return(base[_local2[_local1]].apply(base, argsArray));
}
return(undefined);
}
}