if(!window.Websites)window.Websites={};;var soundManager={};;Websites.GameMain=function(){};Websites.GameMain.prototype={HandleLoad:function(plugIn,userContext,rootElement){this.plugIn=plugIn;this.root=rootElement;this.plugIn.settings.enableFrameRateCounter=true;this.boardTime=200;this.totalScore=0;this.scoreMultiplier=5;this.soundEnabled=true;this.identComplete=false;this.assetsLoaded=false;this.paused=false;this.view=new Websites.ViewStack();this.view.Initialize(plugIn,userContext,rootElement);this.view.identAnimationCompleteHandler=Silverlight.createDelegate(this,this.IdentComplete);this.view.levelSelectedHandler=Silverlight.createDelegate(this,this.LevelSelected);this.view.boardWonHandler=Silverlight.createDelegate(this,this.BoardWon);this.view.boardLostHandler=Silverlight.createDelegate(this,this.BoardLost);this.view.boardPauseHandler=Silverlight.createDelegate(this,this.BoardPause);this.view.boardUnpauseHandler=Silverlight.createDelegate(this,this.BoardUnpause);this.view.openGameInstructionsHandler=Silverlight.createDelegate(this,this.OpenGameInstructions);this.view.closeGameInstructionsHandler=Silverlight.createDelegate(this,this.CloseGameInstructions);this.view.levelCompletedHandler=Silverlight.createDelegate(this,this.LevelComplete);this.view.gameResetHandler=Silverlight.createDelegate(this,this.ResetGame);this.view.restartBoardHandler=Silverlight.createDelegate(this,this.RestartBoard);this.view.toggleSoundHandler=Silverlight.createDelegate(this,this.ToggleSound);var preloaderDownloader=this.plugIn.createObject("downloader");preloaderDownloader.addEventListener("Completed",Silverlight.createDelegate(this,this.DownloadedPreloader));preloaderDownloader.open("GET","PreloadAssets.zip");preloaderDownloader.send();},DownloadedPreloader:function(sender,eventArgs){this.assetLoader=this.plugIn.createObject("downloader");this.assetLoader.addEventListener("Completed",Silverlight.createDelegate(this,this.DownloadedAssets));this.assetLoader.addEventListener("DownloadProgressChanged",Silverlight.createDelegate(this,this.AssetProgressChanged));this.assetLoader.open("GET","GameAssets.zip");this.assetLoader.send();this.view.SetupPreloadingScreens(sender);},AssetProgressChanged:function(sender,eventArgs){this.view.SetPreloaderPercentage(sender.downloadProgress);},DownloadedAssets:function(sender,eventArgs){this.assetsLoaded=true;this.view.removePreloader();if(this.identComplete){this.SetupGame();}},IdentComplete:function(sender,eventArgs){this.identComplete=true;this.view.removeIdentAnimation();if(this.assetsLoaded){this.SetupGame();}},SetupGame:function(){this.model=new Websites.GameBoards();this.model.Initialize();soundManager=new Websites.SoundManager();soundManager.Initialize(this.assetLoader,this.root);soundManager.musicLoadedHandler=Silverlight.createDelegate(this,this.MusicLoaded);},MusicLoaded:function(){this.view.setupGame(this.assetLoader,this.model.GetTotalBoardCount(),this.RetrieveLevelProgress());this.soundEnabled=this.RetrieveAudioSettings();if(this.soundEnabled){this.view.enableSound();soundManager.setMuteAll(false);}else{this.view.disableSound();soundManager.setMuteAll(true);}},LevelSelected:function(boardIndex){this.currentBoard=this.model.GetSpecificBoard(boardIndex);this.view.setupBoard(this.currentBoard,this.totalScore,this.model.GetCurrentBoardCount());this.view.playGame();this.StartBoardTimer();},StartBoardTimer:function(){this.scoreTimerCount=this.boardTime;this.scoreInterval=setInterval(Silverlight.createDelegate(this,this.UpdateBoardTime),1000);this.view.updateBoardTime(this.scoreTimerCount);},UpdateBoardTime:function(){if(!this.paused){this.view.updateBoardTime(--this.scoreTimerCount);if(this.scoreTimerCount==0){this.view.boardTimeExpired();}}},BoardWon:function(){clearInterval(this.scoreInterval);this.view.updateLevelComplete(this.model.GetCurrentBoardCount());var previousScore=this.totalScore;var boardScore=this.scoreTimerCount*this.scoreMultiplier;this.totalScore+=boardScore;this.view.showLevelComplete(boardScore,this.totalScore);},BoardLost:function(){clearInterval(this.scoreInterval);this.view.showGameOver(null,null);},BoardPause:function(){this.paused=true;this.view.pauseGame();},BoardUnpause:function(){this.paused=false;this.view.resumeGame();},OpenGameInstructions:function(){this.paused=true;this.view.showGameInstructions();},CloseGameInstructions:function(){this.paused=false;this.view.hideGameInstructions();},LevelComplete:function(){this.currentBoard=this.model.GetNextBoard();var boardIndex=this.model.GetCurrentBoardCount();if(this.RetrieveLevelProgress("levelReached")<boardIndex){this.SaveLevelProgress(boardIndex);this.view.updateChooseLevel(boardIndex);}; 
if(this.currentBoard!=null){this.view.setupBoard(this.currentBoard,this.totalScore,boardIndex);this.view.playGame();this.StartBoardTimer();}else{this.view.showGameComplete(null,null);}},ResetGame:function(){clearInterval(this.scoreInterval);this.paused=false;this.model.ResetBoardCount();this.totalScore=0;this.view.updateChooseLevel(this.RetrieveLevelProgress());this.view.showMainMenu(null,null);},RestartBoard:function(){this.model.RandomizeBoard(this.currentBoard);this.view.setupBoard(this.currentBoard,this.totalScore,this.model.GetCurrentBoardCount());this.view.playGame();this.StartBoardTimer();},ToggleSound:function(){this.soundEnabled=!this.soundEnabled;if(this.soundEnabled){this.view.enableSound();soundManager.setMuteAll(false);}else{this.view.disableSound();soundManager.setMuteAll(true);}this.SaveAudioSettings(this.soundEnabled);},SaveLevelProgress:function(levelReached){var expire=new Date();expire.setTime(expire.getTime()+30*365*24*60*60*1000);this.SetCookie("levelReached",levelReached,expire);},RetrieveLevelProgress:function(){var result=this.GetCookie("levelReached");if(result==null){result=1;}return result;},SaveAudioSettings:function(enabled){var expire=new Date();expire.setTime(expire.getTime()+30*365*24*60*60*1000);this.SetCookie("audio",enabled.toString(),expire);},RetrieveAudioSettings:function(){var result=this.GetCookie("audio");if(result=="false"){result=false;}else{result=true;}return result;},SetCookie:function(name,value,expires,path,domain,secure){var curCookie=name+"="+escape(value)+((expires)?"; expires="+expires.toGMTString():"")+((path)?"; path="+path:"")+((domain)?"; domain="+domain:"")+((secure)?"; secure":"");document.cookie=curCookie;},GetCookie:function(name){var dc=document.cookie;var prefix=name+"=";var begin=dc.indexOf("; "+prefix);if(begin==-1){begin=dc.indexOf(prefix);if(begin!=0)return null;}else{begin+=2;}var end=document.cookie.indexOf(";",begin);if(end==-1){end=dc.length;}return unescape(dc.substring(begin+prefix.length,end));},DeleteCookie:function(name,path,domain){if(getCookie(name)){document.cookie=name+"="+((path)?"; path="+path:"")+((domain)?"; domain="+domain:"")+"; expires=Thu, 01-Jan-70 00:00:01 GMT";}}};if(!window.Websites)window.Websites={};;Websites.Sound=function(){};Websites.Sound.prototype={initialize:function(downloader,part,root){this.loadedHandler=null;this.control=root.getHost();this.rootElement=root;this.downloader=downloader;this.part=part;var xamlString=downloader.getResponseText("View/Sound.xaml");this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.rootElement.children.add(this.xaml);this.myMediaElement1=this.xaml.findName("myMediaElement1");this.myMediaElement2=this.xaml.findName("myMediaElement2");this.fadeInAnimation=this.xaml.findName("FadeIn");this.fadeOutAnimation=this.xaml.findName("FadeOut");this.fadeOutAnimation.addEventListener("Completed",Silverlight.createDelegate(this,this.fadeoutComplete));this.isMuted=true;this.soundsOpened=0;this.myMediaElement1.AutoPlay=false;this.myMediaElement1.setSource(downloader,part);this.myMediaElement1.AddEventListener("MediaOpened",Silverlight.createDelegate(this,this.mediaOpened));this.myMediaElement1.addEventListener("MarkerReached",Silverlight.createDelegate(this,this.timeLeft));this.myMediaElement1.addEventListener("MediaEnded",Silverlight.createDelegate(this,this.soundStopped));this.myMediaElement2.AutoPlay=false;this.myMediaElement2.setSource(downloader,part);this.myMediaElement1.AddEventListener("MediaOpened",Silverlight.createDelegate(this,this.mediaOpened));this.myMediaElement2.addEventListener("MarkerReached",Silverlight.createDelegate(this,this.timeLeft));this.myMediaElement2.addEventListener("MediaEnded",Silverlight.createDelegate(this,this.soundStopped));},mediaOpened:function(){this.soundsOpened++;if(this.soundsOpened==2&&this.loadedHandler!=null){this.loadedHandler();}},playOnce:function(){if(this.isMuted){this.myMediaElement1.volume=0;}else{if(this.myMediaElement1.CurrentState=="Playing"){this.myMediaElement1.stop();}this.myMediaElement1.volume=1;this.loopMusic=false;this.myMediaElement1.play();}},playLoop:function(){if(!this.isMuted){this.loopMusic=true;this.fadeInAnimation.Begin();this.myMediaElement1.play();this.currentPlay=this.myMediaElement1;this.nextPlay=this.myMediaElement2;}else{this.myMediaElement1.volume=0;this.myMediaElement2.volume=0;}},soundStopped:function(sender,eventArgs){sender.stop();},stop:function(){this.currentPlay.stop();this.nextPlay.stop();},fadeIn:function(){if(this.isMuted==false){this.fadeInAnimation.Begin();}},fadeOut:function(){this.loopMusic=false;if(this.currentPlay!=null&&this.currentPlay.volume>0){this.fadeOutAnimation.Begin();}},setVolume:function(volume){this.myMediaElement.volume=volume;},timeLeft:function(sender,markerEventArgs){if(this.loopMusic==true){if(markerEventArgs.marker.Text=="stop"){var currentPlay=this.currentPlay;this.currentPlay=this.nextPlay;this.nextPlay=currentPlay;this.currentPlay.volume=0;this.currentPlay.play();}else{this.nextPlay.volume=0;if(this.isMuted==false){this.currentPlay.volume=.5;}}}},fadeoutComplete:function(sender,markerEventArgs){if(this.currentPlay!=null){this.currentPlay.stop();this.nextPlay.stop();}},mute:function(){this.loopMusic=false;this.isMuted=true;this.fadeOut();},unMute:function(){this.loopMusic=true;this.fadeInAnimation.Begin();this.myMediaElement1.play();this.currentPlay=this.myMediaElement1;this.nextPlay=this.myMediaElement2;}}; 
if(!window.Websites)window.Websites={};;Websites.ViewStack=function(){};Websites.ViewStack.prototype={Initialize:function(plugIn,userContext,rootElement){this.plugIn=plugIn;this.root=rootElement;this.identAnimationCompleteHandler=null;this.levelSelectedHandler=null;this.boardWonHandler=null;this.boardLostHandler=null;this.boardPauseHandler=null;this.boardUnpauseHandler=null;this.levelCompletedHandler=null;this.gameResetHandler=null;this.restartBoardHandler=null;this.toggleSoundHandler=null;this.openGameInstructionsHandler=null;this.closeGameInstructionsHandler=null;this.gamePaused=false;},SetupPreloadingScreens:function(downloader){this.preloader=new Websites.Preloader();var menuItemXamlString=downloader.getResponseText("View/Screens/Preloader.xaml");this.preloader.Initialize(menuItemXamlString,this.root);this.openingAnimation=new Websites.OpeningAnimation();menuItemXamlString=downloader.getResponseText("View/Screens/OpeningAnimation.xaml");this.openingAnimation.initialize(menuItemXamlString,this.root,downloader);this.openingAnimation.miniClipAnimation.addEventListener("Completed",Silverlight.createDelegate(this,this.identAnimationsComplete));this.openingAnimation.play();},SetPreloaderPercentage:function(percent){this.preloader.SetLoadedPercentage(percent);},identAnimationsComplete:function(sender,eventArgs){if(this.identAnimationCompleteHandler!=null){this.identAnimationCompleteHandler();}},removeIdentAnimation:function(){this.openingAnimation.remove();},removePreloader:function(){this.preloader.Remove();},setupGame:function(downloader,levels,levelsEnabled){this.levelCount=levels;this.playMenuLoop=false;this.mainMenu=new Websites.MainMenu();var menuItemXamlString=downloader.getResponseText("View/Screens/MainMenu.xaml");this.mainMenu.initialize(menuItemXamlString,this.root,downloader);this.mainMenu.playGame.clickHandler=Silverlight.createDelegate(this,this.showChooseLevel);this.mainMenu.instructions.clickHandler=Silverlight.createDelegate(this,this.showInstructions);this.mainMenu.soundToggle.clickHandler=Silverlight.createDelegate(this,this.toggleSound);this.instructions=new Websites.Instructions();menuItemXamlString=downloader.getResponseText("View/Screens/Instructions.xaml");this.instructions.initialize(menuItemXamlString,this.root,downloader);this.instructions.closeWindow.clickHandler=Silverlight.createDelegate(this,this.closeInstructions);this.levelComplete=new Websites.LevelComplete();menuItemXamlString=downloader.getResponseText("View/Screens/LevelComplete.xaml");this.levelComplete.initialize(menuItemXamlString,this.root,downloader);this.levelComplete.nextLevel.clickHandler=Silverlight.createDelegate(this,this.boardCompleted);menuItemXamlString=downloader.getResponseText("View/Screens/BrainTile.xaml");this.levelComplete.loadBrainTiles(this.levelCount,levelsEnabled-1,menuItemXamlString);this.chooseLevel=new Websites.ChooseLevel();menuItemXamlString=downloader.getResponseText("View/Screens/ChooseLevel.xaml");this.chooseLevel.initialize(menuItemXamlString,this.root,downloader);this.chooseLevel.levelSelectedHander=Silverlight.createDelegate(this,this.levelSelected);menuItemXamlString=downloader.getResponseText("View/Screens/ChooseTile.xaml");this.chooseLevel.loadLevelTiles(this.levelCount,levelsEnabled,menuItemXamlString);this.gameComplete=new Websites.GameComplete();menuItemXamlString=downloader.getResponseText("View/Screens/GameComplete.xaml");this.gameComplete.initialize(menuItemXamlString,this.root,downloader);this.gameComplete.gotoMainMenu.clickHandler=Silverlight.createDelegate(this,this.resetView);this.gameBoard=new Websites.Gameboard();menuItemXamlString=downloader.getResponseText("View/Screens/Gameboard.xaml");this.gameBoard.initialize(menuItemXamlString,this.root,downloader);this.gameBoard.helpButton.clickHandler=Silverlight.createDelegate(this,this.gameInstructions);this.gameBoard.soundToggle.clickHandler=Silverlight.createDelegate(this,this.toggleSound);this.gameBoard.pauseButton.clickHandler=Silverlight.createDelegate(this,this.boardPause);this.gameBoard.boardWonHandler=Silverlight.createDelegate(this,this.boardWon);this.gameBoard.boardLostHandler=Silverlight.createDelegate(this,this.boardLost);this.gameOver=new Websites.GameOver();menuItemXamlString=downloader.getResponseText("View/Screens/GameOver.xaml");this.gameOver.initialize(menuItemXamlString,this.root,downloader);this.gameOver.gotoMainMenu.clickHandler=Silverlight.createDelegate(this,this.resetView);this.gameOver.tryAgain.clickHandler=Silverlight.createDelegate(this,this.tryAgain);this.pauseScreen=new Websites.Pause();menuItemXamlString=downloader.getResponseText("View/Screens/Pause.xaml");this.pauseScreen.initialize(menuItemXamlString,this.root,downloader);this.pauseScreen.continueButton.clickHandler=Silverlight.createDelegate(this,this.boardUnpause);this.pauseScreen.quitButton.clickHandler=Silverlight.createDelegate(this,this.resetView);this.showMainMenu();},setupBoard:function(newBoard,newTotalScore,newBoardCount){this.currentBoard=newBoard;this.gameBoard.buildBoard(this.currentBoard,newTotalScore,newBoardCount);},updateChooseLevel:function(newLevels){this.chooseLevel.updateLevelTiles(Number(newLevels));},updateLevelComplete:function(newLevels){this.levelComplete.updateBrainTiles(newLevels);},levelSelected:function(boardIndex){if(this.levelSelectedHandler!=null){this.levelSelectedHandler(boardIndex);soundManager.startGameLoop();this.playMenuLoop=false;}},playGame:function(){this.resetViews();this.gameBoard.show();this.gameBoard.startGame();},updateBoardTime:function(newTime){this.gameBoard.updateTimeDisplay(newTime);},gameInstructions:function(){if(this.openGameInstructionsHandler!=null){this.openGameInstructionsHandler();}},showGameInstructions:function(){this.gameBoard.pause();this.gamePaused=true;this.resetViews();this.instructions.show();},hideGameInstructions:function(){this.gameBoard.resume();this.gamePaused=false;this.gameBoard.show();},toggleSound:function(){if(this.toggleSoundHandler!=null){this.toggleSoundHandler();}},enableSound:function(){this.gameBoard.soundToggle.setToggledState(true);this.mainMenu.soundToggle.setToggledState(true);},disableSound:function(){this.gameBoard.soundToggle.setToggledState(false);this.mainMenu.soundToggle.setToggledState(false);},boardPause:function(){if(this.boardPauseHandler!=null){this.boardPauseHandler();}},boardUnpause:function(){if(this.boardUnpauseHandler!=null){this.boardUnpauseHandler();}},pauseGame:function(){this.gameBoard.pause();this.gamePaused=true;this.pauseScreen.show();},resumeGame:function(){this.gameBoard.resume();this.gamePaused=false;this.pauseScreen.hide();},boardTimeExpired:function(){this.gameBoard.boardTimeExpired();},boardWon:function(){if(this.boardWonHandler!=null){this.boardWonHandler();}},boardLost:function(){if(this.boardLostHandler!=null){this.boardLostHandler();}},boardCompleted:function(sender,eventArgs){if(this.levelCompletedHandler!=null){this.levelCompletedHandler();}},resetView:function(sender,eventArgs){this.gamePaused=false;if(this.gameResetHandler!=null){this.gameResetHandler();}},tryAgain:function(sender,eventArgs){if(this.restartBoardHandler!=null){this.restartBoardHandler();}},closeInstructions:function(sender,eventArgs){if(this.gamePaused){if(this.closeGameInstructionsHandler!=null){this.closeGameInstructionsHandler();}}else{this.showMainMenu(null,null);}},showChooseLevel:function(sender,eventArgs){this.mainMenu.stopAnimation();this.resetViews();this.chooseLevel.show();},showGameOver:function(sender,eventArgs){soundManager.gameOver.playOnce();this.gameOver.show();},showGameComplete:function(sender,eventArgs){soundManager.gameWon.playOnce();this.resetViews();this.gameComplete.show();},showMainMenu:function(sender,eventArgs){this.resetViews();this.mainMenu.playAnimation();this.mainMenu.show();if(this.playMenuLoop==false){this.playMenuLoop=true;soundManager.startMenuLoop();}},showLevelComplete:function(boardScore,totalScore){this.resetViews();this.levelComplete.updateScores(boardScore,totalScore);this.levelComplete.show();},showInstructions:function(sender,eventArgs){this.mainMenu.stopAnimation();this.resetViews();this.instructions.show();},resetViews:function(){this.mainMenu.hide();this.instructions.hide();this.levelComplete.hide();this.chooseLevel.hide();this.gameComplete.hide();this.gameOver.hide();this.gameBoard.hide();this.pauseScreen.hide();}}; 
if(!window.Websites)window.Websites={};;Websites.Blocker=function(){};Websites.Blocker.prototype={initialize:function(xamlString,destination){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.translator=this.xaml.findName("translator");this.rotator=this.xaml.findName("rotator");this.rootElement.children.add(this.xaml);this.tileType=2;},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";}}; 
if(!window.Websites)window.Websites={};;Websites.Cover=function(){};Websites.Cover.prototype={initialize:function(xamlString,destination){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.translator=this.xaml.findName("translator");this.rotator=this.xaml.findName("rotator");this.rootElement.children.add(this.xaml);this.tileType=5;this.valid=true;},remove:function(){this.rootElement.children.remove(this.xaml);this.valid=false;},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";}}; 
if(!window.Websites)window.Websites={};;Websites.Elbow=function(){};Websites.Elbow.prototype={initialize:function(xamlString,destination){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.translator=this.xaml.findName("translator");this.rotator=this.xaml.findName("rotator");this.slowFillForwardStory=this.xaml.findName("slowFillForward");this.slowFillBackwardStory=this.xaml.findName("slowFillBackward");this.instantFillStory=this.xaml.findName("instantFill");this.resetFillStory=this.xaml.findName("resetFill");this.rootElement.children.add(this.xaml);this.tileType=0;this.filling=false;this.fillRotation=0;},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";},loadConductors:function(){var story=util.insertAnimation(this.xaml,"View/Tiles/ElectricityCorner.xaml");this.electricityStoryboard=story.findName("MainAnimation");this.drainStoryboard=story.findName("MainAnimationDrain");},conduct:function(){if(this.electricityStoryboard!=null){this.electricityStoryboard.Begin();}},stopConduction:function(){if(this.electricityStoryboard!=null){this.electricityStoryboard.Stop();}},drain:function(){if(this.drainStoryboard!=null){this.drainStoryboard.Begin();}},stopDrain:function(){if(this.drainStoryboard!=null){this.drainStoryboard.Stop();}}}; 
if(!window.Websites)window.Websites={};;Websites.Entrance=function(){};Websites.Entrance.prototype={initialize:function(xamlString,destination){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.translator=this.xaml.findName("translator");this.rotator=this.xaml.findName("rotator");this.slowFillForwardStory=this.xaml.findName("slowFillForward");this.instantFillStory=this.xaml.findName("instantFill");this.resetFillStory=this.xaml.findName("resetFill");this.rootElement.children.add(this.xaml);this.filling=false;this.tileType=3;this.fillRotation=0;var start=util.insertAnimation(this.xaml,"View/Tiles/ElectricityStart.xaml");var story=util.insertAnimation(this.xaml,"View/Tiles/ElectricityStartStraight.xaml");this.electricityStoryboard=story.findName("MainAnimation");this.drainStoryboard=story.findName("MainAnimationDrain");this.drainStoryboardStart=start.findName("MainAnimationDrain");},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";},conduct:function(){if(this.electricityStoryboard!=null){this.electricityStoryboard.Begin();}},stopConduction:function(){if(this.electricityStoryboard!=null){this.electricityStoryboard.Stop();}},drain:function(){if(this.drainStoryboard!=null){this.drainStoryboard.Begin();this.drainStoryboardStart.Begin();}},stopDrain:function(){if(this.drainStoryboard!=null){this.drainStoryboard.Stop();this.drainStoryboardStart.Stop();}}}; 
if(!window.Websites)window.Websites={};;Websites.Exit=function(){};Websites.Exit.prototype={initialize:function(xamlString,destination){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.translator=this.xaml.findName("translator");this.rotator=this.xaml.findName("rotator");this.instantFillStory=this.xaml.findName("instantFill");this.resetFillStory=this.xaml.findName("resetFill");this.rootElement.children.add(this.xaml);this.filling=false;this.tileType=4;},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";},loadConductors:function(){var story=util.insertAnimation(this.xaml,"View/Tiles/ElectricityStartStraight.xaml");this.electricityStoryboard=story.findName("MainAnimation");this.drainStoryboard=story.findName("MainAnimationDrain");},conduct:function(){if(this.electricityStoryboard!=null){this.electricityStoryboard.Begin();}},stopConduction:function(){if(this.electricityStoryboard!=null){this.electricityStoryboard.Stop();}},drain:function(){if(this.drainStoryboard!=null){this.drainStoryboard.Begin();}},stopDrain:function(){if(this.drainStoryboard!=null){this.drainStoryboard.Stop();}}}; 
if(!window.Websites)window.Websites={};;Websites.Explosion=function(){};Websites.Explosion.prototype={initialize:function(xamlString,destination){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.translator=this.xaml.findName("translator");this.rotator=this.xaml.findName("rotator");this.explosionStoryboard=this.xaml.findName("endExplosion");this.explosionStoryboard.addEventListener("Completed",Silverlight.createDelegate(this,this.explosionComplete));this.rootElement.children.add(this.xaml);},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";},explode:function(){this.show();this.explosionStoryboard.Begin();},explosionComplete:function(){this.hide();}}; 
if(!window.Websites)window.Websites={};;Websites.Pipe=function(){};Websites.Pipe.prototype={initialize:function(xamlString,destination){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.translator=this.xaml.findName("translator");this.rotator=this.xaml.findName("rotator");this.slowFillForwardStory=this.xaml.findName("slowFillForward");this.slowFillBackwardStory=this.xaml.findName("slowFillBackward");this.instantFillStory=this.xaml.findName("instantFill");this.resetFillStory=this.xaml.findName("resetFill");this.rootElement.children.add(this.xaml);this.filling=false;this.tileType=1;this.fillRotation=0;},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";},loadConductors:function(){var story=util.insertAnimation(this.xaml,"View/Tiles/Electricity.xaml");this.electricityStoryboard=story.findName("MainAnimation");this.drainStoryboard=story.findName("MainAnimationDrain");},conduct:function(){if(this.electricityStoryboard!=null){this.electricityStoryboard.Begin();}},stopConduction:function(){if(this.electricityStoryboard!=null){this.electricityStoryboard.Stop();}},drain:function(){if(this.drainStoryboard!=null){this.drainStoryboard.Begin();}},stopDrain:function(){if(this.drainStoryboard!=null){this.drainStoryboard.Stop();}}}; 
if(!window.Websites)window.Websites={};;Websites.TileHighlight=function(){};Websites.TileHighlight.prototype={initialize:function(xamlString,destination){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.translator=this.xaml.findName("translator");this.rotator=this.xaml.findName("rotator");this.rolloverStory=this.xaml.findName("rolloverHighlight");this.removeRolloverStory=this.xaml.findName("removeRolloverHighlight");this.selectedHighlightStory=this.xaml.findName("selectedHighlight");this.removeSelectedHighlightStory=this.xaml.findName("removeSelectedHighlight");this.rootElement.children.add(this.xaml);},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";}}; 
if(!window.Websites)window.Websites={};;Websites.BrainTile=function(){};Websites.BrainTile.prototype={initialize:function(xamlString,destination){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.rootElement.children.add(this.xaml);},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";}}; 
if(!window.Websites)window.Websites={};;Websites.ChooseLevel=function(){};Websites.ChooseLevel.prototype={initialize:function(xamlString,destination){this.index=null;this.levelSelectedHander=null;this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.rootElement.children.add(this.xaml);this.chooseCurrentLevel=this.xaml.findName("chooseCurrentLevel");this.hide();},loadLevelTiles:function(tiles,levelsEnabled,tileXaml){if(tiles>0){var levelCounter=0;var firstTile=new Websites.ChooseTile();firstTile.initialize(tileXaml,this.chooseCurrentLevel);firstTile.setTileText((levelCounter+1).toString());firstTile.xaml.addEventListener("MouseLeftButtonUp",Silverlight.createDelegate(this,this.levelTileSelected));firstTile.xaml["Canvas.Left"]=0;firstTile.xaml["Canvas.Top"]=0;var columns=Math.floor(this.chooseCurrentLevel["Width"]/firstTile.xaml["Width"]);var rows=Math.ceil(tiles/columns);this.levelTiles=[];for(var i=0;i<rows;i++){this.levelTiles[i]=[];for(var j=0;j<columns;j++){if(levelCounter<tiles){this.levelTiles[i][j]=new Websites.ChooseTile();this.levelTiles[i][j].initialize(tileXaml,this.chooseCurrentLevel);this.levelTiles[i][j].index=levelCounter;this.levelTiles[i][j].setTileText((levelCounter+1).toString());this.levelTiles[i][j].clickHandler=Silverlight.createDelegate(this,this.levelTileSelected);this.levelTiles[i][j].xaml["Canvas.Left"]=j*firstTile.xaml["Width"];this.levelTiles[i][j].xaml["Canvas.Top"]=i*firstTile.xaml["Height"];if(levelCounter<levelsEnabled){this.levelTiles[i][j].enable();}else{this.levelTiles[i][j].disable();}levelCounter++;}}}firstTile.remove();}},levelTileSelected:function(sender){if(this.levelSelectedHander!=null){this.levelSelectedHander(sender.index);}},updateLevelTiles:function(newLevels){var levelCounter=0;for(var i=0;i<this.levelTiles.length;i++){for(var j=0;j<this.levelTiles[i].length;j++){if(levelCounter<newLevels){this.levelTiles[i][j].enable();}else{this.levelTiles[i][j].disable();}levelCounter++;}}},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";}}; 
if(!window.Websites)window.Websites={};;Websites.ChooseTile=function(){};Websites.ChooseTile.prototype={initialize:function(xamlString,destination){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.xaml.Cursor="Hand";this.xaml.addEventListener("MouseEnter",Silverlight.createDelegate(this,this.rollOverHandler));this.xaml.addEventListener("MouseLeave",Silverlight.createDelegate(this,this.rollOutHandler));this.xaml.addEventListener("MouseLeftButtonUp",Silverlight.createDelegate(this,this.internalClickHandler));this.rollOver=this.xaml.findName("rollOverAnimation");this.rollOut=this.xaml.findName("rollOutAnimation");this.rootElement.children.add(this.xaml);this.counterText=this.xaml.findName("counterText");this.enableStory=this.xaml.findName("enableSelection");this.disableStory=this.xaml.findName("disableSelection");this.index=0;},setTileText:function(newText){this.counterText.Text=newText;},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";},enable:function(){if(this.enableStory!=null){this.enableStory.Begin();}this.xaml.IsHitTestVisible=true;},disable:function(){if(this.disableStory!=null){this.disableStory.Begin();}this.xaml.IsHitTestVisible=false;},rollOverHandler:function(){if(this.rollOver!=null){this.rollOver.Begin();}},rollOutHandler:function(){if(this.rollOut!=null){this.rollOut.Begin();}},internalClickHandler:function(){soundManager.buttonClick.playOnce();if(this.clickHandler!=null){this.clickHandler(this);}}}; 
if(!window.Websites)window.Websites={};;Websites.Credits=function(){};Websites.Credits.prototype={initialize:function(xamlString,destination,downloader){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.rootElement.children.add(this.xaml);var menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/SplatBig.xaml");var pathTextXamlString=downloader.getResponseText("View/Screens/Buttons/CloseSplatText.xaml");this.closeWindow=new Websites.Button();this.closeWindow.initialize(menuItemXamlString,pathTextXamlString,this.xaml);this.closeWindow.xaml["Canvas.Left"]=465;this.closeWindow.xaml["Canvas.Top"]=325;this.hide();},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";}}; 
if(!window.Websites)window.Websites={};;Websites.Gameboard=function(){};Websites.Gameboard.prototype={initialize:function(xamlString,destination,downloader){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.rootElement.children.add(this.xaml);this.boardWonHandler=null;this.boardLostHandler=null;this.tileGrid=this.xaml.findName("TileGrid");this.tileGrid.addEventListener("MouseLeave",Silverlight.createDelegate(this,this.conductorRollOut));this.timeDisplay=this.xaml.findName("TimeDisplay");this.scoreDisplay=this.xaml.findName("ScoreDisplay");this.levelDisplay=this.xaml.findName("LevelDisplay");this.gearRotate=this.xaml.findName("GearRotate");this.brainFloat=this.xaml.findName("BrainFloat");this.tankBubbles=this.xaml.findName("TankBubbles");this.brainBurn=this.xaml.findName("BrainBurn");this.brainBurn.addEventListener("Completed",Silverlight.createDelegate(this,this.brainBurnDone));this.brainZap=this.xaml.findName("BrainZap");this.brainZap.addEventListener("Completed",Silverlight.createDelegate(this,this.brainZapDone));this.brainZapDelay=this.xaml.findName("BrainZapDelay");this.brainZapDelay.addEventListener("Completed",Silverlight.createDelegate(this,this.brainZapDelayDone));this.brainReset=this.xaml.findName("ResetBrain");var menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/DoneGameButton.xaml");this.doneButton=new Websites.Button();this.doneButton.initialize(menuItemXamlString,null,this.xaml);this.doneButton.clickHandler=Silverlight.createDelegate(this,this.donePressed);this.doneButton.xaml["Canvas.Left"]=162;this.doneButton.xaml["Canvas.Top"]=364;menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/HelpButton.xaml");this.helpButton=new Websites.Button();this.helpButton.initialize(menuItemXamlString,null,this.xaml);this.helpButton.xaml["Canvas.Left"]=555;this.helpButton.xaml["Canvas.Top"]=349;menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/SoundButton.xaml");this.soundToggle=new Websites.Button();this.soundToggle.initialize(menuItemXamlString,null,this.xaml);this.soundToggle.xaml["Canvas.Left"]=545;this.soundToggle.xaml["Canvas.Top"]=370;menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/PauseButton.xaml");this.pauseButton=new Websites.Button();this.pauseButton.initialize(menuItemXamlString,null,this.xaml);this.pauseButton.xaml["Canvas.Left"]=496;this.pauseButton.xaml["Canvas.Top"]=408;menuItemXamlString=downloader.getResponseText("View/Screens/InputBlock.xaml");this.inputBlock=this.control.content.CreateFromXaml(menuItemXamlString,true);this.inputBlock.Opacity=0;this.xaml.children.add(this.inputBlock);this.hide();this.ELBOW=0;this.PIPE=1;this.BLOCKER=2;this.ENTRANCE=3;this.EXIT=4;this.COVER=5;this.elbowXamlString=downloader.getResponseText("View/Tiles/Elbow.xaml");this.pipeXamlString=downloader.getResponseText("View/Tiles/Pipe.xaml");this.entranceXamlString=downloader.getResponseText("View/Tiles/Entrance.xaml");this.exitXamlString=downloader.getResponseText("View/Tiles/Exit.xaml");this.highlightXaml=downloader.getResponseText("View/Tiles/TileHighlight.xaml");this.explosionXaml=downloader.getResponseText("View/Tiles/Explosion.xaml");this.coverXamlArray=[];this.coverXamlArray.push(downloader.getResponseText("View/Tiles/Tile-Panel1.xaml"));this.coverXamlArray.push(downloader.getResponseText("View/Tiles/Tile-Panel2.xaml"));this.coverXamlArray.push(downloader.getResponseText("View/Tiles/Tile-Panel3.xaml"));this.coverXamlArray.push(downloader.getResponseText("View/Tiles/Tile-Panel4.xaml"));this.blockerXamlArray=[];this.blockerXamlArray.push(downloader.getResponseText("View/Tiles/Tile-BlockingBug.xaml"));this.blockerXamlArray.push(downloader.getResponseText("View/Tiles/Tile-BlockingCPU.xaml"));this.blockerXamlArray.push(downloader.getResponseText("View/Tiles/Tile-BlockingEye.xaml"));this.selectedTile=null;},beginAnimation:function(){this.tankBubbles.Begin();this.gearRotate.Begin();this.brainFloat.Begin();},stopAnimation:function(){this.tankBubbles.Stop();this.gearRotate.Stop();},remove:function(){this.xaml.children.remove(this.xaml);},hide:function(){this.stopAnimation();this.xaml.Visibility="Collapsed";},show:function(){this.beginAnimation();this.xaml.Visibility="Visible";},pause:function(){if(this.fillingTile!=null){if(this.fillingTile.slowFillForwardStory!=null){this.fillingTile.slowFillForwardStory.Pause();}; 
if(this.fillingTile.slowFillBackwardStory!=null){this.fillingTile.slowFillBackwardStory.Pause();}}},resume:function(){if(this.fillingTile!=null){if(this.fillingTile.slowFillForwardStory!=null){this.fillingTile.slowFillForwardStory.Resume();}; 
if(this.fillingTile.slowFillBackwardStory!=null){this.fillingTile.slowFillBackwardStory.Resume();}}},buildBoard:function(boardToBuild,newTotalScore,newBoardCount){this.brainReset.Begin();this.enableBoardInput();this.scoreDisplay.Text=newTotalScore.toString();this.levelDisplay.Text=newBoardCount.toString();this.tileGrid.Children.Clear();this.tileControlArray=[];this.currentBoard=boardToBuild;this.selectedTile=null;var coverToAdd=null;var tileToAdd=null;for(var i=0;i<boardToBuild.length;i++){this.tileControlArray[i]=[];for(var j=0;j<boardToBuild[i].length;j++){tileToAdd=this.resolveTileType(boardToBuild[i][j]);tileToAdd.xaml["Canvas.Left"]=i*tileToAdd.xaml["Width"];tileToAdd.xaml["Canvas.Top"]=j*tileToAdd.xaml["Height"];tileToAdd.rotator.Angle=this.convertTileRotation(boardToBuild[i][j]);tileToAdd.xaml.addEventListener("MouseLeftButtonDown",Silverlight.createDelegate(this,this.tilePressed));if(tileToAdd.slowFillForwardStory!=null){tileToAdd.slowFillForwardStory.addEventListener("Completed",Silverlight.createDelegate(this,this.tileFilled));}; 
if(tileToAdd.slowFillBackwardStory!=null){tileToAdd.slowFillBackwardStory.addEventListener("Completed",Silverlight.createDelegate(this,this.tileFilled));}; 
if(tileToAdd.tileType!=this.ENTRANCE&&tileToAdd.tileType!=this.EXIT){coverToAdd=new Websites.Cover();coverToAdd.initialize(this.coverXamlArray[Math.floor(Math.random()*this.coverXamlArray.length)],this.tileGrid);coverToAdd.xaml["Canvas.Left"]=i*tileToAdd.xaml["Width"];coverToAdd.xaml["Canvas.Top"]=j*tileToAdd.xaml["Height"];coverToAdd.xaml.addEventListener("MouseEnter",Silverlight.createDelegate(this,this.conductorRollOver));coverToAdd.xaml.addEventListener("MouseLeftButtonDown",Silverlight.createDelegate(this,this.coverPressed));}this.tileControlArray[i][j]={cover:coverToAdd,tile:tileToAdd};}}this.rollOverHighlight=new Websites.TileHighlight();this.rollOverHighlight.initialize(this.highlightXaml,this.tileGrid);this.rollOverHighlight.xaml.IsHitTestVisible=false;this.rollOverHighlight.hide();this.selectedHighlight=new Websites.TileHighlight();this.selectedHighlight.initialize(this.highlightXaml,this.tileGrid);this.selectedHighlight.xaml.IsHitTestVisible=false;this.selectedHighlight.removeRolloverStory.Begin();this.selectedHighlight.selectedHighlightStory.Begin();this.selectedHighlight.xaml["Canvas.Left"]=this.currentEntrance.xaml["Canvas.Left"];this.selectedHighlight.xaml["Canvas.Top"]=this.currentEntrance.xaml["Canvas.Top"];this.selectedTile=this.currentEntrance;this.tileExplosion=new Websites.Explosion();this.tileExplosion.initialize(this.explosionXaml,this.tileGrid);this.tileExplosion.hide();},brainBurnDone:function(){if(this.boardLostHandler!=null){this.boardLostHandler();}},brainZapDelayDone:function(){soundManager.shockBrain.playOnce();},brainZapDone:function(){if(this.boardWonHandler!=null){this.boardWonHandler();}},resolveTileType:function(gridElement){var result=null;switch(gridElement.tile){case this.ELBOW:result=new Websites.Elbow();result.initialize(this.elbowXamlString,this.tileGrid);result.xaml.addEventListener("MouseEnter",Silverlight.createDelegate(this,this.conductorRollOver));result.hide();break;case this.PIPE:result=new Websites.Pipe();result.initialize(this.pipeXamlString,this.tileGrid);result.xaml.addEventListener("MouseEnter",Silverlight.createDelegate(this,this.conductorRollOver));result.hide();break;case this.ENTRANCE:result=new Websites.Entrance();result.initialize(this.entranceXamlString,this.tileGrid);result.xaml.addEventListener("MouseEnter",Silverlight.createDelegate(this,this.conductorRollOut));this.currentEntrance=result;break;case this.EXIT:result=new Websites.Exit();result.initialize(this.exitXamlString,this.tileGrid);result.xaml.addEventListener("MouseEnter",Silverlight.createDelegate(this,this.conductorRollOut));this.currentExit=result;break;default:result=new Websites.Blocker();result.initialize(this.blockerXamlArray[Math.floor(Math.random()*this.blockerXamlArray.length)],this.tileGrid);result.xaml.addEventListener("MouseEnter",Silverlight.createDelegate(this,this.conductorRollOut));result.hide();break;}return result;},convertTileRotation:function(toConvert){var result=0;var hf=toConvert.hflip;var vf=toConvert.vflip;var rot=toConvert.rot;if(hf==1){if(rot==0){result=180;}else{result=270;}}else{if(rot==0){result=0;}else{result=90;}}return result;},updateTimeDisplay:function(newTime){this.timeDisplay.Text=newTime.toString();},startGame:function(){soundManager.startBoard.playOnce();this.fillingTile=this.currentEntrance;this.currentEntrance.slowFillForwardStory.Begin();},boardTimeExpired:function(){this.donePressed();},resetSelectedTile:function(){if(this.selectedTile!=null){this.selectedHighlight.removeSelectedHighlightStory.Begin();this.selectedTile=null;}},enableBoardInput:function(){this.inputBlock.Visibility="Collapsed";},disableBoardInput:function(){this.inputBlock.Visibility="Visible";},boardWon:function(){this.brainFloat.Stop();this.brainZapDelay.Begin();this.brainZap.Begin();this.freezeBoard();},boardLost:function(){this.brainFloat.Stop();this.brainBurn.Begin();soundManager.burnBrain.playOnce();this.drainConductors();this.freezeBoard();},freezeBoard:function(){this.disableBoardInput();this.resetSelectedTile();this.rollOverHighlight.hide();},checkWinState:function(fillDuringCheck){var result=false;var lastTile=this.fillingTile;var nextTile=this.findNextTile(lastTile);if(fillDuringCheck){this.fillingTile.stopConduction();}while(nextTile!=null){nextTile.tile.fillRotation=nextTile.rot;nextTile.tile.instantFillStory.Begin();if(fillDuringCheck){if(!nextTile.tile.filling){nextTile.tile.filling=true;nextTile.tile.loadConductors();}nextTile.tile.stopConduction();}lastTile=nextTile.tile;nextTile=this.findNextTile(lastTile);}; 
if(lastTile.tileType==this.EXIT){result=true;}return result;},drainConductors:function(){this.currentEntrance.drain();var lastTile=this.currentEntrance;var nextTile=this.findNextTile(lastTile);while(nextTile!=null){if(nextTile.tile.filling){nextTile.tile.drain();lastTile=nextTile.tile;nextTile=this.findNextTile(lastTile);}}var lastFill=null;var filledX=lastTile.xaml["Canvas.Left"]/lastTile.xaml["Width"];var filledY=lastTile.xaml["Canvas.Top"]/lastTile.xaml["Height"];switch(lastTile.tileType){case this.ELBOW:lastFill=this.findNextTileElbow(filledX,filledY,lastTile.rotator.Angle,lastTile.fillRotation);break;case this.PIPE:lastFill=this.findNextTilePipe(filledX,filledY,lastTile.rotator.Angle,lastTile.fillRotation);break;case this.ENTRANCE:lastFill=this.findNextTileEntrance(filledX,filledY,lastTile.rotator.Angle,lastTile.fillRotation);break;}var explosionRotation=lastFill.rot+=180;if(explosionRotation>270){explosionRotation-=360;}this.tileExplosion.rotator.Angle=explosionRotation;this.tileExplosion.xaml["Canvas.Left"]=lastTile.xaml["Canvas.Left"];this.tileExplosion.xaml["Canvas.Top"]=lastTile.xaml["Canvas.Top"];this.tileExplosion.explode();},donePressed:function(){if(this.fillingTile.slowFillForwardStory!=null){this.fillingTile.slowFillForwardStory.Stop();}; 
if(this.fillingTile.slowFillBackwardStory!=null){this.fillingTile.slowFillBackwardStory.Stop();}this.fillingTile.instantFillStory.Begin();if(this.checkWinState(true)){this.boardWon();}else{this.boardLost();}},tileFilled:function(sender,eventArgs){this.fillingTile.stopConduction();var nextTile=this.findNextTile(this.fillingTile);if(nextTile==null){this.boardLost();}else if(nextTile.tile.tileType==this.EXIT){this.boardWon();}else{soundManager.electricTransition.playOnce();this.fillingTile=nextTile.tile;this.fillingTile.fillRotation=nextTile.rot;this.fillingTile.filling=true;this.fillingTile.loadConductors();this.fillingTile.conduct();if(this.fillingTile.rotator.Angle==this.fillingTile.fillRotation){this.fillingTile.slowFillBackwardStory.Begin();}else{this.fillingTile.slowFillForwardStory.Begin();}; 
if(this.selectedTile!=null&&this.selectedTile.tile==this.fillingTile){this.resetSelectedTile();}}},findNextTile:function(previousTile){var nextTile=null;var filledX=previousTile.xaml["Canvas.Left"]/previousTile.xaml["Width"];var filledY=previousTile.xaml["Canvas.Top"]/previousTile.xaml["Height"];switch(previousTile.tileType){case this.ELBOW:nextTile=this.findNextTileElbow(filledX,filledY,previousTile.rotator.Angle,previousTile.fillRotation);break;case this.PIPE:nextTile=this.findNextTilePipe(filledX,filledY,previousTile.rotator.Angle,previousTile.fillRotation);break;case this.ENTRANCE:nextTile=this.findNextTileEntrance(filledX,filledY,previousTile.rotator.Angle,previousTile.fillRotation);break;}; 
if(nextTile!=null&&nextTile.tile!=null&&nextTile.tile.tileType!=this.BLOCKER&&nextTile.tile.tileType!=this.ENTRANCE){var jointsMeet=false;switch(nextTile.tile.tileType){case this.ELBOW:jointsMeet=this.jointsMeetElbow(nextTile.tile.rotator.Angle,nextTile.rot);break;case this.PIPE:jointsMeet=this.jointsMeetPipe(nextTile.tile.rotator.Angle,nextTile.rot);break;case this.EXIT:jointsMeet=this.jointsMeetExit(nextTile.tile.rotator.Angle,nextTile.rot);break;}; 
if(!jointsMeet){nextTile=null;}}else{nextTile=null;}return nextTile;},findNextTileElbow:function(filledX,filledY,rot,fillRotation){var nextTile=null;var nextFillRotation=0;switch(rot){case 0:if(fillRotation==0){nextTile=this.tileControlArray[filledX][filledY+1];nextFillRotation=270;}else{if(this.tileControlArray[filledX+1]!=null)nextTile=this.tileControlArray[filledX+1][filledY];nextFillRotation=180;}break;case 90:if(fillRotation==90){if(this.tileControlArray[filledX-1]!=null)nextTile=this.tileControlArray[filledX-1][filledY];nextFillRotation=0;}else{nextTile=this.tileControlArray[filledX][filledY+1];nextFillRotation=270;}break;case 180:if(fillRotation==180){nextTile=this.tileControlArray[filledX][filledY-1];nextFillRotation=90;}else{if(this.tileControlArray[filledX-1]!=null)nextTile=this.tileControlArray[filledX-1][filledY];nextFillRotation=0;}break;case 270:if(fillRotation==270){if(this.tileControlArray[filledX+1]!=null)nextTile=this.tileControlArray[filledX+1][filledY];nextFillRotation=180;}else{nextTile=this.tileControlArray[filledX][filledY-1];nextFillRotation=90;}break;}return{tile:this.validateNextTile(nextTile),rot:nextFillRotation};},findNextTilePipe:function(filledX,filledY,rot,fillRotation){var nextTile=null;var nextFillRotation=0;switch(rot){case 0:if(fillRotation==0){if(this.tileControlArray[filledX-1]!=null)nextTile=this.tileControlArray[filledX-1][filledY];nextFillRotation=0;}else{if(this.tileControlArray[filledX+1]!=null)nextTile=this.tileControlArray[filledX+1][filledY];nextFillRotation=180;}break;case 90:if(fillRotation==90){nextTile=this.tileControlArray[filledX][filledY-1];nextFillRotation=90;}else{nextTile=this.tileControlArray[filledX][filledY+1];nextFillRotation=270;}break;case 180:if(fillRotation==180){if(this.tileControlArray[filledX+1]!=null)nextTile=this.tileControlArray[filledX+1][filledY];nextFillRotation=180;}else{if(this.tileControlArray[filledX-1]!=null)nextTile=this.tileControlArray[filledX-1][filledY];nextFillRotation=0;}break;case 270:if(fillRotation==270){nextTile=this.tileControlArray[filledX][filledY+1];nextFillRotation=270;}else{nextTile=this.tileControlArray[filledX][filledY-1];nextFillRotation=90;}break;}return{tile:this.validateNextTile(nextTile),rot:nextFillRotation};},findNextTileEntrance:function(filledX,filledY,rot,fillRotation){var nextTile=null;var nextFillRotation=0;switch(rot){case 0:if(this.tileControlArray[filledX+1]!=null)nextTile=this.tileControlArray[filledX+1][filledY];nextFillRotation=180;break;case 90:nextTile=this.tileControlArray[filledX][filledY+1];nextFillRotation=270;break;case 180:if(this.tileControlArray[filledX-1]!=null)nextTile=this.tileControlArray[filledX-1][filledY];nextFillRotation=0;break;case 270:nextTile=this.tileControlArray[filledX][filledY-1];nextFillRotation=90;break;}return{tile:this.validateNextTile(nextTile),rot:nextFillRotation};},validateNextTile:function(nextTile){if(nextTile!=null){if(nextTile.tile!=null){if(nextTile.tile.tileType!=this.EXIT&&nextTile.cover.valid){nextTile=null;}else{nextTile=nextTile.tile;}}else{nextTile=null;}}return nextTile;},jointsMeetElbow:function(nextTileRotation,nextFillRotation){var result=false;switch(nextTileRotation){case 0:if(nextFillRotation==0||nextFillRotation==90)result=true;break;case 90:if(nextFillRotation==90||nextFillRotation==180)result=true;break;case 180:if(nextFillRotation==180||nextFillRotation==270)result=true;break;case 270:if(nextFillRotation==0||nextFillRotation==270)result=true;break;}return result;},jointsMeetPipe:function(nextTileRotation,nextFillRotation){var result=false;switch(nextTileRotation){case 0:case 180:if(nextFillRotation==0||nextFillRotation==180)result=true;break;case 90:case 270:if(nextFillRotation==90||nextFillRotation==270)result=true;break;}return result;},jointsMeetExit:function(nextTileRotation,nextFillRotation){var result=false;if(nextTileRotation==nextFillRotation){result=true;}return result;},conductorRollOver:function(sender,mouseEventArgs){var rolledTile=this.locateTileControl(sender);this.rollOverHighlight.xaml["Canvas.Left"]=rolledTile.tile.xaml["Canvas.Left"];this.rollOverHighlight.xaml["Canvas.Top"]=rolledTile.tile.xaml["Canvas.Top"];this.rollOverHighlight.show();},conductorRollOut:function(sender,mouseEventArgs){if(this.rollOverHighlight!=null){this.rollOverHighlight.hide();}},tilePressed:function(sender,mouseEventArgs){var clickedTile=this.locateTileControl(sender);if(!(clickedTile.tile.filling)&&clickedTile.tile.tileType!=this.ENTRANCE&&clickedTile.tile.tileType!=this.EXIT&&clickedTile.tile.tileType!=this.BLOCKER){if(this.selectedTile==null){this.selectedTile=clickedTile;this.selectedHighlight.xaml["Canvas.Left"]=this.selectedTile.tile.xaml["Canvas.Left"];this.selectedHighlight.xaml["Canvas.Top"]=this.selectedTile.tile.xaml["Canvas.Top"];this.selectedHighlight.selectedHighlightStory.Begin();this.rollOverHighlight.hide();}else if(this.selectedTile==clickedTile){this.resetSelectedTile();this.rollOverHighlight.show();}else{soundManager.swapBlocks.playOnce();this.selectedHighlight.removeSelectedHighlightStory.Begin();var tempTile=this.selectedTile.tile;var tempX=tempTile.xaml["Canvas.Left"];var tempY=tempTile.xaml["Canvas.Top"];var modelX=tempX/tempTile.xaml["Width"];var modelY=tempY/tempTile.xaml["Height"];var tempModel=this.currentBoard[modelX][modelY];this.selectedTile.tile.xaml["Canvas.Left"]=clickedTile.tile.xaml["Canvas.Left"];this.selectedTile.tile.xaml["Canvas.Top"]=clickedTile.tile.xaml["Canvas.Top"];this.selectedTile.tile=clickedTile.tile;var tempModelX=clickedTile.tile.xaml["Canvas.Left"]/clickedTile.tile.xaml["Width"];var tempModelY=clickedTile.tile.xaml["Canvas.Top"]/clickedTile.tile.xaml["Height"];this.currentBoard[modelX][modelY]=this.currentBoard[tempModelX][tempModelY];clickedTile.tile.xaml["Canvas.Left"]=tempX;clickedTile.tile.xaml["Canvas.Top"]=tempY;clickedTile.tile=tempTile;this.currentBoard[tempModelX][tempModelY]=tempModel;this.selectedTile=null;if(this.checkWinState(false)){this.donePressed();}}}},coverPressed:function(sender,mouseEventArgs){this.resetSelectedTile();soundManager.uncoverPanel.playOnce();var coverToRemove=this.locateTileControl(sender);coverToRemove.cover.remove();coverToRemove.tile.show();if(this.checkWinState(false)){this.donePressed();}},locateTileControl:function(xamlToFind){var tilex=xamlToFind["Canvas.Left"]/xamlToFind["Width"];var tiley=xamlToFind["Canvas.Top"]/xamlToFind["Height"];return this.tileControlArray[tilex][tiley];}}; 
if(!window.Websites)window.Websites={};;Websites.GameComplete=function(){};Websites.GameComplete.prototype={initialize:function(xamlString,destination,downloader){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.rootElement.children.add(this.xaml);this.gotoMainMenuContainer=this.xaml.findName("gotoMainMenuConatiner");var menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/SplatBig.xaml");var pathTextXamlString=downloader.getResponseText("View/Screens/Buttons/DoneSplatText.xaml");this.gotoMainMenu=new Websites.Button();this.gotoMainMenu.initialize(menuItemXamlString,pathTextXamlString,this.gotoMainMenuContainer);this.gotoMainMenu.xaml["Canvas.Left"]=35;this.gotoMainMenu.xaml["Canvas.Top"]=35;this.hide();},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";}}; 
if(!window.Websites)window.Websites={};;Websites.GameOver=function(){};Websites.GameOver.prototype={initialize:function(xamlString,destination,downloader){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.rootElement.children.add(this.xaml);var menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/MenuSmall.xaml");var pathTextXamlString=downloader.getResponseText("View/Screens/Buttons/MainText.xaml");this.gotoMainMenu=new Websites.Button();this.gotoMainMenu.initialize(menuItemXamlString,pathTextXamlString,this.xaml);this.gotoMainMenu.xaml["Canvas.Left"]=323;this.gotoMainMenu.xaml["Canvas.Top"]=174;this.gotoMainMenu.rotator.Angle=-5;menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/MenuBig.xaml");pathTextXamlString=downloader.getResponseText("View/Screens/Buttons/TryAgainText.xaml");this.tryAgain=new Websites.Button();this.tryAgain.initialize(menuItemXamlString,pathTextXamlString,this.xaml);this.tryAgain.xaml["Canvas.Left"]=329;this.tryAgain.xaml["Canvas.Top"]=240;this.tryAgain.rotator.Angle=-5;this.hide();},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";}}; 
if(!window.Websites)window.Websites={};;Websites.Instructions=function(){};Websites.Instructions.prototype={initialize:function(xamlString,destination,downloader){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.rootElement.children.add(this.xaml);var menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/SplatBig.xaml");var pathTextXamlString=downloader.getResponseText("View/Screens/Buttons/CloseSplatText.xaml");this.closeWindow=new Websites.Button();this.closeWindow.initialize(menuItemXamlString,pathTextXamlString,this.xaml);this.closeWindow.xaml["Canvas.Left"]=430;this.closeWindow.xaml["Canvas.Top"]=320;this.hide();},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";var animToPlay=this.xaml.findName("MainAnimation");animToPlay.Stop();},show:function(){this.xaml.Visibility="Visible";var animToPlay=this.xaml.findName("MainAnimation");animToPlay.Begin();}}; 
if(!window.Websites)window.Websites={};;Websites.LevelComplete=function(){};Websites.LevelComplete.prototype={initialize:function(xamlString,destination,downloader){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.rootElement.children.add(this.xaml);this.brainContainer=this.xaml.findName("brainContainer");this.boardScore=this.xaml.findName("BoardScore");this.totalScore=this.xaml.findName("TotalScore");this.zombotNumber=this.xaml.findName("zombotNumber");this.helmetGlow=this.xaml.findName("helmetGlow");this.helmetBubbles=this.xaml.findName("helmetBubbles");var menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/SplatBig.xaml");var pathTextXamlString=downloader.getResponseText("View/Screens/Buttons/NextSplatText.xaml");this.nextLevel=new Websites.Button();this.nextLevel.initialize(menuItemXamlString,pathTextXamlString,this.xaml);this.nextLevel.xaml["Canvas.Left"]=220;this.nextLevel.xaml["Canvas.Top"]=342;this.hide();},loadBrainTiles:function(totalBrains,brainsEnabled,brainXaml){if(totalBrains>0){var brainCounter=0;var firstBrain=new Websites.BrainTile();firstBrain.initialize(brainXaml,this.brainContainer);firstBrain.xaml["Canvas.Left"]=0;firstBrain.xaml["Canvas.Top"]=0;var columns=Math.floor(this.brainContainer["Width"]/firstBrain.xaml["Width"]);var rows=Math.ceil(totalBrains/columns);this.brainTiles=[];for(var i=0;i<rows;i++){this.brainTiles[i]=[];for(var j=0;j<columns;j++){if(brainCounter<totalBrains){this.brainTiles[i][j]=new Websites.ChooseTile();this.brainTiles[i][j].initialize(brainXaml,this.brainContainer);this.brainTiles[i][j].xaml["Canvas.Left"]=j*firstBrain.xaml["Width"];this.brainTiles[i][j].xaml["Canvas.Top"]=i*firstBrain.xaml["Height"];this.brainTiles[i][j].disable();if(brainCounter<brainsEnabled){this.brainTiles[i][j].show();}else{this.brainTiles[i][j].hide();}}brainCounter++;}}firstBrain.remove();}},updateBrainTiles:function(newBrains){var brainCounter=0;for(var i=0;i<this.brainTiles.length;i++){for(var j=0;j<this.brainTiles[i].length;j++){if(brainCounter<newBrains){this.brainTiles[i][j].show();}else{this.brainTiles[i][j].hide();}brainCounter++;}}this.zombotNumber.Text="x"+newBrains.toString();},updateScores:function(newBoardScore,newTotalScore){this.boardScore.Text=newBoardScore.toString();this.totalScore.Text=newTotalScore.toString();},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.helmetBubbles.Stop();this.helmetGlow.Stop();soundManager.bubbles.fadeOut();this.xaml.Visibility="Collapsed";},show:function(){this.helmetBubbles.Begin();this.helmetGlow.Begin();soundManager.bubbles.playLoop();this.xaml.Visibility="Visible";}}; 
if(!window.Websites)window.Websites={};;Websites.MainMenu=function(){};Websites.MainMenu.prototype={initialize:function(xamlString,destination,downloader){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.rootElement.children.add(this.xaml);this.rotateGears=this.xaml.findName("RotateGears");var menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/MenuBig.xaml");var pathTextXamlString=downloader.getResponseText("View/Screens/Buttons/PlayText.xaml");this.playGame=new Websites.Button();this.playGame.initialize(menuItemXamlString,pathTextXamlString,this.xaml);this.playGame.xaml["Canvas.Left"]=191.231;this.playGame.xaml["Canvas.Top"]=232.305;menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/MenuSmall.xaml");pathTextXamlString=downloader.getResponseText("View/Screens/Buttons/InstructionsText.xaml");this.instructions=new Websites.Button();this.instructions.initialize(menuItemXamlString,pathTextXamlString,this.xaml);this.instructions.xaml["Canvas.Left"]=191.231;this.instructions.xaml["Canvas.Top"]=282.305;menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/SoundButton.xaml");this.soundToggle=new Websites.Button();this.soundToggle.initialize(menuItemXamlString,null,this.xaml);this.soundToggle.xaml["Canvas.Left"]=545;this.soundToggle.xaml["Canvas.Top"]=390;this.hide();},playAnimation:function(){this.rotateGears.Begin();},stopAnimation:function(){this.rotateGears.Stop();},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";}}; 
if(!window.Websites)window.Websites={};;Websites.OpeningAnimation=function(){};Websites.OpeningAnimation.prototype={initialize:function(xamlString,destination,downloader){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);destination.children.add(this.xaml);this.mainCanvas=this.xaml.findName("canvas");this.miniClipAnimation=this.xaml.findName("MiniClip");this.audioS1=this.xaml.findName("AudioS1");this.audioS2=this.xaml.findName("AudioS2");this.miniS1=this.xaml.findName("miniS1");this.miniS1.SetSource(downloader,"Audio/miniS1.mp3");this.miniS2=this.xaml.findName("miniS2");this.miniS2.SetSource(downloader,"Audio/miniS2.mp3");this.glow=this.xaml.findName("image");this.glow.SetSource(downloader,"Images/minilogoGlow.png");},play:function(){this.miniClipAnimation.Begin();this.audioS1.addEventListener("Completed",Silverlight.createDelegate(this,this.audioS1Completed));this.audioS1.Begin();this.audioS2.addEventListener("Completed",Silverlight.createDelegate(this,this.audioS2Completed));this.audioS2.Begin();},remove:function(){this.rootElement.children.remove(this.xaml);},audioS1Completed:function(){this.miniS1.Play();},audioS2Completed:function(){this.miniS2.Play();}}; 
if(!window.Websites)window.Websites={};;Websites.Pause=function(){};Websites.Pause.prototype={initialize:function(xamlString,destination,downloader){this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.rootElement.children.add(this.xaml);var menuItemXamlString=downloader.getResponseText("View/Screens/Buttons/MenuBig.xaml");var pathTextXamlString=downloader.getResponseText("View/Screens/Buttons/QuitText.xaml");this.quitButton=new Websites.Button();this.quitButton.initialize(menuItemXamlString,pathTextXamlString,this.xaml);this.quitButton.xaml["Canvas.Left"]=133;this.quitButton.xaml["Canvas.Top"]=124;pathTextXamlString=downloader.getResponseText("View/Screens/Buttons/ContinueText.xaml");this.continueButton=new Websites.Button();this.continueButton.initialize(menuItemXamlString,pathTextXamlString,this.xaml);this.continueButton.xaml["Canvas.Left"]=133;this.continueButton.xaml["Canvas.Top"]=214;this.hide();},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";}}; 
if(!window.Websites)window.Websites={};;Websites.Preloader=function(){};Websites.Preloader.prototype={Initialize:function(XamlString,Destination){this.Host=Destination.getHost();this.rootElement=Destination;this.Xaml=this.Host.content.CreateFromXaml(XamlString,true);this.LoaderHolder=this.Xaml.findName("loaderHolder");this.LoaderScaler=this.Xaml.findName("loaderScaler");this.LoadingTextPercent=this.Xaml.findName("loadingTextPercent");this.FillBar=this.Xaml.findName("fillBar");this.FillScaler=this.Xaml.findName("fillScaler");Destination.children.add(this.Xaml);},Remove:function(){this.rootElement.children.remove(this.Xaml);},Hide:function(){this.Xaml.Visibility="Collapsed";},Show:function(){this.Xaml.Visibility="Visible";},SetLoadedPercentage:function(percent){var formatted=Math.floor(percent*100);this.FillScaler.ScaleX=percent;this.LoadingTextPercent.Text=formatted+"%";}}; 
if(!window.Websites)window.Websites={};;Websites.Button=function(){};Websites.Button.prototype={initialize:function(xamlString,textXaml,destination){this.toggled=false;this.clickHandler=null;this.control=destination.getHost();this.rootElement=destination;this.xaml=this.control.content.CreateFromXaml(xamlString,true);this.xaml.Cursor="Hand";this.xaml.addEventListener("MouseEnter",Silverlight.createDelegate(this,this.rollOverHandler));this.xaml.addEventListener("MouseLeave",Silverlight.createDelegate(this,this.rollOutHandler));this.xaml.addEventListener("MouseLeftButtonUp",Silverlight.createDelegate(this,this.internalClickHandler));this.rollOver=this.xaml.findName("rollOverAnimation");this.rollOut=this.xaml.findName("rollOutAnimation");this.enableStory=this.xaml.findName("enableSelection");this.disableStory=this.xaml.findName("disableSelection");if(textXaml!=null){this.pathText=this.control.content.CreateFromXaml(textXaml,true);this.pathText["Canvas.Left"]=(this.xaml["Width"]-this.pathText["Width"])/2;this.pathText["Canvas.Top"]=(this.xaml["Height"]-this.pathText["Height"])/2;this.pathText.IsHitTestVisible=false;this.xaml.children.add(this.pathText);}this.toggleOn=this.xaml.findName("toggleOn");this.toggleOff=this.xaml.findName("toggleOff");this.rootElement.children.add(this.xaml);this.rotator=this.xaml.findName("buttonRotation");},remove:function(){this.rootElement.children.remove(this.xaml);},hide:function(){this.xaml.Visibility="Collapsed";},show:function(){this.xaml.Visibility="Visible";},rollOverHandler:function(){if(this.rollOver!=null){this.rollOver.Begin();}},rollOutHandler:function(){if(this.rollOut!=null){this.rollOut.Begin();}},internalClickHandler:function(){soundManager.buttonClick.playOnce();this.setToggledState(!this.toggled);if(this.clickHandler!=null){this.clickHandler();}},setToggledState:function(newState){this.toggled=newState;if(this.toggled&&this.toggleOn!=null){this.toggleOn.Begin();}else if(this.toggleOff!=null){this.toggleOff.Begin();}},enable:function(){if(this.enableStory!=null){this.enableStory.Begin();}this.xaml.IsHitTestVisible=true;},disable:function(){if(this.disableStory!=null){this.disableStory.Begin();}this.xaml.IsHitTestVisible=false;}}; 
if(!window.Websites)window.Websites={};;Websites.GameBoards=function(){};Websites.GameBoards.prototype={Initialize:function(){this.boardPointer=1;this.boards=[];this.boards[0]=[];this.SetupSecondaryDimension(this.boards[0],5);this.boards[0][0][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[0][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[0][2][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[0][3][0]={tile:3,hflip:0,vflip:0,rot:0};this.boards[0][4][0]={tile:4,hflip:0,vflip:0,rot:0};this.boards[1]=[];this.SetupSecondaryDimension(this.boards[1],10);this.boards[1][0][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[1][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][2][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][3][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[1][4][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][5][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[1][6][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][8][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][9][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[1][0][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][1][1]={tile:0,hflip:1,vflip:0,rot:0};this.boards[1][2][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][3][1]={tile:0,hflip:1,vflip:0,rot:1};this.boards[1][4][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][5][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[1][6][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][7][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[1][8][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][9][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][0][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][1][2]={tile:0,hflip:1,vflip:0,rot:0};this.boards[1][2][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][3][2]={tile:0,hflip:1,vflip:0,rot:1};this.boards[1][4][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][5][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[1][6][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][7][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[1][8][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][9][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][0][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][1][3]={tile:0,hflip:1,vflip:0,rot:0};this.boards[1][2][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][3][3]={tile:0,hflip:1,vflip:0,rot:1};this.boards[1][4][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][5][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[1][6][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][7][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[1][8][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][9][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][0][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][1][4]={tile:0,hflip:1,vflip:0,rot:0};this.boards[1][2][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][3][4]={tile:0,hflip:1,vflip:0,rot:1};this.boards[1][4][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][5][4]={tile:0,hflip:0,vflip:0,rot:0};this.boards[1][6][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][7][4]={tile:0,hflip:0,vflip:0,rot:1};this.boards[1][8][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][9][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][1][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[1][2][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][3][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[1][4][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][5][5]={tile:0,hflip:0,vflip:0,rot:0};this.boards[1][6][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][7][5]={tile:0,hflip:0,vflip:0,rot:1};this.boards[1][8][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][9][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][0][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][1][6]={tile:0,hflip:1,vflip:0,rot:0};this.boards[1][2][6]={tile:0,hflip:0,vflip:0,rot:0};this.boards[1][3][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][4][6]={tile:0,hflip:0,vflip:0,rot:1};this.boards[1][5][6]={tile:0,hflip:0,vflip:0,rot:0};this.boards[1][6][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][7][6]={tile:0,hflip:0,vflip:0,rot:1};this.boards[1][8][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][9][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][0][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][1][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[1][2][7]={tile:3,hflip:1,vflip:0,rot:1};this.boards[1][3][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][4][7]={tile:4,hflip:1,vflip:0,rot:1};this.boards[1][5][7]={tile:0,hflip:0,vflip:0,rot:0};this.boards[1][6][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[1][7][7]={tile:0,hflip:0,vflip:0,rot:1};this.boards[1][8][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[1][9][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2]=[];this.SetupSecondaryDimension(this.boards[2],10);this.boards[2][0][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[2][1][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][2][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][3][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[2][4][0]={tile:0,hflip:1,vflip:0,rot:1};this.boards[2][5][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][6][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][8][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][9][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][0][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[2][1][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][2][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][3][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[2][4][1]={tile:0,hflip:1,vflip:0,rot:1};this.boards[2][5][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][7][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][8][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][9][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][0][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[2][1][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][2][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][3][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[2][4][2]={tile:0,hflip:1,vflip:0,rot:1};this.boards[2][5][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][6][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][7][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][8][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][9][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][0][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[2][1][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][2][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][3][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[2][4][3]={tile:0,hflip:1,vflip:0,rot:1};this.boards[2][5][3]={tile:4,hflip:0,vflip:0,rot:0};this.boards[2][6][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][7][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][8][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][9][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][0][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][1][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][2][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][3][4]={tile:0,hflip:0,vflip:0,rot:1};this.boards[2][4][4]={tile:0,hflip:1,vflip:0,rot:0};this.boards[2][5][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][6][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][7][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][8][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][9][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][1][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][2][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][3][5]={tile:0,hflip:0,vflip:0,rot:1};this.boards[2][4][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[2][5][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][6][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][7][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][8][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][9][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][0][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][1][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][2][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][3][6]={tile:0,hflip:0,vflip:0,rot:1};this.boards[2][4][6]={tile:0,hflip:1,vflip:0,rot:0};this.boards[2][5][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][6][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][7][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][8][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][9][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[2][0][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][1][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][2][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[2][3][7]={tile:0,hflip:0,vflip:0,rot:1};this.boards[2][4][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[2][5][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][6][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][7][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[2][8][7]={tile:3,hflip:1,vflip:0,rot:1};this.boards[2][9][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3]=[];this.SetupSecondaryDimension(this.boards[3],10);this.boards[3][0][0]={tile:3,hflip:0,vflip:0,rot:0};this.boards[3][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][2][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][3][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][4][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][5][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][6][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][8][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][9][0]={tile:4,hflip:1,vflip:0,rot:0};this.boards[3][0][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][1][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][2][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[3][3][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[3][4][1]={tile:0,hflip:1,vflip:0,rot:1};this.boards[3][5][1]={tile:0,hflip:1,vflip:0,rot:0};this.boards[3][6][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][7][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][8][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][9][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][0][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][1][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][2][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[3][3][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[3][4][2]={tile:0,hflip:1,vflip:0,rot:1};this.boards[3][5][2]={tile:0,hflip:1,vflip:0,rot:0};this.boards[3][6][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][7][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][8][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[3][9][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][0][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][1][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][2][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[3][3][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[3][4][3]={tile:0,hflip:1,vflip:0,rot:1};this.boards[3][5][3]={tile:0,hflip:1,vflip:0,rot:0};this.boards[3][6][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][7][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][8][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][9][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][0][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][1][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][2][4]={tile:0,hflip:0,vflip:0,rot:0};this.boards[3][3][4]={tile:0,hflip:0,vflip:0,rot:1};this.boards[3][4][4]={tile:0,hflip:1,vflip:0,rot:1};this.boards[3][5][4]={tile:0,hflip:1,vflip:0,rot:0};this.boards[3][6][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][7][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][8][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][9][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][0][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][1][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][2][5]={tile:0,hflip:0,vflip:0,rot:0};this.boards[3][3][5]={tile:0,hflip:0,vflip:0,rot:1};this.boards[3][4][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[3][5][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[3][6][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][7][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][8][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][9][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][0][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][1][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][2][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][3][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][4][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][5][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][6][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[3][7][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][8][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][9][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][0][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][1][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][2][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][3][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][4][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][5][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][6][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][7][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][8][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[3][9][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4]=[];this.SetupSecondaryDimension(this.boards[4],10);this.boards[4][0][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[4][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][2][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][3][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[4][4][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][5][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[4][6][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][8][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][9][0]={tile:0,hflip:1,vflip:0,rot:1};this.boards[4][0][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][1][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][2][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][3][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][4][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][5][1]={tile:0,hflip:1,vflip:0,rot:0};this.boards[4][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][7][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][8][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][9][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][0][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][1][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][2][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][3][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][4][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][5][2]={tile:0,hflip:1,vflip:0,rot:0};this.boards[4][6][2]={tile:0,hflip:1,vflip:0,rot:1};this.boards[4][7][2]={tile:0,hflip:1,vflip:0,rot:1};this.boards[4][8][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[4][9][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][0][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][1][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][2][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][3][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][4][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][5][3]={tile:0,hflip:1,vflip:0,rot:0};this.boards[4][6][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][7][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][8][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[4][9][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][0][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][1][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][2][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][3][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][4][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][5][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][6][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][7][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][8][4]={tile:0,hflip:0,vflip:0,rot:1};this.boards[4][9][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][1][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][2][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][3][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][4][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][5][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][6][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][7][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][8][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][9][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][0][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][1][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][2][6]={tile:0,hflip:0,vflip:0,rot:0};this.boards[4][3][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][4][6]={tile:0,hflip:0,vflip:0,rot:1};this.boards[4][5][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][6][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][7][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[4][8][6]={tile:0,hflip:0,vflip:0,rot:1};this.boards[4][9][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[4][0][7]={tile:0,hflip:0,vflip:0,rot:0};this.boards[4][1][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[4][2][7]={tile:3,hflip:1,vflip:0,rot:1};this.boards[4][3][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][4][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][5][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][6][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][7][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[4][8][7]={tile:4,hflip:1,vflip:0,rot:1};this.boards[4][9][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[5]=[];this.SetupSecondaryDimension(this.boards[5],10);this.boards[5][0][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][2][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][3][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][4][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][5][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][6][0]={tile:4,hflip:0,vflip:0,rot:1};this.boards[5][7][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][8][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[5][9][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][0][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][1][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][2][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][3][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][4][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][5][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][6][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][7][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][8][1]={tile:0,hflip:1,vflip:0,rot:1};this.boards[5][9][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[5][0][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[5][1][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][2][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][3][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][4][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][5][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][6][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][7][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][8][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][9][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][0][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][1][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][2][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][3][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][4][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][5][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][6][3]={tile:0,hflip:1,vflip:0,rot:1};this.boards[5][7][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][8][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][9][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[5][0][4]={tile:0,hflip:1,vflip:0,rot:1};this.boards[5][1][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][2][4]={tile:0,hflip:0,vflip:0,rot:1};this.boards[5][3][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][4][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][5][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][6][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][7][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][8][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][9][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][0][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][1][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][2][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][3][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][4][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[5][5][5]={tile:0,hflip:0,vflip:0,rot:1};this.boards[5][6][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[5][7][5]={tile:0,hflip:0,vflip:0,rot:0};this.boards[5][8][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][9][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][0][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][1][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][2][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][3][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][4][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][5][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][6][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][7][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][8][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[5][9][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[5][0][7]={tile:3,hflip:0,vflip:0,rot:0};this.boards[5][1][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][2][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[5][3][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][4][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][5][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][6][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][7][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][8][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[5][9][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[6]=[];this.SetupSecondaryDimension(this.boards[6],10);this.boards[6][0][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][1][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][2][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[6][3][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][4][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[6][5][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[6][6][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][8][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][9][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][0][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][1][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][2][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[6][3][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][4][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][5][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][7][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][8][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][9][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][0][2]={tile:3,hflip:0,vflip:0,rot:0};this.boards[6][1][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][2][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[6][3][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][4][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[6][5][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][6][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][7][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][8][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][9][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][0][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][1][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][2][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][3][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][4][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[6][5][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[6][6][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[6][7][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[6][8][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[6][9][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[6][0][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][1][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][2][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][3][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][4][4]={tile:0,hflip:1,vflip:0,rot:0};this.boards[6][5][4]={tile:0,hflip:1,vflip:0,rot:0};this.boards[6][6][4]={tile:0,hflip:1,vflip:0,rot:0};this.boards[6][7][4]={tile:0,hflip:1,vflip:0,rot:1};this.boards[6][8][4]={tile:0,hflip:1,vflip:0,rot:1};this.boards[6][9][4]={tile:0,hflip:0,vflip:0,rot:1};this.boards[6][0][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][1][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][2][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][3][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][4][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][5][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][6][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][7][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[6][8][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[6][9][5]={tile:0,hflip:0,vflip:0,rot:1};this.boards[6][0][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][1][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][2][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[6][3][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][4][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][5][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][6][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[6][7][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[6][8][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[6][9][6]={tile:4,hflip:1,vflip:0,rot:0};this.boards[6][0][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][1][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][2][7]={tile:0,hflip:1,vflip:0,rot:1};this.boards[6][3][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[6][4][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][5][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][6][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][7][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][8][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[6][9][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7]=[];this.SetupSecondaryDimension(this.boards[7],10);this.boards[7][0][0]={tile:3,hflip:0,vflip:0,rot:0};this.boards[7][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][2][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][3][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][4][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][5][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][6][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][8][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][9][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[7][0][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][1][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][2][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][3][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][4][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][5][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][7][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][8][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][9][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][0][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[7][1][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][2][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][3][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][4][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][5][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][6][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][7][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[7][8][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][9][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][0][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][1][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][2][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][3][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][4][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][5][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][6][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][7][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][8][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][9][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][0][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][1][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][2][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][3][4]={tile:0,hflip:0,vflip:0,rot:0};this.boards[7][4][4]={tile:4,hflip:1,vflip:0,rot:0};this.boards[7][5][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][6][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][7][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][8][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][9][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][1][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][2][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][3][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[7][4][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][5][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][6][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][7][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[7][8][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][9][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][0][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][1][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][2][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][3][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][4][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][5][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][6][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][7][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][8][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[7][9][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[7][0][7]={tile:0,hflip:1,vflip:0,rot:1};this.boards[7][1][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][2][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][3][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][4][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][5][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][6][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][7][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][8][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[7][9][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[8]=[];this.SetupSecondaryDimension(this.boards[8],10);this.boards[8][0][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][1][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][2][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][3][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][4][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][5][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][6][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][7][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][8][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][9][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][0][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[8][1][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[8][2][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[8][3][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[8][4][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[8][5][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[8][6][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[8][7][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][8][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][9][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][0][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[8][1][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][2][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][3][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][4][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][5][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][6][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[8][7][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][8][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][9][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][0][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[8][1][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][2][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][3][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][4][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][5][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][6][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[8][7][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][8][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][9][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][0][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[8][1][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][2][4]={tile:0,hflip:0,vflip:0,rot:0};this.boards[8][3][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[8][4][4]={tile:4,hflip:1,vflip:0,rot:0};this.boards[8][5][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][6][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[8][7][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][8][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][9][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][0][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[8][1][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[8][2][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[8][3][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][4][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][5][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][6][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[8][7][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[8][8][5]={tile:0,hflip:0,vflip:0,rot:1};this.boards[8][9][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][0][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][1][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][2][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][3][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][4][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][5][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][6][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][7][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][8][6]={tile:3,hflip:1,vflip:0,rot:1};this.boards[8][9][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][0][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][1][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][2][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][3][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][4][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][5][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][6][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][7][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][8][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[8][9][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9]=[];this.SetupSecondaryDimension(this.boards[9],10);this.boards[9][0][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][1][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][2][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][3][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][4][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][5][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][6][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][7][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][8][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][9][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][0][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][1][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][2][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][3][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][4][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][5][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][7][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][8][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][9][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][0][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][1][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][2][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][3][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][4][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][5][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[9][6][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[9][7][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][8][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][9][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][0][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][1][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][2][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][3][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][4][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][5][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[9][6][3]={tile:0,hflip:1,vflip:0,rot:1};this.boards[9][7][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[9][8][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[9][9][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][0][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][1][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][2][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][3][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][4][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][5][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[9][6][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][7][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][8][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[9][9][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][0][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][1][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][2][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][3][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][4][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][5][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[9][6][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][7][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][8][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[9][9][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][0][6]={tile:3,hflip:0,vflip:0,rot:0};this.boards[9][1][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[9][2][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[9][3][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[9][4][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[9][5][6]={tile:0,hflip:1,vflip:0,rot:0};this.boards[9][6][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[9][7][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[9][8][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[9][9][6]={tile:4,hflip:1,vflip:0,rot:0};this.boards[9][0][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][1][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][2][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][3][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][4][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][5][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][6][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][7][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][8][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[9][9][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[10]=[];this.SetupSecondaryDimension(this.boards[10],10);this.boards[10][0][0]={tile:4,hflip:0,vflip:0,rot:0};this.boards[10][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[10][2][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[10][3][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[10][4][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[10][5][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[10][6][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[10][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[10][8][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[10][9][0]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][0][1]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][1][1]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][2][1]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][3][1]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][4][1]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][5][1]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][6][1]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][7][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[10][8][1]={tile:0,hflip:1,vflip:0,rot:0};this.boards[10][9][1]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][0][2]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][1][2]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][2][2]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][3][2]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][4][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[10][5][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[10][6][2]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][7][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[10][8][2]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][9][2]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][0][3]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][1][3]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][2][3]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][3][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[10][4][3]={tile:0,hflip:1,vflip:0,rot:0};this.boards[10][5][3]={tile:0,hflip:1,vflip:0,rot:1};this.boards[10][6][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[10][7][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[10][8][3]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][9][3]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][0][4]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][1][4]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][2][4]={tile:0,hflip:0,vflip:0,rot:0};this.boards[10][3][4]={tile:0,hflip:1,vflip:0,rot:0};this.boards[10][4][4]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][5][4]={tile:3,hflip:0,vflip:0,rot:0};this.boards[10][6][4]={tile:0,hflip:1,vflip:0,rot:0};this.boards[10][7][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[10][8][4]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][9][4]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][0][5]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][1][5]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][2][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[10][3][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[10][4][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[10][5][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[10][6][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[10][7][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[10][8][5]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][9][5]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][0][6]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][1][6]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][2][6]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][3][6]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][4][6]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][5][6]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][6][6]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][7][6]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][8][6]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][9][6]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][0][7]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][1][7]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][2][7]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][3][7]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][4][7]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][5][7]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][6][7]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][7][7]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][8][7]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[10][9][7]={tile:-1,hflip:0,vflip:0,rot:0};this.boards[11]=[];this.SetupSecondaryDimension(this.boards[11],10);this.boards[11][0][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[11][1][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][2][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][3][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[11][4][0]={tile:0,hflip:1,vflip:0,rot:1};this.boards[11][5][0]={tile:0,hflip:1,vflip:0,rot:0};this.boards[11][6][0]={tile:0,hflip:1,vflip:0,rot:0};this.boards[11][7][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[11][8][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][9][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][0][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[11][1][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][2][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][3][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[11][4][1]={tile:0,hflip:1,vflip:0,rot:1};this.boards[11][5][1]={tile:0,hflip:1,vflip:0,rot:0};this.boards[11][6][1]={tile:0,hflip:1,vflip:0,rot:0};this.boards[11][7][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[11][8][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][9][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][0][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[11][1][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][2][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][3][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[11][4][2]={tile:0,hflip:1,vflip:0,rot:1};this.boards[11][5][2]={tile:0,hflip:1,vflip:0,rot:0};this.boards[11][6][2]={tile:3,hflip:0,vflip:0,rot:0};this.boards[11][7][2]={tile:0,hflip:1,vflip:0,rot:1};this.boards[11][8][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][9][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][0][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[11][1][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][2][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][3][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[11][4][3]={tile:0,hflip:1,vflip:0,rot:1};this.boards[11][5][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][6][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][7][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][8][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][9][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][0][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][1][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][2][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][3][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][4][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][5][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][6][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][7][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][8][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][9][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][1][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][2][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][3][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][4][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][5][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][6][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][7][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][8][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][9][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][0][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][1][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][2][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][3][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[11][4][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][5][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][6][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][7][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][8][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][9][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][0][7]={tile:4,hflip:1,vflip:0,rot:1};this.boards[11][1][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][2][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][3][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[11][4][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][5][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][6][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][7][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][8][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[11][9][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12]=[];this.SetupSecondaryDimension(this.boards[12],10);this.boards[12][0][0]={tile:4,hflip:0,vflip:0,rot:0};this.boards[12][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][2][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][3][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][4][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][5][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][6][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][8][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[12][9][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][0][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][1][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][2][1]={tile:0,hflip:1,vflip:0,rot:1};this.boards[12][3][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[12][4][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][5][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][7][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][8][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[12][9][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][0][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][1][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][2][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][3][2]={tile:0,hflip:1,vflip:0,rot:1};this.boards[12][4][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[12][5][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][6][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][7][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][8][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[12][9][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][0][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[12][1][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][2][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][3][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[12][4][3]={tile:0,hflip:1,vflip:0,rot:1};this.boards[12][5][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[12][6][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][7][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][8][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[12][9][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][0][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][1][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][2][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][3][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[12][4][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][5][4]={tile:0,hflip:1,vflip:0,rot:1};this.boards[12][6][4]={tile:0,hflip:0,vflip:0,rot:1};this.boards[12][7][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][8][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[12][9][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[12][1][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][2][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][3][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[12][4][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][5][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][6][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[12][7][5]={tile:0,hflip:0,vflip:0,rot:1};this.boards[12][8][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[12][9][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][0][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][1][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][2][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][3][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[12][4][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][5][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][6][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][7][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[12][8][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[12][9][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][0][7]={tile:0,hflip:0,vflip:0,rot:1};this.boards[12][1][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][2][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[12][3][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][4][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][5][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][6][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][7][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[12][8][7]={tile:0,hflip:1,vflip:0,rot:1};this.boards[12][9][7]={tile:3,hflip:1,vflip:0,rot:0};this.boards[13]=[];this.SetupSecondaryDimension(this.boards[13],10);this.boards[13][0][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[13][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][2][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][3][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][4][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][5][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][6][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][8][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][9][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[13][0][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][1][1]={tile:4,hflip:0,vflip:0,rot:1};this.boards[13][2][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][3][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][4][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][5][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][6][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][7][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][8][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][9][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][0][2]={tile:0,hflip:1,vflip:0,rot:1};this.boards[13][1][2]={tile:0,hflip:1,vflip:0,rot:0};this.boards[13][2][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][3][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][4][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][5][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][6][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][7][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][8][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][9][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][0][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][1][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][2][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][3][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][4][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][5][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][6][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][7][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][8][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][9][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][0][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][1][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][2][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][3][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][4][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][5][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][6][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][7][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][8][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][9][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][1][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][2][5]={tile:3,hflip:0,vflip:0,rot:0};this.boards[13][3][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][4][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][5][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][6][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][7][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[13][8][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][9][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[13][0][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][1][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][2][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][3][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][4][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][5][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][6][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][7][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][8][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][9][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][0][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][1][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][2][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][3][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][4][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][5][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][6][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][7][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][8][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[13][9][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[14]=[];this.SetupSecondaryDimension(this.boards[14],10);this.boards[14][0][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][2][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][3][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][4][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][5][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][6][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][7][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[14][8][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][9][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][0][1]={tile:3,hflip:0,vflip:0,rot:0};this.boards[14][1][1]={tile:0,hflip:1,vflip:0,rot:1};this.boards[14][2][1]={tile:0,hflip:1,vflip:0,rot:1};this.boards[14][3][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][4][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[14][5][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[14][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][7][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[14][8][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][9][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][0][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][1][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][2][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][3][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][4][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][5][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][6][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][7][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][8][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][9][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][0][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][1][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][2][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][3][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][4][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][5][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][6][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][7][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][8][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][9][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][0][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][1][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][2][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][3][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][4][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][5][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][6][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][7][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[14][8][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][9][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[14][1][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[14][2][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][3][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[14][4][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[14][5][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[14][6][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[14][7][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[14][8][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][9][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][0][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[14][1][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][2][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[14][3][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[14][4][6]={tile:0,hflip:0,vflip:0,rot:1};this.boards[14][5][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][6][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[14][7][6]={tile:4,hflip:1,vflip:0,rot:0};this.boards[14][8][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][9][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][0][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[14][1][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[14][2][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][3][7]={tile:1,hflip:0,vflip:0,rot:1};this.boards[14][4][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][5][7]={tile:0,hflip:0,vflip:0,rot:1};this.boards[14][6][7]={tile:0,hflip:0,vflip:0,rot:1};this.boards[14][7][7]={tile:0,hflip:0,vflip:0,rot:1};this.boards[14][8][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[14][9][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15]=[];this.SetupSecondaryDimension(this.boards[15],10);this.boards[15][0][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][1][0]={tile:3,hflip:0,vflip:0,rot:1};this.boards[15][2][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[15][3][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[15][4][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][5][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][6][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][7][0]={tile:4,hflip:0,vflip:0,rot:1};this.boards[15][8][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][9][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][0][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][1][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][2][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][3][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][4][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[15][5][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[15][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][7][1]={tile:0,hflip:1,vflip:0,rot:1};this.boards[15][8][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[15][9][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[15][0][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][1][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][2][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][3][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][4][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][5][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][6][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][7][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][8][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[15][9][2]={tile:0,hflip:1,vflip:0,rot:0};this.boards[15][0][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][1][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][2][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][3][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][4][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][5][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][6][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[15][7][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[15][8][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][9][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][0][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][1][4]={tile:0,hflip:1,vflip:0,rot:1};this.boards[15][2][4]={tile:0,hflip:1,vflip:0,rot:0};this.boards[15][3][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][4][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][5][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][6][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][7][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][8][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][9][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][0][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][1][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][2][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][3][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][4][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][5][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][6][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][7][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][8][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][9][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][0][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][1][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][2][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][3][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][4][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][5][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[15][6][6]={tile:0,hflip:1,vflip:0,rot:0};this.boards[15][7][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][8][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[15][9][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][0][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][1][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][2][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][3][7]={tile:0,hflip:1,vflip:0,rot:1};this.boards[15][4][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[15][5][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][6][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[15][7][7]={tile:0,hflip:1,vflip:0,rot:1};this.boards[15][8][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[15][9][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16]=[];this.SetupSecondaryDimension(this.boards[16],10);this.boards[16][0][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[16][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][2][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][3][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][4][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][5][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][6][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][8][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][9][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[16][0][1]={tile:0,hflip:1,vflip:0,rot:1};this.boards[16][1][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][2][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][3][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][4][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][5][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][6][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][7][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][8][1]={tile:0,hflip:0,vflip:0,rot:1};this.boards[16][9][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][0][2]={tile:4,hflip:0,vflip:0,rot:1};this.boards[16][1][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][2][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][3][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][4][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][5][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][6][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][7][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][8][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][9][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][0][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][1][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][2][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][3][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[16][4][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][5][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][6][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[16][7][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][8][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][9][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][0][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][1][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][2][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][3][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][4][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][5][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][6][4]={tile:3,hflip:1,vflip:0,rot:1};this.boards[16][7][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][8][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][9][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][1][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][2][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][3][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[16][4][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][5][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][6][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][7][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][8][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[16][9][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][0][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][1][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][2][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][3][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][4][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][5][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][6][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][7][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][8][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[16][9][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[16][0][7]={tile:0,hflip:1,vflip:0,rot:1};this.boards[16][1][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][2][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][3][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][4][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][5][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][6][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][7][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][8][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[16][9][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[17]=[];this.SetupSecondaryDimension(this.boards[17],10);this.boards[17][0][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[17][1][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][2][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][3][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][4][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][5][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][6][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][8][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][9][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[17][0][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][1][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][2][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][3][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][4][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][5][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][7][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][8][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][9][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][0][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][1][2]={tile:3,hflip:0,vflip:0,rot:0};this.boards[17][2][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][3][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][4][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[17][5][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][6][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][7][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][8][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][9][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][0][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][1][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][2][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][3][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][4][3]={tile:0,hflip:1,vflip:0,rot:1};this.boards[17][5][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[17][6][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][7][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[17][8][3]={tile:4,hflip:1,vflip:0,rot:0};this.boards[17][9][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][0][4]={tile:0,hflip:1,vflip:0,rot:1};this.boards[17][1][4]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][2][4]={tile:0,hflip:0,vflip:0,rot:1};this.boards[17][3][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][4][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][5][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][6][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][7][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][8][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][9][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][0][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][1][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][2][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][3][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][4][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][5][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][6][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][7][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][8][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][9][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][0][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][1][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][2][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][3][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][4][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][5][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[17][6][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][7][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[17][8][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][9][6]={tile:0,hflip:1,vflip:0,rot:0};this.boards[17][0][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][1][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][2][7]={tile:0,hflip:1,vflip:0,rot:1};this.boards[17][3][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][4][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[17][5][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[17][6][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][7][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][8][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[17][9][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18]=[];this.SetupSecondaryDimension(this.boards[18],10);this.boards[18][0][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][1][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][2][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][3][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][4][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][5][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][6][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][7][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][8][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][9][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][0][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][1][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][2][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][3][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][4][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][5][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][6][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][7][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][8][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][9][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][0][2]={tile:3,hflip:0,vflip:0,rot:1};this.boards[18][1][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[18][2][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][3][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][4][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][5][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][6][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][7][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[18][8][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[18][9][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][0][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][1][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][2][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][3][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[18][4][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][5][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][6][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[18][7][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][8][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][9][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][0][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][1][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][2][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][3][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][4][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][5][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][6][4]={tile:4,hflip:1,vflip:0,rot:1};this.boards[18][7][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][8][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][9][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][1][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][2][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[18][3][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[18][4][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][5][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][6][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][7][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[18][8][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[18][9][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][0][6]={tile:1,hflip:0,vflip:0,rot:1};this.boards[18][1][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[18][2][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][3][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][4][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][5][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][6][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][7][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][8][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][9][6]={tile:0,hflip:0,vflip:0,rot:1};this.boards[18][0][7]={tile:0,hflip:1,vflip:0,rot:1};this.boards[18][1][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][2][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][3][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][4][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][5][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][6][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][7][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][8][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[18][9][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[19]=[];this.SetupSecondaryDimension(this.boards[19],10);this.boards[19][0][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][1][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][2][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][3][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][4][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][5][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][6][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][7][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][8][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][9][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][0][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][1][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][2][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][3][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][4][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][5][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][7][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][8][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][9][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][0][2]={tile:3,hflip:0,vflip:0,rot:0};this.boards[19][1][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][2][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][3][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][4][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][5][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][6][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][7][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][8][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][9][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[19][0][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][1][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][2][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][3][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[19][4][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][5][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][6][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][7][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][8][3]={tile:0,hflip:0,vflip:0,rot:1};this.boards[19][9][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[19][0][4]={tile:4,hflip:0,vflip:0,rot:1};this.boards[19][1][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][2][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][3][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[19][4][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][5][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][6][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][7][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][8][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[19][9][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[19][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[19][1][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][2][5]={tile:0,hflip:0,vflip:0,rot:0};this.boards[19][3][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[19][4][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][5][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][6][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][7][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][8][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[19][9][5]={tile:0,hflip:1,vflip:0,rot:0};this.boards[19][0][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[19][1][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[19][2][6]={tile:0,hflip:1,vflip:0,rot:0};this.boards[19][3][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][4][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][5][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][6][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][7][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][8][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][9][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][0][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][1][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][2][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][3][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][4][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][5][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][6][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][7][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][8][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[19][9][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20]=[];this.SetupSecondaryDimension(this.boards[20],10);this.boards[20][0][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][1][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][2][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][3][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][4][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][5][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][6][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][7][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][8][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][9][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][0][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][1][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][2][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][3][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[20][4][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][5][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][7][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][8][1]={tile:0,hflip:0,vflip:0,rot:0};this.boards[20][9][1]={tile:4,hflip:1,vflip:0,rot:0};this.boards[20][0][2]={tile:3,hflip:0,vflip:0,rot:0};this.boards[20][1][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[20][2][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][3][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][4][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][5][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[20][6][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[20][7][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[20][8][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][9][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][0][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][1][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[20][2][3]={tile:0,hflip:1,vflip:0,rot:0};this.boards[20][3][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][4][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[20][5][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][6][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][7][3]={tile:0,hflip:1,vflip:0,rot:0};this.boards[20][8][3]={tile:0,hflip:1,vflip:0,rot:1};this.boards[20][9][3]={tile:4,hflip:1,vflip:0,rot:0};this.boards[20][0][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][1][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[20][2][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][3][4]={tile:0,hflip:0,vflip:0,rot:0};this.boards[20][4][4]={tile:0,hflip:1,vflip:0,rot:0};this.boards[20][5][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][6][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][7][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][8][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][9][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][0][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][1][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[20][2][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][3][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[20][4][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][5][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][6][5]={tile:0,hflip:0,vflip:0,rot:0};this.boards[20][7][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][8][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][9][5]={tile:4,hflip:1,vflip:0,rot:0};this.boards[20][0][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][1][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[20][2][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][3][6]={tile:0,hflip:1,vflip:0,rot:0};this.boards[20][4][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][5][6]={tile:0,hflip:1,vflip:0,rot:0};this.boards[20][6][6]={tile:0,hflip:1,vflip:0,rot:0};this.boards[20][7][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][8][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][9][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][0][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][1][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][2][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][3][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][4][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][5][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][6][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[20][7][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][8][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[20][9][7]={tile:4,hflip:1,vflip:0,rot:0};this.boards[21]=[];this.SetupSecondaryDimension(this.boards[21],10);this.boards[21][0][0]={tile:4,hflip:0,vflip:0,rot:0};this.boards[21][1][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][2][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][3][0]={tile:0,hflip:0,vflip:0,rot:0};this.boards[21][4][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][5][0]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][6][0]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][7][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][8][0]={tile:0,hflip:0,vflip:0,rot:1};this.boards[21][9][0]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][0][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][1][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][2][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][3][1]={tile:0,hflip:1,vflip:0,rot:0};this.boards[21][4][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][5][1]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][6][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][7][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][8][1]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][9][1]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][0][2]={tile:4,hflip:1,vflip:0,rot:1};this.boards[21][1][2]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][2][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][3][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][4][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][5][2]={tile:0,hflip:0,vflip:0,rot:0};this.boards[21][6][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][7][2]={tile:0,hflip:0,vflip:0,rot:1};this.boards[21][8][2]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][9][2]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][0][3]={tile:0,hflip:0,vflip:0,rot:0};this.boards[21][1][3]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][2][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][3][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][4][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][5][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][6][3]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][7][3]={tile:0,hflip:1,vflip:0,rot:1};this.boards[21][8][3]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][9][3]={tile:0,hflip:1,vflip:0,rot:0};this.boards[21][0][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][1][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][2][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][3][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][4][4]={tile:4,hflip:1,vflip:0,rot:1};this.boards[21][5][4]={tile:0,hflip:1,vflip:0,rot:1};this.boards[21][6][4]={tile:0,hflip:0,vflip:0,rot:1};this.boards[21][7][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][8][4]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][9][4]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][0][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][1][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][2][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][3][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][4][5]={tile:0,hflip:0,vflip:0,rot:1};this.boards[21][5][5]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][6][5]={tile:0,hflip:1,vflip:0,rot:1};this.boards[21][7][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][8][5]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][9][5]={tile:1,hflip:0,vflip:0,rot:1};this.boards[21][0][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][1][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][2][6]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][3][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][4][6]={tile:0,hflip:1,vflip:0,rot:1};this.boards[21][5][6]={tile:0,hflip:0,vflip:0,rot:1};this.boards[21][6][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][7][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][8][6]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][9][6]={tile:3,hflip:1,vflip:0,rot:1};this.boards[21][0][7]={tile:0,hflip:1,vflip:0,rot:1};this.boards[21][1][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][2][7]={tile:0,hflip:1,vflip:0,rot:0};this.boards[21][3][7]={tile:4,hflip:0,vflip:0,rot:0};this.boards[21][4][7]={tile:2,hflip:0,vflip:0,rot:0};this.boards[21][5][7]={tile:0,hflip:1,vflip:0,rot:1};this.boards[21][6][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][7][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][8][7]={tile:1,hflip:0,vflip:0,rot:0};this.boards[21][9][7]={tile:4,hflip:1,vflip:0,rot:0};},SetupSecondaryDimension:function(toSetup,dimensionLength){for(i=0;i<dimensionLength;i++){toSetup[i]=[];}},GetTotalBoardCount:function(){return this.boards.length-1;},GetCurrentBoardCount:function(){return this.boardPointer-1;},GetNextBoard:function(){var nextBoard=this.boards[this.boardPointer];this.boardPointer++;if(nextBoard!=null){this.RandomizeBoard(nextBoard);}return nextBoard;},GetSpecificBoard:function(index){this.boardPointer=++index;var nextBoard=this.boards[this.boardPointer];this.boardPointer++;if(nextBoard!=null){this.RandomizeBoard(nextBoard);}return nextBoard;},ResetBoardCount:function(){this.boardPointer=1;},RandomizeBoard:function(toRandomize){var width=toRandomize.length;var height=toRandomize[0].length;if(width>0&&height>0){for(i=0;i<width;i++){for(j=0;j<toRandomize[i].length;j++){if(toRandomize[i][j].tile<2&&toRandomize[i][j].tile>=0){var toSwap=this.SelectRandomLocation(toRandomize,toRandomize[i][j]);if(toSwap!=null){var tempTile=toRandomize[i][j];toRandomize[i][j]=toRandomize[toSwap.x][toSwap.y];toRandomize[toSwap.x][toSwap.y]=tempTile;}}}}}},SelectRandomLocation:function(board,compareTile){var toSwapX=0;var toSwapY=0;var result=null;var loopCount=0;while(result==null&&loopCount<board.length){loopCount++;toSwapX=Math.floor(Math.random()*board.length);toSwapY=Math.floor(Math.random()*board[toSwapX].length);if(board[toSwapX][toSwapY].tile<2&&board[toSwapX][toSwapY].tile>=0&&board[toSwapX][toSwapY]!=compareTile){result={x:toSwapX,y:toSwapY};}}return result;}}; 
if(!window.Websites)window.Websites={};;Websites.SoundManager=function(){};Websites.SoundManager.prototype={Initialize:function(downloader,rootElement){this.musicLoadedHandler=null;this.loopsLoaded=0;this.menuLoop=new Websites.Sound();this.menuLoop.initialize(downloader,'audio/menuLoop.wma',rootElement);this.menuLoop.loadedHandler=Silverlight.createDelegate(this,this.musicLoaded);this.gameLoop=new Websites.Sound();this.gameLoop.initialize(downloader,'audio/gameLoop.wma',rootElement);this.gameLoop.loadedHandler=Silverlight.createDelegate(this,this.musicLoaded);this.uncoverPanel=new Websites.Sound();this.uncoverPanel.initialize(downloader,'audio/uncoverPanel.wma',rootElement);this.swapBlocks=new Websites.Sound();this.swapBlocks.initialize(downloader,'audio/swapBlocks.wma',rootElement);this.gameOver=new Websites.Sound();this.gameOver.initialize(downloader,'audio/gameOver.wma',rootElement);this.gameWon=new Websites.Sound();this.gameWon.initialize(downloader,'audio/gameWon.wma',rootElement);this.shockBrain=new Websites.Sound();this.shockBrain.initialize(downloader,'audio/shockBrain.wma',rootElement);this.burnBrain=new Websites.Sound();this.burnBrain.initialize(downloader,'audio/brainBurn.wma',rootElement);this.electricTransition=new Websites.Sound();this.electricTransition.initialize(downloader,'audio/electricTransition.wma',rootElement);this.startBoard=new Websites.Sound();this.startBoard.initialize(downloader,'audio/startUp.wma',rootElement);this.quickFill=new Websites.Sound();this.quickFill.initialize(downloader,'audio/quickFill.wma',rootElement);this.bubbles=new Websites.Sound();this.bubbles.initialize(downloader,'audio/bubbles.wma',rootElement);this.buttonClick=new Websites.Sound();this.buttonClick.initialize(downloader,'audio/buttonClick.wma',rootElement);this.isMenuLoop=true;},musicLoaded:function(){this.loopsLoaded++;if(this.loopsLoaded==2&&this.musicLoadedHandler!=null){this.musicLoadedHandler();}},startMenuLoop:function(){this.menuLoop.playLoop();this.gameLoop.fadeOut();this.isMenuLoop=true;},startGameLoop:function(){this.gameLoop.playLoop();this.menuLoop.fadeOut();this.isMenuLoop=false;},setMuteAll:function(value){this.menuLoop.isMuted=value;this.gameLoop.isMuted=value;if(value==false){if(this.isMenuLoop){this.menuLoop.unMute();}else{this.gameLoop.unMute();}}else{this.menuLoop.mute();this.gameLoop.mute();}this.uncoverPanel.isMuted=value;this.swapBlocks.isMuted=value;this.gameOver.isMuted=value;this.startBoard.isMuted=value;this.gameWon.isMuted=value;this.electricTransition.isMuted=value;this.startBoard.isMuted=value;this.quickFill.isMuted=value;this.bubbles.isMuted=value;this.buttonClick.isMuted=value;this.burnBrain.isMuted=value;this.shockBrain.isMuted=value;}};Util=function(){};;Util.prototype={insertAnimation:function(parentControl,animationFilename,insertId,animationId){insertId=(insertId)?insertId:"Anim";animationId=(animationId)?animationId:"MainAnimation";var downloader=scene.assetLoader;var xamlString=downloader.getResponseText(animationFilename);var insertionPoint=parentControl.findName(insertId);var xaml=parentControl.getHost().content.CreateFromXaml(xamlString,true);insertionPoint.children.add(xaml);var anim=xaml.findName(animationId);if(anim!=null){anim.Begin();}return xaml;}};util=new Util();