In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

ピクロス

ピクロスゲームです。

・ゲームに使用した画像は下記のサイトよりお借りいたしました。
 Whitecat:http://whitecafe.sakura.ne.jp/

・参考にさせていただいたコード。
 *2009-3-14 選んだファイルを Base64 エンコードする
 http://wonderfl.net/c/h1NU/
 *2009-3-14 wonderfl に任意の画像を埋め込む
 http://wonderfl.net/c/7ZwK
 
 memo:swfをダウンロードして動かしても動かない・・・。作り直ししてみた。
Get Adobe Flash player
by seino 26 Jul 2010
/**
 * Copyright seino ( http://wonderfl.net/user/seino )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/oFyF
 */

/*
ピクロスゲームです。

・ゲームに使用した画像は下記のサイトよりお借りいたしました。
 Whitecat:http://whitecafe.sakura.ne.jp/

・参考にさせていただいたコード。
 *2009-3-14 選んだファイルを Base64 エンコードする
 http://wonderfl.net/c/h1NU/
 *2009-3-14 wonderfl に任意の画像を埋め込む
 http://wonderfl.net/c/7ZwK
 
 memo:swfをダウンロードして動かしても動かない・・・。作り直ししてみた。
*/
package {
  import flash.text.TextFieldAutoSize;
  import flash.text.TextFormat;
  import flash.text.TextFormatAlign;
  import flash.text.TextField;
  import flash.events.Event;
  import flash.events.MouseEvent;
  import flash.display.Stage;
  import flash.display.Sprite; 
  import jp.progression.commands.Func;
  import jp.progression.commands.lists.SerialList;
  import jp.progression.commands.Wait;
  
    [SWF(backgroundColor="#666666", frameRate="50")] 
    public class Pcrs extends Sprite {
      private var questionArray:Array= [{title:"プリン"        ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABc0lEQVR42mL8//8/Ay0BQAAxMdAYAAQQzS0ACCCaWwAQQCxEuYKREWtE/fv/n5GQXoAAYiHG4AgJbrzy+CwCCCAWfIZ3m3MynH2IOxRBFhvL/wOrxWUJQAAxkWs4DIDUgNTiCkaAAMJpgrSqAth1hABIDUgtLgAQQDgtiCjxgVuCzSKYOEgNSC0uABBAjOg5GRye9/oZGD49Y3hz4iBYbM+Rz9gd0ZTGwCAqwsDw+g1YPZNBN0aEAwQQ7lT05DKc6WLDyyAiI8TAIKOLXS3IEqAF2ABAAGEPIpDrn7yjSkYDCCAmrMFDCgAFDwjwSTH8u1CKkZoAAoiJUPDgBTiCBRkABBAT0cGDK/yRfYEFAAQQE9muJxIABBATeuHF5LMDQxE4BRERXNiSKUAAMWErIcUyThHnPGDE4jMcBAACiBFXlQlLDa9mmGH1BSyeYI7BVdgBBBAjoToZVyFGbJ0AEECMtK70AQKI5lUmQADR3AKAAAMAlLiHY2j8BdQAAAAASUVORK5CYII="}
                                        ,{title:"ホン"         ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAB/UlEQVR42mL8//8/Ay0BQAAxMdAYAAQQzS0ACCCSLWBiZPwPwsSqBwggJlINztp0hiQHAQQQCzEGg2iQwXt3H2L4MWc6Q112PVz83///jPj0AwQQI65UhG6w9cOrDDKyMgwJJQkML++9ZLh5+SaDnb8dg5KiIlwPNssAAgirBbCgwGcwjH1KSRusZ5qfCVYLAAIIZxDFuRmDg8POyQ7MhxnI6ObAcPg7UEBSkuHUVxawI/ABgADCacGiXWcZ0lbNYdhW3MCgnJ3EcAvkXaChc/ZdAsu/unmbqEgGCCCcqchcRRRsiVdvA9jQk3deg7GunCRJqQgggHBa8H/XAbAlN+89wjAU5PqyZ3MZlqlsBmN8ACCAcAbRvdv3GJ7sOwQOJpDLk++XMmxa+RAsVybJyfDoOTAiDr1iMLATw2sBQADhtODJ4yfg1IMM5IAGgwyMuuPLwCAFFbyDP4gAAginBfYddQwHK5rg/ALmIgbdeEmGs0C2MzDpX370HCXIcAGAACK6qECPB2S+mLoqTn0AAYQ3ktGDCJulhFIVQADhtOAQMILfuPsS9BkoqPAFEUAA4bQAloMJAUIZDiCAcEYyrIwB5QN8Lr85uQivBQABhNUCUKGFrewHGXo4xxdDLT4LAAKIEV+lj63mImQgOgAIIEZatyoAAojmlT5AgAEAmEjSW4VYDu0AAAAASUVORK5CYII="}
                                        ,{title:"ハンマー"       ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFwgiIwtZQDUAAAIySURBVDjLnZVBSNtQGMf/eS/iIcgsY1AoOKllo8yTQjckiXR4HEq3HWTsVJjHsQ0Zu4kHTwVlHlV66iGnuuHoKWOYgAMPxZsU2qAOoVjGoiWDQrPs8LLQpWni9vEO7z2+/PJ/3/e973GO4yDUJErZRLftEDc+krK5MdtLHITjwhWxj5cSM5PLQ2zn5ev9QFYYSKJULxQA1BRFaQgA5le4I+2iuHvcz/KDevV7cgyLX5ywGGss2woE8T5K5eQtTmsurlCoKQrQQRNKQ0gKXcPiAeRzaYlSH4v4z3Naq1fNfC49noitru0pDeGwOZyJdwAYFp8UumdfbkVnTbdtpmXuwfjDTLxUrsuxlGHxaMKTo5paHumIYEuULiVm2M9ZOErlSzmWAlxQUuhunR8EFoEL8oICYHVtb3HCOmwOGxbfy1JNLaKOJEor+wts/eFZKxPvsLj4WKqphRQ3JxKitz+xRbu6DWB94QdLNjvOWLYFoFS+/PzrW0jp/pW1kakXAN58jHmUpNAt7h4DeP74hnfpokEAcPtuvWrOr3D9rpsbsyEsotu2NPKodyuVuw9gcnlINbWt8wPdtpmocJarqP1dc093U/ZYXo4Y60i7SE2NDmLxXh1WTlxKoHm1+vTVHcbyZ9D5YyIhIiFXZ+/YEAlx+kwkpPjk3pWeq77P+hzQ78qGM8AGseD8uwWyIlptZLx2pqfZnIts/iH9c25UZndANTUe/2uuroZ8reZ/zZfq51ftN676uTNsqS0jAAAAAElFTkSuQmCC"}
                                        ,{title:"オタマ"        ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFwgtIvvGbGwAAAEYSURBVDjLY/z//z8DNQALGXqMGRkhjLNIjmAhw5RTGboMDAx3znIYMzLCzWIhzyMtq4SVuP+gCP0nBRgxMJzYe6JByMGIgQGC4FIku2j7uu2b3x04ixlFJDnn/v37Rji0MJHknAU9C3DKUcU5pLkIn3OIdBFB55DgIgLOIcZFkLRjREglE5Fph6AaJmJy1pPHTwjbhtUvcPQnQ3eRrI0RESHAgukE5OR/08zs3lcWkssjiCkNOQ1wv6R2TN7kbHGWiMKPCY8p5JeQDx48gJhy9+FdUg3CEmtwUzr6OoiJeCwuaslvSc1PhXNnT5wtIytDskFn//83ZmS86WR37/Y9iAdlZGU2T208S1w1w4hWHcFrCMx6Aj8AADtf2f0nd/3kAAAAAElFTkSuQmCC"}
                                        ,{title:"タネ"         ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFwgsJXy5yI4AAAFFSURBVDjLY/z//z8DNQATA5XA4DOIhVQNxoyMEMZZ1MBlIdWU6KcrkE2EG8dCqimb5l6U0VFmYGDgbaqECELMIs1FM4rWZvQFQ9inVt7hXbmaZK/BnbNUOgIiwosaTKS56HNd+1kcCZiE6D938gvJ0Q+PY3hMn/3/35iRkbepEh66BAyCGHH8aS8DA8PXW88ZGBiePPgD0Qwx63N4KFazWNBMgRgBMeXJgz/nDl5iYGDIS3DC5RA4YITnfmNGxj37S+AS3GqScLMe3HrAwMCw6di9z+GhvCtX4/MaxJQnD/5AuDIKLBB/MTAwPLj14IOPEwMDw2dZY1ymoHgN7hEGBoZzBxmM7PUYGBjgIo+u3+VduR+P71C85melpKCmgCwN8dQlZfkHi/cTG0bwKPOzUkJWQYwp6AZhTUSYJQaxBo2W2WgAAMn0ru6TLiMtAAAAAElFTkSuQmCC"}
                                        ,{title:"フエ"         ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFwgsD6cCAVgAAADjSURBVDjLrdW/CcJAFMfx34PsoCCIOIFcOl0iDmDqG8IuC1hebRVSiJWkygZZIQRBSKZ4FicmSkzuj68KhPvw5Yp7xMz4xwQ+h0Mi/VEyBz7EMZHb3Wa2XoVEgZtyK1Sa5ftDBKCtagBgyxHAJZECEADXeVOok4yE2x3dH00so+Vi3lZ1muVndS2Z4ZDTFKrfon/hL4oF9L6aQcUUGm8xhSZbjCCTlmnIsGUCMm8Zg6xafkK2LcOQQ8sA5NbyDTm3fEA+LR3kr3SQPuysMDMxc0gUy0g/Wq9Xyn5Ir6P+PnBbB0/lzSnh1EArlQAAAABJRU5ErkJggg=="}
                                        ,{title:"トウガラシ"     ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFwgrM8cs6xgAAAEpSURBVDjLY/z//z8DNQATA5UAmQYZMzJSx6Cz//+jmTXQXqNmGJ1FjW4mqoQ0yQYZMzIaMzKyZOphkftPHDBiYDBiYPCZ4zzzTK4RNl0sRDrk9GJtBgaGr3W3XDxeY1dEjFv+/z/7///ZT4qynxRldyrKYHURaWF0nOH/3tdvsUoR5bV/S+IgDEsGRgZR4T1fnpAca5DQ+Vr3CeIc7iY+8hPk17pPxxn+MzAw7H399mvdp8r7T85iK3mYCDoHEi5wR+FSzIinYDNmZGxXlIEETcvrNwwMDHu+fD+LQz0TwbSz9/VbiCnOosJ4nI/dRcaMjAcUZZEj21lUGFfo4DQIYgrEFXAjIIUZvkjBTMc7FWXKeDghKRiCiMmM6C5CLiLOklLBMFKrOgIASj0dOIx9jLoAAAAASUVORK5CYII="}
                                        ,{title:"ミカン"        ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFwgrBH+RThcAAAEdSURBVDjLY/z//z8DNQATA5XAqEGEAQseOWNGRjSRs7ijmAWPERXrbC4JenhqaTMwMFRPmZFl+BUijtU4Rsx0ZMzIePZoKMPBowwMDKs1lHb81Lt37W6W4dfQG/feXfwtFCRhHH4Z0yx0g4wZGc8+6mR4fIaBgYHhyQ2Gu28ZlIXfrXsBkRXSZ2VgYGBQFsY0C1tgo5rCcPctVD8Dw7uLvxkYGBjuviUQa1DnQEyR0YCYwqAsDHcL3MSzK3XRogJH9MtoILsI4hYhfVaoi7A5CodByC6ChQ66WYQD+2goWhghQgfmO+OqZ0QENjZTkMMbq6NwpKM2KURIo7qIgYHBdeVrwukIOWWfXanLcPctmhEkpGzy8hrjaFFLP4MAZWqr+hyRDroAAAAASUVORK5CYII="}
                                        ,{title:"トマト"        ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAACM0lEQVR42mL8//8/Ay0BQAAxMdAYAAQQzS0ACCCaWwAQQCyEFHBoc8Ij6cfV74zYxLHJwwBAADESE8lMjIz/OV0YGP4+44CL1VQpMmw99Jnh0r0nDF93/2fEpRcggFgIGQyiv3oqMtx88J9hSzUnXA5muJ6SDAO3K+N/kOXYfAAQQFh9gGwwDDjJ/mY4f+QNA7PUD7ChIMOPPlUAy2Xa/gHzv+9hYPj3H9U3AAHEgs3wc5oKDOoKjAycURoM3Au3gw0EGX7ivwQDw1MGBmuGB/DgAqk7bqvL8P0xK8NNzf9g/ciWAAQQ1lQEM/z7shsMb1gVGaYfZmF4Ly8JFreWhhgOsgxZHWdnFJiPDgACiAXd9aBggWuC0sgav8Z7gsVAACTPoG/EAIqZ7+XLwPxzD1B9ARBAWH1woe063HBkADcQRIMMBclfPAcWg+lD9wVAAGFNRVefcjGoQw0HpR6YJrCvoDRMHCaGCwAEEIYPQBqRaXQ2zHCQI2C+gvkUJIasFgQAAghvUQEzCORSEBuGkeVhcYVuMAwABBCKBaCIMbr+AO4aZINgwYQsjuwrmDhIP3IyBQggrD7Qlv6GYhjM6yAaJAei9337B7cc5nqYPmQAEEA4czIosyEb5MSFcAuyGMjQybc5GHJVf2C4HgQAAghnYYfNElwAl+EgABBAeEtTWJm0mE8LqyUgH8R+ugaPP2xmAAQQ0cU1LjlcBsMAQAAx0rrSBwggmleZAAFEcwsAAgwAB9MzaK/S7KUAAAAASUVORK5CYII="}
                                        ,{title:"ヒョウタン"      ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAB7ElEQVR42mL8//8/Ay0BQAAxMdAYAAQQzS0ACCAWSg3YJS8PD2O3hw8Z0eUBAogBFAfk4p1ycv/x8UEYIIAYKYlkgq4HAoAAwuk6oOr/6BifD7C5HoQBAghrHDAxMv4/neXBYDptB8O/7Zko4v/+/2dEdz0+ABBAWIMIZBCIftgZy8BtoMkg9O8xQs5zOsMOOTmswQKyFF0MIIBwWgAy/NXD1wxi8qJgS75euM5wfepBsLzHo0dwtTAf4QIAAYQzmYIMZQBaALLk2PrjDOrPfjHclGJjsDJSYfjn6w1W845JFu5bXBYBBBDBfHDs3B244bn1rhBBdWYGhpt/wUH3Zmcb2HfI8YMMAAIIa04GKRRxrwIHD8zwgEBLhAKg4WBLgBhkCdi3OABAAOH0AcgSkKtAEQoKFliQgAA40pEtuQnxCTZfAAQQ3rIIpBgWoaC4gAGYRWBLoEGGnNKQAUAAEVXYgYIKFBegsMZqCRA/vvQFq16AACLKAlAYg4JpAzA13d94CMMSkOEgOWwAIIAIpiJYXIDyhRU0VcF8BQL3QckYKJZ/4g7WpAoQQEQX17BMB7PECikZ4wMAAUSUBTBfgNig1AJzPShYQC7Hl9EAAojk4hpmEbFFBUAAMdK60gcIIJrXyQABRHMLAAIMAAPsWhmNvpfhAAAAAElFTkSuQmCC"}
                                        ,{title:"ナイフ"        ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABcUlEQVR42mL8//8/Ay0BQAAxwRmMjP9BmNoWAAQQEzLnH9A31LYIIICY0AVAljTm9TBQyxKAAGLBJphRlAwPNqCFjJRYABBATPgkqeETgABiQgoaRqBhcAnfAG+qWAIQQEzEKKLEEoAAQk9FKL6AxQUllgAEELZUxCiuIAjn104spsgSgADCGkQgS4ycNKniE4AAwhkH1PIJQADhjWRqxAlAABFMReg+gSVfYi0BCCCikinMJyCLNm/YimKZsZIcXksAAogBVFyTgoEB9r8pr+f/+X3X/5soyf3fnW8LpkHi2NQDBBALOZkHFOGmyvIMKmK8YD6ElsNadgEEEFkWICJeDoiFGJLNhRjmnmTAaglAAJFsAbJmkGGVmyE+gFly9h6qeoAAYqGkpIRG/n+Qy0GGgyy58wrVFwABRJEF6JaI+K9hYNjsjiIPEECM1Kj0QRaAkisMnL33CB6UAAHESK1WBXJeQI4ngABipHWzBSDAAOhBznapPcQxAAAAAElFTkSuQmCC"}
                                        ,{title:"エンピツ"      ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABO0lEQVR42mL8//8/Ay0BQAAxMdAYAAQQ3AImRsb/IExtCwACCMUHQZ5OVLcIIIBYYIx///8zggwGWRLu78UAswQkTokFAAHEgi4AMtxVkY3h3c5J8KCjxBKAAEKxAOaL1bkODM4+QZBgO+dFkSUAAYQzFe3dso5BfUMHiiXkWAAQQIzY8gHIMDZ7bgZ+LX4w3zbVAEyvM9pGcpwABBBWH4AM+XXwK8PHax/Bhh+efYFsnwAEEAPIB7gw0Kn/2e25/wef8/ovlikFpkEYJI5PHzIGCCCCCii1BCCAiHIFJZYABBADsV4l1xKAACLaAnItAQggkiwgxxKAACLZAlItAQggsiwgxRKAACLbAmItAQggiizAZQmyBQABRLEF6JagBxFAADFSq9LHVUEBBBAjrVsVAAFE81YFQIABAEbvBHgmYBcyAAAAAElFTkSuQmCC"}
                                        ,{title:"ビン"        ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAB7ElEQVR42mL8//8/Az7AxMiIV8G///8Z8ckDBBALIYPnVUYR5QBcFgEEEAsuTf+gPos302Ig4ANkPRiWAAQQAyiI0DFQ1f/Dl179JxaA1IL0YDMLIIAYccUByEWHLr1iOHn8Cl4fmFvqMNjpieEMIoAAYsFnOAhcmpNNwIKDDCC1uIIIIICY8BkOcv0flUychuulTAXTNrqicEvQ1QAEEAsh74PAOQZMS4wcdMDyIMNhlmADAAGEEgfIrocBbHEAsxgGQIYfufwazEaPD4AAwpp6embuA4ZnCUZKgdHIbBAAqQXpwZaaAAIIqw+sdbsYyAHLGiwYYhtDUHwAEEBM2BRuiVpMksGnVkeDMTYAEEA4I/nOmqM4DVQNOYYmcoHBMsyQYXH9Ggy1AAHExEBjABBAZFsAjC8U+viq8+DwRwcAAUS2Bf+QEgcoeHABgACiyAcgjGwRtjgACCCKfAAzHBQ8d67eZZAPtsNQBxBAFEfy0oa1DEKMWQx8t7AXigABhFFcwzLb+3ZdBo0gJaIsubHuHoNg5WWsxTZAAOHMBysYqhki1rVCCrudH7CqMXIXgKvFVeYCBBDWCgfki+6Z+8DsL5WeeF3P074dTJemO2GtdAACCG+NBqJhFuECIIPxVfoAAcRI62YLQIABAPHyWbVurayGAAAAAElFTkSuQmCC"}
                                        ,{title:"CD"         ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABnElEQVR42mL8//8/Ay0BQAAxMdAYAAQQzS0ACCAWilzHyIgSvv/+/2dEVwMQQCyUGPzj/26Gaww8YDGDc6ZgcXRLAAKIhRyDgYYw/GLYg2I4CFy7fh3DEoAAYiHF8H9YUhzMcFwAIICYiDUcFBzYDL/BdRuMcQGAAGIi13BY8BACAAHEiC+jgQw/9/84mK3F8IWBjcEFJAZLMQwM5/6iqjdmwUhJAAHEhDfMz/6B82GGIxtwweg0XB5XMAEEEAPIB+gYaML//2f/gPH5/8f/gwBYDCYHBGBxqBoQhsmjY4AAIpiKDBgs4C6HpaQbN24wcDAIEHY9EAAEEBOhoEFPpqD0jwxAhmtpamLNxSAAEEA4fQDSqPFNleECwwkG5PTPds6RQYNIw0EAIICYsLke2cugtA6yBD1iiTEcBAACiKyyCGSJEaMlQcNBACCAcFoACh6YYaA8AAMgNgejK1GGgwBAALEQMhwtCHEWy7gAQABh5GRYPMAMh7mYVINhACCAsBYVxFQkxAKAAGKkdaUPEEA0r5MBAojmFgAEGAAb8fWld7TEmQAAAABJRU5ErkJggg=="}
                                        ,{title:"キャベツ"      ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAACM0lEQVR42mL8//8/Ay0BQAAxMdAYAAQQzS0ACCCaWwAQQERZwMTI+B+djy6GCwAEEBMxhodejoQbCsKr/s8m2gcAAcQASkXomJGB4T8Mh12O/K/Tbv1f2EH+/+r/s+F8kBw2vegYIIBYcFkMcqUWgxqDnWMcXGz1lX0M17Y8ArO1263hQffvP8g+7AAggHAGUWPHArDhM/bXgPkgGmS4lo8cXA3IEmSLsAGAAGLCFuYgTSAg6S4DdjXM9TCAbAkIwOIImwUAAYTTBzBDQK6GuR5uoI4TWB6GQUDIQR4lIcDUAgQQI3JRgex6ZAtAbLChwDgJ76iC85HjpL4iAW5OGGMqPF4AAogFOZ2DXPF85xNw0MBcupoBYgiIrtdRw4jwlRVtDNcYbsGDENmnIAAQQCzI4QgD6IpgLm68MoPhcsURhvArUXDDQWLI4GrlUZRUBRBALLBkBvIFyAcg14MMhLkaZHAIQwrYUBAA0St1ljHobrEBuxw5XkApDx0ABBA8kkGWvDvwEHu4Qw0F8cHyDIfgcQQSq9fJQEllyAAggBjR6wNYUYCuAWQBzAcwi8DBB3QAKJhAjkIPHhAACCAmXJkM2RCQ4WsY5kBSC9C1yIZrMdhBfIGUipABQADhLItA5Q2o3IGVPyAMAyD21f8H4Wx8ZRNAAOEspGCFHcwiEI1sKMximDpc5gAEEMHSELlkBRkKAshihPQDBBAjKZU+MaUnOgAIIEZatyoAAojmdTJAgAEA/XHM5fc4PvQAAAAASUVORK5CYII="}
                                        ,{title:"ガラスノクツ"    ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABaElEQVR42mL8//8/Ay0BQAAxMdAYAAQQzS0ACCCaWwAQQCwku4iRER5p//7/ZySkHiCAWEg1/B80UVw9dhvGx2sJQACxkGr4pPqZYH5eYzrD5aO3CFoCEEBM5Bh++NghDHkYRtcLEEAspBgOM3j17qXgIEKKC5zBBhBALMQYHuoaDeav3bMMbBjMcF1rNQZCwQYQQCzEGA4yGOZSXIaDfJfHkI5hDkAAseAyHOQSkGZChuMKNhgACCAGUFmEjoF++48Orhy9BcYwuRCXKDCG8WHyE+tmwMTAZgEEEFbDQQqxWYBsOIhNyHAQBggggi5HNhzZEHTDQXxsFgAEEN58AApTUDiDwhwEtK1UwSkFFP7IcYIPAAQQSiSDkha2zAICoEjHBWAOwAYAAghrJBMbbMhBghRsKPoBAohkC7DEA179AAHESEyViS3YiCmqQQAggBhpXScDBBDNazSAAKK5BQABRHMLAAIMADi8/NJ+qtgjAAAAAElFTkSuQmCC"}
                                        ,{title:"トイレットペーパー",rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABcElEQVR42mL8//8/Ay0BQAAxMdAYAAQQzS0ACCCaWwAQQDS3ACCAWEh2ESMj1lTx7/9/RmziAAHEQqrh/3CkOqgchiUAAcREjuFb5+0G8cEYxIb6AKvvAAKIAZQPiMFAp/2vy2z5jwvcOf4I5Pz/6PoAAojkOAC5WENLA0XsxrUbGGIwABBATMQGz+3jjzDE+UV4wRhmCTYAEEBkJVOYYR/ffGY4eeg0mI3LBwABxESM61/dfs+waNEiuBjMMJDrze1M8foAIICY8BkMSzmT+6aS7QOAAGLCZijMYBCuz2plMDMxQ9FEig8AAogJS44EY1BqAWGQ4afOnGJonl5Dlg8AAogJWzKEJUUQBhkO8wHMEmw+ULWUw1pcAAQQI3qFA0uSIFeCDI+Li0PRTGpZBBBALPiSIchw9LDFZRAuABBAOIsFUNbfMncX1uxPCgYIIEZsdTJyMJDsYjQAEECMtK70AQKI5jUaQADR3AKAAAMATWgxEitMyzAAAAAASUVORK5CYII="}
                                        ,{title:"ゲタ"        ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABcklEQVR42mL8//8/Ay0BQAAxMdAYAAQQzS0ACCCaWwAQQCwku4iRESXS/v3/z4hPPUAAsZBq8L119VjFcVkEEECM6KkI2YUgTbgMRgdKQY1YfQQQQCgWoHufGIMJWQQQQCzUjlSYg2COBQggJkJhTA6QMVWGmwMQQCzYDAaxYV5F9zq+oAMZ/OT0XYb8pGlwMYAAYgQG1H+QYpgkLgPxBQdMb/f0nSjy03efYAAIILAFvanOYIFATxsUiwhZ8uvxIqwGwwwHAYAAQrEABtAtwpVSMl0tcBoMS0kAAQS2AMRBtwSbRbiCAtlgmKUgPsgCgABigaVXWGQjW7R++xEGBiAGWQQCyJGHzcXYAEAAsaCXKbgsuvPgK1aDkXM7NksBAghvUYFsEcwC5KCABQO+cgkggBhx1WjYig0YQA9nfEEEEEA46wOQRkKaiQEAAUSwwsFlEaHIhQGAAGIktdInVP6jA4AAYqR1qwIggGheJwMEGADmT9G4fCYrpQAAAABJRU5ErkJggg=="}
                                        ,{title:"バスローブ"    ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAB0ElEQVR42mL8//8/Ay0BQACxEKuQiZERxSX//v9nJEYfQACxEGv4PySf3jh8ByZG0BKAAGIkFEQww0GGTpw6ASw2fcUUmBxBnwAEEBOxLocZTioACCAmfIanh2fDgwQG8rMLwPSqaesYrh26jRE36AAggPDGgaOdE5i+dPkSmB2WFUSyDwACiAEUB9gwMGD/r5y69n9GePZ/ZHD90G2wOIwNwiC1uMwBCCCchoMMRjYcZhgIoFuKzwKAAMIbRKDwBoU/KIjICh4gAAgggvkAZLierh5KRJMCAAIIrwWgpAmKXJAlMLD/0D54ytKwVSFoAUAAMeFKnrAUBDIQ5AMYhomDLCfGVwABRDCIYD6AuRzEB2Fkn8DyA7ZcDRBAODMayLXINKh4AEU6jA8CoCAiFEwAAcREyAfYDEC2hBAACCAmXOEPChZYsYBuIDZLcRUbAAGE1QegNA8KY5BB6KkFm+H4ggkggJhISdMwgzIjcuBFNiEAEEBMDBQAkEUgjA8ABBBWC/Clb5gcyGBQHIHiC2YJtngACCCshRyIhmFYAYdc4MFKUGQ1uEpWgABCqTJhtiNnGFwVCroakOtBQMtOFUUOIIAYqdVsQXYIsgUAAQYAbLN+rFRrCYoAAAAASUVORK5CYII="}
                                        ,{title:"ピアス"       ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHEAcPNUks0A8AAADUSURBVDjLY/z//z8DNQATA5XAqEGEAQsuCWNGRgjjLHHRyoTLlAOPKg48qqDIRRBT+iJWUcNrD2/eefxx2jI7uQmcED8S9CB2r90590FFlj8r6lBIv6+flRJRTvqPDRgxMJyb6DgvWLvBSunTowojHMqQASOuvAaPNQYGhgOPKhzkOghE4n8igBEDww1T0//zxf7PF8PlOmIT5KkX7Im5kgwMDMtMTZEdS07KrtBkS8yVPPWCnXyvQXz3f77YDVPTBiEHrL5jJL5gw59pGEdLyCFoEABEWO5UfXK+/wAAAABJRU5ErkJggg=="}
                                        ,{title:"ニク"         ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHEAcPKsQk3foAAAH+SURBVDjLxZQ9SCNBFMf/KynSyNpJlvXAkLPYTq1PC7lCEa62ECzksIueFjZKwOo6LWy08eNSHQEvhYKiRDs/EgthuGTjTlBJXLgDl1gIFmvxlpm9zSoRAveqN8Ob37z3fzNPcV0XrbA2tMhaBoo0GdevKMLPh6kRafJ8fm01sJl3XeG8BfKCfOdlRmurFJBc3iQn77qRdyEA1C3r8e8fALn52ZmjE71LDy+tX1H8iLpltcfjdcsCQOeF/b6+XupUF27vaKn431EjhZwAAsDdg0PO1M8d0kiCPMrwiAzf2z0/OCBX71ADlPKTk4iqeoc6ur7ZoNHwCDK/qvySVtpcSj8/y93fAMBDUCxWsxGT+20ynVseoACILaYSUZXuLz85gkI+q9liM7z92lwK3BRFle8dAEQkCqvZMq8QUJ+h9RkAwM1qJq1193pJfZuhjBJR1U955a9xEwVWzaTx6XOl6+OxdeOVyU2hdJaXApTdC0Zdk6ASY0gmteWNSqViW/bz0ITHKjBSKjSRf/4avXFanx6dAiheFc0f341Yp0jW3/7GdKRGWytbAAa+DBSvigCIMhj/QDKFmp8iH6T4gUQZn/zaYxgoMK/qKJzDXJaXBKJxmETEiPGzSLIe6iDQvp3e5qXXEOF/Tc6Kk31BHJuafmOkhYDeNRKbBf234f8Cjm0nG5EZKzUAAAAASUVORK5CYII="}
                                        ,{title:"ピストル"      ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHEAcPF5xMkesAAAIJSURBVDjLrZTBaxNBFId/E3LoSYtIQNhRuqEUlCoScolJdujBg2hApH9AkJ5EBEEMSFvaXtKL6MVLkT24vYitUMSDoOy2jShLWEKoMEpS6haEIAVzyi0eHp3E2N0k1TntPpaP3/vem2XtdhsAgARj9FA+rAx1ot0vJy4JIh6DFVFxnr3/lM/nCZdgTAUcOpGsSgDFx0VZlabZaXbAdKzH0Y078wD0cR2AaZoAmhV7EHcd0N84ANa6tWqtFu4XFDEI1wtSOBLvN3yRFDP3ZgCE46JBUY20Ya1bcw/nAKw8XSF9hPMbPk22W2IkCKSP697Li5sfNuvf6tmpbHYqK6tSVqXf8L3P05Ta/l7on2hicuLVk6+22xIQCr24vMhjHHvy7mzm1tXT4mxR9RjtO1fbteFCJAUAHuMA1t79bH85EEtb3aaOlq18k9pfZ+JU5DEePxev7dWaFbvHdyQki5E2yOXJH7VHqRGiaFwz0obafnUBwlpztp1O8vOnmmt2DdC4RuuKtOFsO2pd+ztKMGZv3RSZ1/S67+8z7wXFaFbqqsFAR4S4nLsNQOMaIbyN57mUrj7Y+FgfaGpq5bw/K+XS9MKD8qCbHX5R56+3Ft6MDAEKOu7u6LULAHT1F4zgP53hQCQITklVcimdPB4rkXEFwNud1j87ckrJMSTH4O6OKlzYHh3ZWtBwfwN0x+9wd32oEAAAAABJRU5ErkJggg=="}
                                        ,{title:"カブト"       ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHEAcOM7lURHsAAAIpSURBVDjLrZU/aBNxFMffhSC41PEIpPZyQQ4CJfQyNDiU0iwW2gzWoVjBIdt1qIiriHWKQ0hB3UJISR0CLbQOcWkN55IiQSSoHKm/32mK5RxdOsnP4cHzl99FiaRv+v1573Pvfe+9O00IARdhEbggGwLKaFpG00YJlj0j4bvl9UcjUjqSLGOV5vv+uCBMJ2DBv0Cn/dMRcU4uS9VFledMpOdpLV/JcmA6cl0qCK31rgWx5Mn3E9/3DcNALZAr4+S6AACEZDZAMpYUQnDOa+Va+7BNV5xzzrkNYAPg1h6MVTXCRADAmrbCye5yjgkGLMhfN7GPMFlNDBaPru6+SyDd1MnhzYOllFPxut6vt09TTmV2YZYki/ytwYZq8e3snCi6qaN2GBVVGixgQXOvSSesxxZvLiLr9cPb94tpmPpcapzDi8IngGe7H+nZf0oj9vbWNmqkm3rAAq/rIS51qQhTVmm1cePJS6x3JZEgUEShHB8dh6Wp79VxUVptXI1ddnJZADAMoyMEtZvaR17Xo1fm7rubxU08X7uztlPfETPNrwDL67dWEglsK2R1hIhS41JSrMco/srZF2V64pNxANgo16rVqtz9AxpNpOf7P/pyvDIZG+Ua6zHcmtfMrXt31VnLaNpMvgAAPz+0lHjZrGnLPXIxKSKq0x+fjL8/qGDZQykdIZxcdm5hDrevnj8e8KQpU2ZnqNkA7cN2IV8IO2v/+xcJfwZUsce031LkfaNLbWeQAAAAAElFTkSuQmCC"}
                                        ,{title:"ビワ"        ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHEAcOGBXovTsAAAHJSURBVDjLrVXPK0RRFD73NdlrCqmpl4Vkyo/3ynLwLIUyKQuLkawoP7JT/gAaGclmxHtZ2KBGZsUbeVKXehI1S1cNk5FZWJroWFw9400zrpezOveee7++c75z7iWICP9hkuebKiEqIc7S5xllMhxsC9WohNiIHhmphByfzAHAtfW8EevmvHzeUB7u3wEgdfnkMTUHZXFhO53JNwf83zEUNgWAMUZNOhLwKwB8ZyTg3wwHFfEaqYTsMZa7y61FetOZvF3aNOJcjBXD4VIc4puSSLPsMWYlrKPorNZR5zpgI6Yz+UqMFAAFgJrU4cJrUe68VI6Fjbhu0ngsbiWs4aEXl9ilRlyz5nTqReoiHouHtFBf6+2BcQUAq3rKLj+YUmWUj7PF6q4lIV2Li8IdatKx/jFjxdgMBxljekTTI5rym76+Ui61DbXjU+ON0u7rwKEsy6dijfZjRDhK7i7X3nSeLUzIsmyM9oiOD0/q7TGKiG+PUWpS7iOiHtFutqZF8vohfyG7nC0MtjedV9XPAsCtPqN0tnh8Ieur9jmik9HV6U1l1d1AO/NJx9mZT3Iu4ihfxbYRi19fB4KHBFP77mwXlv3H34X813f0CXbpxNmiuNjqAAAAAElFTkSuQmCC"}
                                        ,{title:"トランペット"    ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHEAcOBXbu0eIAAAFRSURBVDjLY/z//z8DNQATA5UACy4JY0ZGCOMscU5mwWXE2a/b4FxizGLBNOXs122f3x5qdM1hYGCo3z2FHK9BTJkfV8rAwCAnyfno+ffPbw+RHNgQU87P6TawE4OI1O+ecmf9SXJiDW4/xCzinYMwyJiR8cCjCrj9Fw69Cun3XVO4mczov3DoFQMDQ0i/r0ogA8QUiAgxgBGSso0ZGQ8cDoQI3Tn3AS69aeVDv3D5lPz9BFMACzzVwVMgMoCbToLXsNoJMd3PSolwQv9PBDBiYPj/dVuDldL/r9uMcGgh1iCIKZ8eVeAyiIXIIPALlz8/pxufCmKcc26iY4OVkhEDA8SPUAapXoNrRuZi+pEor31+ewgecX5WSvPjSuH5ET1B4gfGjIxzJjpCEvqUtVehoWaltOnYPUSC+E8cgIQLsnfQvMxIduEPLUhh2hkHXS0CAMk6o9KyIm6cAAAAAElFTkSuQmCC"}
                                        ,{title:"パン"        ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAByElEQVR42mL8//8/Ay0BQAAxMdAYAAQQzS0ACCCaWwAQQDS3ACCAWMjVaMzIiDV1nP3/nxGZDxBALOQafLY/imH2vU8Mqan2DJcnLWXQ1daCyyNbAhBAjMQkU2TXNoWoM3hbGyMknQ3BFIolhcvgPgEIICZCBoPwwl4nhrOXusH4maQqw9ajZ+FqZs8+CKYfffiOCCag72COAgggFnyGgxSiA0uFbwwPnyP4qUp8cPblq9fgvoABgABiwuXqjFwfFPEru7fj9ure8wxyApwYhoMAQAAxoRsOCw6QS0FBAXIVCOgwSaBohIkjq4GbgxQHAAHEgmx4rqcCw/EHXAw6aK6AeR3ki4fHn4JdCwrzR0DDQWxkdchxAQIAAYQRBxbfn8CD4/XXn3ADYJpBYrgASL5uzU2UvAAQQCzIrocBkC9AQQTTBLLk7NMPYL4oNzuGoSBLJ29/gDWjAQQQhg9ABllIgyyRYWCF+gKE0Q2G+RCXwTAAEEBYkynIElaGDziDghiDYQAggOA5GT2YcAFiDYYBgABCKSpguQ/dIpihpBgMAwABhLUsQi8pSTUUGQAEECOt62SAAKJ5hQMQQDS3ACCAaG4BQIABAKvj24J2xXroAAAAAElFTkSuQmCC"}
                                        ,{title:"メガネ"       ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABG0lEQVR42mL8//8/Ay0BQAAxMdAYAAQQzS0ACCCaWwAQQDS3ACCAaG4BQADR3AKAAKK5BQABxILMMWZkBGeKs///M8LYMD6yPLIYIQAQQAygjAbCRgwM/xdde/j/5I///0FsEIaJo8uDAEwcGcP0IesHCCAGbJrRDcAmD3MIusHIekA0QADBg0hdSY7BjB3CPvUT06fo8jfvPcIIVmT1MD5AACHbBncZyLVYvIsijyuY0DFAAKGkIpjLTt55DXcFsstg8rGacgw5m88SFccAAYQRydmbzuCMQJjLcanBhgECiBG5uMYVnujypCRTgABipHV9ABBANM/JAAFEcwsAAojmFgAEEM0tAAggmlsAEEA0twAggGhuAUCAAQAFnj5UodewUAAAAABJRU5ErkJggg=="}
                                        ,{title:"ケイタイ"       ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAMAAADXqc3KAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAhUExURdj0/19re5GuurLT4YN/h6umr0xJTujl7QEAAP///////0D9q20AAAALdFJOU/////////////8ASk8B8gAAAPVJREFUeNpi4MIBAAKIAZcEQAChS3BwcEAYAAGEJsHByckKkQEIIHQJdnaoDEAAMaBpYGSEygAEEJoEOzMTIycbSAIggBjQNDAwM7GDJQACCFWCnYmBASLOBRBADCjijAwMzFAJgABiQPYCKxMzTAMXQAAhS3CysDMxs0IlAAKIAVkcKAMT5wIIIAaEODtQho0FJgEQQAwIcVZOFhaYDVxcAAHEABcHGsTKzgaXAAggBiRxToQNXFwAAcSAQ5wLIIAgEqwgGRRxLoAAghoFlEEV5wIIIJjlrJyo4lwAAQR3LguqOBdAACE8iCrOBRBAOFMJQIABAKKFFB274I8EAAAAAElFTkSuQmCC"}
                                        ,{title:"ヒジョウグチ"   ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABJ0lEQVR42mL8//8/Ay0BQACxYBM0ZmQk29az//8zIvMBAogFj0KSDQc6DEMMIICYSNGMzQBCACCAmEh1GamWAAQQEwONAUAAMREZcWTHDUAAsZCQOjCCiBjLAAKIhdzUARMnZAlAADGRYzjIUGw+wgYAAoiJ2GSJ7FKYODGWAAQQSZGMLTiQfYMNAAQQSTkZPT8QE8kAAcRCSTFATKYDCCCSczKhIEEHAAHEiF5c4ytJz2KqxYh89NIUIICwBtG0vSdQ+FnOFjjzAKFgAgggnHGAzVD0IEMPOmyWAQQQzjgA+QLZJzADkIMFG40exAABRLQPkA1GdylycKHHAUAA0by4BgggFnxBhOwb5DDGFd6wIEL2BUAAkZRMyan4AQKIkdbNFoAAAwAgUYyfCzcelgAAAABJRU5ErkJggg=="}
                                        ,{title:"ドライバ"     ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAMAAADXqc3KAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAbUExURcvLy5GNlP///2JcZ78AAIIAAP9BQQEAAP///3eBx8AAAAAJdFJOU///////////AFNPeBIAAADdSURBVHjaYuDABtjZOQACiAGrOBMTO0AAMWAVZ2BkBwggrBJAcQ6AAMIiwc4MtIIDIIAwJdiByoEAIIAYMM0Bi3MABBADDnEOgABiwCHOARBADDjEOQACiAGHOAdAADHgEOcACCAGRPBA3QkFAAEEk2BnY2NGFucACCCoBDsLGxsLigRAADFAjGFlZWFBlQAIIAawchYWoAyKOAdAADGAxdnYWFlRxTkAAogBIs6GLs4BEEAMUHEMCYAAYmDHLs4BEEAM7KxYxTkAAghoBys2cQ6AAGIABwaWiAcIMAC5mBC/0+mXMwAAAABJRU5ErkJggg=="}
                                        ,{title:"バクダン"     ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAMAAADXqc3KAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAqUExURXUhB71bGVENAf/TaLWnuol5j/usPJGNlMvLy2JcZzQxOAEAAP///////zyNJkYAAAAOdFJOU/////////////////8ARcDcyAAAAQxJREFUeNpi4MUBAAKIAV2AmxtCAwQQA5ooNw9UAiCAUCS4eXhYWKEyAAGELMHNworQARBAKBIgQZgdAAHEgGw+C0wUCAACiAEuzMPMxMPABpcCCCC4BCMzMzMjIyMDTAIggOASTIwMjAwMDEwwCYAAYoDZy84EkmDi4oTKAAQQA1Scg4OdCwKgMgABBJPg4YHLQCQAAogBJo6QgWgBCCAUCU4kCYAAgkpw8IBs4eTkhJsFEEAQCQ4wQJEACCCIBDtUnB0kAzEKIIAgEpzsEPUgAJUACCCoczlhgJ0d6g+AAIJJcIHNB0pwsEMkAAIIFiScMH9DxXkBAggR7BAd8GAHCCCUiOJGiiiAAAMAG1cZMfmJNqsAAAAASUVORK5CYII="}
                                        ,{title:"ダンゴ"      ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABT0lEQVR42mL8//8/Ay0BQAAxMdAYAAQQTSyoc2KEBwtAADGAgogSzMjA8B+GQfxaRwgNwwABxEKR9xkZ///buhXMPn93B4T/H2QXAgAEEAs1DAcBQ2UPhrOTGDAsAQggmkcyQAAxkeNyEIYFCwwgs5EBQACxkBws0Hzz4NwuBiVjd3CwwIBx3mQG9DgACCCSUgs6uH9253/0VISOAQKIhRrhjOFqJAAQQEykhDkoWGAAmY0PAAQQCyHDl5xYDmbPn7MKHOb3zu6Ey4P4+FwPAgABxIirsEM2HAZOn7zGMDG/maiggQGAACIpDq5cvkK0wTAAEEB44wDkYmS2jq4OyQkAIIBY8KUMUKl4mqEW7HKQ4aDgIcX1IAAQQDjTPaxUJJTOCWGAAMJrODUwQADR1HAQBgggmhoOwgABRFPDQRgggBhp3aoACCCaVzgAAQYAK1RIX5bxnKEAAAAASUVORK5CYII="}
                                        ,{title:"チョウチン"      ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAABYklEQVR42mL8//8/A7mAiZERp+Z///8zgmiAAGKhxKD5gZ5Y1Seu3w5nAwQQCzGG/9vezrBw1iEGPUMlFDnjuql4XQ8CAAHESCiIiAkGfAAggBiJiQOwL4CGwWhS4gkggJiINRzmYnw+wgYAAginD4gxiBjfAAQQ3khuLZiIwj94fB+cvevkRqJ8ABBAeH0AdCHD57fXwPxzJ07C5W5eusSQUTWBKB8ABBATPsORgZGFOQp/RlsBUcEIEEAshAznFdaC+wKXJfh8AhBATAw0BgABhBIHyK6HuRoZoMcDDOCLD4AAwpmKQEEDA7iCCN0ibAAggGgeRAABhNUH2IIHOYgIuRoZAAQQC7HBgy2IiLEIIIBoHkQAAYSRk/GlJGxBRChHAwQQXh8gBxWuVEQIAAQQE7YSEugLojQTUx4BBBALrmIYvchADx5iCzuAAMJbXLcXTsJaVJMCAAKI5hUOQIABACZjwMUSLVJeAAAAAElFTkSuQmCC"}
                                        ,{title:"ハネペン"      ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFQAoNNZ/tEsAAAGESURBVDjLrZUxS8NgEIbfr2RwcFS6CRUlU5cUrFMGi6M49AeIq0Uo6G9wEJQKxc75AR1sxxqETBGaSRAqki8WFYLO4iCcw5WPmCYhrb3puOQeLvfeXQQRYRGmzZFTEYIdL1KENgelKyWA0A+ZyDgx06cxxblxosGr5oFHVJiDopd1vazHnhbyUzyi0A/NfRNAcb3IDpcDAJTDDICIrJYlpSQiKaVruwZgRNKRk8II13ajwaghD0XlK38alKUa9yUIAha7ulNNnKCJ5axFSmlkNhRpFCml6i73dWYQU5QuRj5lkUhJy89Aa7HuXttuvVTykhSoCHF7dwrgNfhhHZK3nylHte00SvPxpXd+CCB4Cpbb/ThL1Wy1LCNTxJX6SaM3bPSGZru/tLUXe3kyR9GDkFhO55tG/vis0wXw+f7G8bXuhUrR1OBlL+3IHwOo7ZoA7IGjWH+238txku6fPwBUN1b/e2rtgfMw3mR/upwZLmRFiK/jy7QGzXZq1cYm7q1Y1O/oFxqOeexcUGmzAAAAAElFTkSuQmCC"}
                                        ,{title:"バイオリン"     ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFQAoIiKrARoAAAIPSURBVDjLrZW/a9tAFMe/FzRlMw4EUdygMaGBcLeIkCF0bdWSoZMiOgRUtUMH0/4FzWAwhXZQcNxFWVLo1MGFLCkdEvDgMwaXaDOEUEyG0MXg8To8c7ko8o+CH0ISeu999L27d++YUgrzsAXMySwAgjEAcjZpFExmplj0qEd8FtwoJvZlNz3u9AVjOt6iZMGYjH2I56Yv12TsA/j041KjR/HKMA6o5jd+96PpTTynFfHdUpEDdGkv7kfnsjiwWypuFhbLrk3eTAxy/0ws8yJK4jnj9I4dBbFaEU88ZyplLGjEiv1ZtExTZLASz0k8h95nBenQ+6z/AOk0DqhGtRVx+tiKOI1xAojpTSsYk42qbHwV66tY2bgtwSfvBGP1iIe19oRaXTApuOwcd/p48eHo8EBHBA+XpFJhrf3Wc8yNljVzUGXXLrv23rO95mkz8ZzNwqKKfdWo6vmasHaWlnN0ePAxeAwgqHz/8hnp2fX5/o7spgJYKxVpTwnGtl07dz9a+u3RgwKAoHLSGwxD9TMFZDcV66tB5cTsG4Ix4mZaxW1jo5zeYBhuLdfPrsOt5d9//pLr4upG50ilLq5u6hHPmWyplHj6HisbRAFA95ev3phyTAtrba2LbLT8JLg3GJ7v7+i1D15XMnIyTW7btX81++S9U0cA1kpFM3ocRafo+mKZUyRTKVMbuZ51Nq/j6B/BuIQ/ic4u9QAAAABJRU5ErkJggg=="}
                                        ,{title:"オニギリ"      ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFQAUHJA5ZU4AAAE1SURBVDjL7ZSxasMwEIZPJnspFDwZRBbTIUtCoXOfolNL1y7No7iL9z5AZ0/JHCjO4iFokQ46HTWYPIE6XBHGtmQPHjL0prMs/3z33/mEtRbmiAhmissTWoRfb4RweRl20/pjDWCMaT8GLkcBlnx3IE1tojbgJI9YhXNERMQZzCZNUspRqCiM46A6yVQiVanOCUtIKX1QUR/nLftIV2m+z/J91q6OtXxQCx/R1+kAAC+nx7vb+9eHLSI6rU9jNkJ0xirq4wDA7qcAgBobAGBF0hTu3bBHRVHU2NzIa9ZiRjdTpImhvKWxkQzliGpsVKXSVRovY9aKl/G4R6yVAHyvr3x9JE39tg6UVlpbWpscz8nxPDgWqlLv2+eO2d6/n+/9GfEE7nvfJhBTVq3zNbBJxP/OHo1foEfySA+emKEAAAAASUVORK5CYII="}
                                        ,{title:"バーガー"     ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFQATEjjA3o4AAAHOSURBVDjLzZW/S0JRFMe/JwR59F/kD3QJek8DlxysoSUKpCkK/AessDEHGxoawsmtIbeIHB3MIRrCUmmJpKei/0IQ8qbbcOx23y9bHDo8Lodz3v3wvee8ex4JITAPW8CcbG6ggF/CIPKMd3xKEfBD3GS1UCY2aPZk/Gk4kVk3jhzFNog6rQIAdJsyKHHMAnDZdbIWfCl6RsZDmRg7qSWNnSPdeXavYjNFUaSaZPl2bSpHUhRFg2ZPipKnc4jyUWSvkVr1vxUBwOqFKkSW2a0otaQ5iLauGUQdIfB8MqNwUtru7cTWOPFjOnC3t5VPxGVEtAq2tbLCTz+r5RPxfCKuK9t/FRlEnbf64cFxOhZ56JmzLwS/89h+l6KmIIPoswJzrc7R2nlF7nnombxNXTlVXh7qVxazSAhhEG2Popw7/SqjfY/EOtr3AGoNc2cjUmuYbo3l5SE7zLJ1rVgany3mVYpc07GIgxJOWuGk5ewaH21/Mwrguv7BTrE0BsBvy0g4afVfggCqr5bt0qldY6c0ipZGUeSColUQrQI7HKnqCFeAXLCf1ao6vLvGunh6eHaKvyC/AeAxRvgeua+CinCPJPIc/n7jccaQpH/3F/kGomlAbXjKmGsAAAAASUVORK5CYII="}
                                        ,{title:"サカナ"        ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFQEGAP0OI+UAAAIISURBVDjLrVW/a9tAFH7SeQ8YaZGngCAZAoZgpCW6RWjqYid/QYYYiuhg2qkpNEsyhXYyBWfqVDIkNYVMRhSSyUIUDB2SYCg0RIvFQZZs5jq89vVQYkkteYP0vdPdd++3NCklPIXU8OUxpq5ezOf/SQQAl50e4RxvlQtqtMNj7LLTM6yGH/DIamTpLQDc31xvv3nr2uZgbbnYTE1KSfd3v/9o1etda2mQ3vFwjzYZVgMAjP6rAi4dX4P0DkEiBGI8jJKlt37Am8N4kct/iTb3j4gLVT/gKtfxx0/R6LzANZ1QP74aT2ekTtpOjuvn+Ou31rNFRmlYRx5jWXh4urtD5oTOStdayiX0/uYaANaTs4fBqqmB4OGeYTVOd3cSIWi9OYyz0TkmcT05o/rIcdXU1KAh5ClGLRECgEd/uBYlTldDgOcTIVr1umubiRD9+AqxH3D0cVGMdFWZtB3XNsfTGXIBgGubyJUriBIiABisLYfOCnFhHjf3j8ioSi2iAhjGB6OT18+3AACAqyVe0rQURQQeY1mnd/DhBAD8gI+nM9c2o1GF7n/Y6NjGGDsAiMJDP+DH6SPxvpjPtYLB5jHWHMaTtkM2YllRKQDA6uf3v12RhbKh6xu6Thif4Zdk9cU79ZOUsoSIzquqsfUytyil1EtnaMWxq/3r8KcqKSnIKvKojdpT/Y5+AcBFZ9BxmdSWAAAAAElFTkSuQmCC"}
                                        ,{title:"スリッパ"      ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFQEGE3mwYjsAAAGkSURBVDjLzZUxa8JAFMdfeunmJzhaHCpZLAhBcAp0dRECDtJVyeacoShB6eDsJrqKUEFwcS1Ih4AIgl2kDqLcJ8gmhx2OPs4zMbY49IYHd8n9+P/fe3enHQ4HuMa4gSsNXZlbhMjTKed/AVmEvPGPFewNuO2zTZZS5MYSNcyRTFnBHgBmjGUpnTE294NN0TmPO1IUSgEAM5cwt/25H1iERLGOkj1jTKFkKcWvZi6RHHaUJIZbSw47Zi5x+tPcDwDAsQ0A6IxWm6JzqusmdI8SHdtwbKNSaldKbYE7pwhFCRdzPxBRIOQ93UH1hTwpolRFu+VaqIiiXNTZU86510KWQqHpFNYkvrOnnFuE7Dz37vFBXqfpFPv8QtZFZ03WpVAEfdxbvPJ3pQ+0qNNvEUI8t1HLC3eCsluuRQSAQjkzun/GlOtRUoXHOkB3UBUspCiu468R4bHenHQHVQBQKOPewt720aB+vqioq1HL15sTWYuiS49tEGQVyhkhJNSafkmzCdYYXPjBobv4qoXWEQCI5+IK91pYNe23l7/cPvJx0/7dK/INiFr8TabIhqsAAAAASUVORK5CYII="}
                                        ,{title:"シュリケン"      ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFQEHCOrOmpYAAAFvSURBVDjL3ZS/agJBEMY/vXsM0yjhKt8gXqGt5A0CiliIQpqUyi2klwhCSlH7gBCwisX6CKlE7k6Ir3FsignDununFzBNptobZn77zZ/bglIK17AirmR/AKo5Ts1x8mca8SeKlmGYB0cxjd5Id7p82iZJzXG2SSIGgljbJLERAAjx8fqsB7ipd3bHM7mROk5HADh+HY2UE5Auyq/7tgoA5duy3Ej7bvdML/y6LzfSa7bZw5Td+8wo3Bw/iRJT8VPjY5drydJyWRGA3eduOBkCkCvJFFtOOohELcNQriSAh0qFnGfk5N1sQpO0X4BocCTHq3pes22sqO25oMireuu3demm1OiNuuOZXEnuvW0F4xkhOYvJAkC0jwC0nlrUbI5J3YDMqUX7SEzF4XDgZgMQA8H7ZSYoze6KRaXU/GXOn+QxzkE/CPpB577DHqVUCshIMwJ0XDqIvFkIGxfHcRzHHOzanc6zVvwzZ07tHz3+3/0vQHzuoQ0XAAAAAElFTkSuQmCC"}
                                        ,{title:"サンタ"        ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFQEHIN97MmwAAAIPSURBVDjLzZUxiBNBFIb/OZYksIJco+m8W0+n2rtizebaO5srbQQbCVcciI2HNlYBg8WVpjBt8IQ01ymCTRbLzMIWSQpZDTFlKlOYwGVZGYsXxnHcy1mk8FUzw+zH+//35i2TUmIVsYYVxcpA1qU3PMZoES01wboU0SqVwnF+OLNoexHOWkIJH7mDqBCO8wAcO91OdjZy6x5jmSyWWTWitD5cBeAX55SRY6fB5AeA3rQbSWkkmAFSudCWKABGyUTd6U27jXanvF9WCa5lUgBseefq0LFTABu5dUIA2L6yE/djEYhGu0OpZZd/EBVURn5xrlgkqjft3qjcG34dxv04u48y0yGz9YikfP/6hXPL4S5/fHeXpP32yGMsal57W71NKRgUsgnAu++f6EvD7D/K/1Ncf1j7QotBVNjyzhEtcI6dDmfWKJm0SiUy2GgCs48IEY7zfnFO5Vfx4OYMyJ18TjJtXUjzGGu0O3fOjshp/QapU9KoD8h1E6Q3a+z7AHgYikAA+Hj/OdVLd4oaymCZ0ngY6tvN6qEEvtWajp3KZ0eoNUfJZO/lUwB7VB/DbBGI8n5ZR9CWOuXg7ITWm9XDA5erc9PsSFNHiggkAsFdrqD0PZ1f+PrVIwTw5NUb7nKyP+7HxFoId/lp/RRA/bhijBRL71d9DOloika7Q4v6ceXvScL+ffgvH5Xsv/uL/AImsi5s2+eHRQAAAABJRU5ErkJggg=="}
                                        ,{title:"フライパン"     ,rimit:600,bmp:"iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oHFQEbDuXaYv4AAAFlSURBVDjLY/z//z8DNQATA5UA1QxigbNsmZnh7MN//5JvEFz/gwcPIIaSZBwL3Dk9u48xMDCk+KcwMDCk9s2387ezZWYm3iwWrKKH9h06tO/Q4rt3iTcLJbBP7jtZM7Hm5pb5DAwMMrIyLfktPbuPIYcdYYMO//1b4mrFwMBwaOOhxXfvws2aPXE2kWahuOjm5ZsQs3p2H9s7vRluVmrffIJmMSKnbFtm5tS++RC2uq56iauVuk8ihGvnZDe7KBFPeDGhRf/sIqjO7eu29+w+BvEjAwPDvdv3SHAR3F3OmbUQtmeQJ9xd+B3FiDXTIpulpKoESRAysjJ7pzeTZhCyWU8eP4E4B+JBXGYx4ilGIDEFD2/8oc6CJ/wgqjEjHpIa0M36TyKwYWKyYWJaOGGhDRMTsjjJBsGNq8+uRzaLhbxi7PDfv5DYQBQ4/ykANkxMyX7JEHcxUlL4w+Ph8N+/jIOuFgEALbpm2dbbpxsAAAAASUVORK5CYII="}
                                        ];
     
      private var questions  :Array  = new Array();
      private var plates     :Array  = new Array();
      private var stageWidth :int    = stage.stageWidth;
      private var stageHeight:int    = stage.stageHeight;
      private var selectStage:StageBase; 
      private var pzlStage   :StageBase;
      private var compCnt:int = 0;
      
      public function Pcrs() {
        init();
        stage.addEventListener(Event.RESIZE,setPlate);
      }
                
      private function init():void{
        var wideSize:int = stageWidth*0.75;
        for(var i:int=0;i<questionArray.length;i++){
          var question:Question = new Question(questionArray[i],wideSize,false);
          question.addEventListener(CompEvent.COMPLETE,onComplete);
          questions.push(question);
        }
      }
      
      private function onComplete(e:Event):void{
        compCnt++;
        //すべての画像の読み込みが終わってから描画
        if(compCnt == questionArray.length){
          setPlate();
        }
      }
      
      private function setPlate():void{
        const INTERVAL   :int    = 10;
        var   pX         :int    = INTERVAL;
        var   pY         :int    = INTERVAL;
        var   spr        :Sprite = new Sprite();
        var   upZoneSpr  :Sprite = new StageBase(0,0,stageWidth,stageHeight/6,0x630000);
        var   downZoneSpr:Sprite = new StageBase(0,stageHeight/6*5,stageWidth,stageHeight/6,0x636399);
        var   spd        :int    = 0;
        var   sprHeight  :int    = 0;
                
        selectStage = new StageBase(0,0,stageWidth,stageHeight,0x636363);
        upZoneSpr.alpha = 0;   
        downZoneSpr.alpha = 0;   

    
        spr.addChild(upZoneSpr);
        spr.addChild(downZoneSpr);
        
        for(var i:int=0;i<questions.length;i++){
          var plate:Plate = new Plate(i,questions[i]);
          if(pX + plate.width > stageWidth){
             pX = INTERVAL;
             pY += plate.height + INTERVAL;
          }
          plate.x =  pX;
          plate.y =  pY;
          pX      += plate.width + INTERVAL;
          plate.addEventListener(MouseEvent.CLICK,plateOnClick);
          spr.addChild(plate);  
        }
        
        selectStage.addChild(spr);
        sprHeight = spr.height; 
        
        if(sprHeight > stageHeight){
           
        upZoneSpr.addEventListener(MouseEvent.MOUSE_MOVE,function(e:MouseEvent):void{
                                                         spd = e.target.height - e.localY;
                                                         upZoneSpr.addEventListener(Event.ENTER_FRAME,sprDownMove);
                                                         });

        upZoneSpr.addEventListener(MouseEvent.ROLL_OUT,function():void{
                                                       upZoneSpr.removeEventListener(Event.ENTER_FRAME,sprDownMove); 
                                                       });
                                                       
        downZoneSpr.addEventListener(MouseEvent.MOUSE_MOVE,function(e:MouseEvent):void{
                                                           spd = e.localY * -1;
                                                           downZoneSpr.addEventListener(Event.ENTER_FRAME,sprUpMove);
                                                          });
        
        downZoneSpr.addEventListener(MouseEvent.ROLL_OUT,function():void{
                                                       downZoneSpr.removeEventListener(Event.ENTER_FRAME,sprUpMove); 
                                                       });    
        
        }
        
        stage.addChild(selectStage);
        
        function sprDownMove(e:Event):void{
          var y:int;
          y = spr.y + spd;
          if(y >= 0){
            spr.y = 0;
          }else{
            spr.y = y;
            upZoneSpr.y -= spd;
            downZoneSpr.y -= spd;
          } 
        }
        
        function sprUpMove(e:Event):void{
          var y:int;
          y =  spr.y + spd;
          //20は微調整
          if((y * (-1)) + stageHeight >= sprHeight + 20){
            spr.y = stageHeight - sprHeight - 20;
          }else{
            spr.y += spd;
            upZoneSpr.y -= spd;
            downZoneSpr.y -= spd;
          }
        } 
        

        function onMouseMoveDownZone(e:MouseEvent):void{
          var spd:int = e.localY;
          trace(spd);
        }

      }

      private function plateOnClick(e:Event):void{
        
        pzlStage= new StageBase(0,0,stageWidth,stageHeight,0x636363);
        questions[e.target.getIdx()].addEventListener(ClearEvent.CLEAR,onClear);
        questions[e.target.getIdx()].addEventListener(ClearEvent.FAILED,onFailed);
        questions[e.target.getIdx()].draw(pzlStage);
        stage.addChild(pzlStage);
        stage.removeChild(selectStage); 
        
        
        function onClear(e:Event):void{
          var spr:Sprite = messageBar("\n " + e.target.getTitle() + " ステージクリア!!\n ");
          backSelectStage(spr);
        }
        
        function onFailed(e:Event):void{
          var spr:Sprite = messageBar("\n クリアシッパイ...\n ");
          backSelectStage(spr);
        }
        
      }
      
      private function backSelectStage(spr:Sprite):void{
        var list:SerialList = new SerialList();
        list.addCommand(new Func(function():void{pzlStage.addChild(spr)}));
        list.addCommand(new Wait(3));
        list.addCommand(new Func(function():void{stage.removeChild(pzlStage); })); 
        list.addCommand(new Func(setPlate)); 
        list.execute();
      }
      
      private function messageBar(msg:String):Sprite{
      
        var txt:TextField = new TextField();    
        var format:TextFormat = new TextFormat();       

        format.align          = TextFormatAlign.JUSTIFY;
        format.font           = "MS ゴシック";
        format.color          = 0xFFFFFF;
        format.size           = 10;
        
        txt.selectable        = false;
        txt.autoSize          = TextFieldAutoSize.LEFT;
        txt.defaultTextFormat = format;
        txt.appendText(msg);
        
        var spr:Sprite = new Sprite();
        spr.graphics.lineStyle (2, 0x222222, 1); 
        spr.graphics.beginFill(0x666666,1);
        spr.graphics.drawRoundRect(0, 0, txt.width, txt.height , 5 , 5);
        spr.graphics.endFill();
        
        spr.x = stageWidth / 2 - spr.width /2;
        spr.y = stageHeight / 2 - spr.height /2;
        
        spr.addChild(txt);
        return spr;
      }
      
    }
}
  import flash.text.TextField;
  import flash.text.TextFormat;
  import flash.text.TextFieldAutoSize;
  import flash.geom.Matrix;
  import flash.geom.Rectangle;
  import flash.geom.Point;
  import flash.geom.ColorTransform;
  import flash.display.BlendMode;
  import flash.display.Sprite;
  import flash.display.Loader;
  import flash.display.Bitmap;
  import flash.display.BitmapData;
  import flash.display.DisplayObjectContainer;
  import flash.events.MouseEvent;
  import flash.events.Event;
  import flash.text.TextFormatAlign;
  import flash.utils.ByteArray;
  import flash.utils.Timer;
  import mx.utils.Base64Decoder;

  class StageBase extends Sprite{
    public function StageBase(_x:int,_y:int,_width:int,_height:int,_fillColor:Number){
      x = _x;
      y = _y;
      graphics.beginFill(_fillColor,1);
      graphics.drawRect(0, 0, _width, _height );
      graphics.endFill();
    }
  }

  class Plate extends Sprite{
      
    private var idx:int;
    public function getIdx():int{
      return idx;
    }
         
    public function Plate(_idx:int,_quest:Object):void{
      var w :int = 50;    
      var h :int = 50;     
      var r :int = 20;     
      var bmd:BitmapData = _quest.getAnsBmpData().clone();
      
      idx        = _idx;
      alpha      = 0.01;
          
      if(_quest.getCleared() == false){
        changeMonoclome(bmd);
      }
      
      var bmp:Bitmap = new Bitmap(bmd);
      bmp.scaleX    = (w / bmp.width) - 0.6;
      bmp.scaleY    = (h / bmp.height) -0.6;
      bmp.x         = 5;
      bmp.y         = 5;
      bmp.alpha     = _quest.getCleared() ? 1.0 : 0.1;
      bmp.blendMode = BlendMode.DARKEN;
          
      graphics.lineStyle (1, 0x000000, 1); 
      graphics.beginFill(0xFFFFFE,1);
      graphics.drawRoundRect(0, 0, w, h , r , r);
      graphics.endFill();
          
      addChild(bmp);
          
      buttonMode = true;
      addEventListener(Event.ENTER_FRAME,onEnterFrame);
      addEventListener(MouseEvent.ROLL_OVER,function():void{alpha = 0.5})
      addEventListener(MouseEvent.ROLL_OUT,function():void{alpha = 1})
    }
         
    private function onEnterFrame(e:Event):void{
      if(alpha >= 1){
        removeEventListener(Event.ENTER_FRAME,onEnterFrame);
        return;
      } 
      alpha += 0.05;
    }
    
    private function changeMonoclome(bmd:BitmapData):void{
      for(var h:int=0;h<bmd.height;h++){
        for(var w:int=0;w<bmd.width;w++){
          var col:uint = bmd.getPixel(w,h);
                      
          switch(true){
            case col <= 0xFFFFFF && col >= 0xDDDDDD:
              bmd.setPixel(w,h,0xFFFFFF);
              break;
            case col < 0xDDDDD && col >= 0xAAAAAA:
              bmd.setPixel(w,h,0xAAAAAA);
              break;
            case col < 0xAAAAAA && col >= 0x999999:
              bmd.setPixel(w,h,0x999999);
              break;
            case col < 0x999999 && col >= 0x555555:
              bmd.setPixel(w,h,0x555555);
              break;
            case col < 0x55555 && col >= 0x222222:
              bmd.setPixel(w,h,0x222222);
              break;
            default:
              bmd.setPixel(w,h,0x000000);
          }
        }
      }
    }
  }

  class Cell extends Sprite{
    private const LINE_COLOR:Number = 0x666666;
    private var   stat     :Boolean = true;
    private var   ans      :Boolean;
    private var   color    :Number;
    private var   fillColor:Number;
    private var   wIdx     :int;
    private var   vIdx     :int;
    private var   side     :int;
    
    public function getvIdx():int{
      return vIdx;
    }
      
    public function getwIdx():int{
      return wIdx;
    }
    
    public function Cell(_side:int,_ans:Boolean,_color:Number,_wIdx:int,_vIdx:int,_fillColor:Number):void{
      ans       = _ans;
      color     = _color;
      wIdx      = _wIdx;
      vIdx      = _vIdx;
      side      = _side;
      fillColor = _fillColor;         
      
    }
    
    public function draw():void{
      graphics.clear(); 
      graphics.beginFill(fillColor, 1);
      graphics.drawRect(0,0,side,side);
      graphics.endFill();
      graphics.lineStyle(0.1, LINE_COLOR);
      graphics.drawRect(0,0,side,side);
    }
      
    public function colorChange():void{
      graphics.clear(); 
      
      var colorTransForm:ColorTransform = new ColorTransform();
      colorTransForm.redMultiplier =  1;
      colorTransForm.greenMultiplier = 1;
      colorTransForm.blueMultiplier = 1;
      transform.colorTransform = colorTransForm;
        
      graphics.beginFill(color, 1);
      graphics.drawRect(0,0,side,side);
      graphics.endFill();
      graphics.lineStyle(0.1, LINE_COLOR);
      graphics.drawRect(0,0,side,side);
    }
      
    public function getAns():Boolean{
      return ans;
    }
      
    public function getStat():Boolean{
      return stat;
    }
    
    public function setStat(bool:Boolean):void{
      stat = bool;
    }
      
    public function cngStat():void{
      stat = !stat;
      
      var iTra:int = stat ? 1 : 0;
      var colorTransForm:ColorTransform = new ColorTransform();
      
      colorTransForm.redMultiplier   = iTra;
      colorTransForm.greenMultiplier = iTra;
      colorTransForm.blueMultiplier  = iTra;
      transform.colorTransform       = colorTransForm;
    }
      
  }

 class SideBar extends Sprite {
    private var idx:int;
    public function getIdx():int{
      return idx;
    }
    
    public function SideBar(_idx:int,_width:int,_height:int,_fillColor:uint):void{
      idx = _idx;
      graphics.lineStyle (0.1, 0x000000, 1); 
      graphics.beginFill(_fillColor,1);
      graphics.drawRoundRect(0, 0, _width, _height , 0 , 0);
      graphics.endFill();
    }
  }

  class ClearEvent extends Event{
    public static const CLEAR:String = "clear";
    public static const FAILED:String = "failed";

    public function ClearEvent(type:String){
      super(type);
    }
  }
  
  class CompEvent extends Event{
    public static const COMPLETE:String = "complete";
    public function CompEvent(type:String){
      super(type);
    }
  }

   
  class Question extends Sprite{
    private var ansBmp:Bitmap = new Bitmap();
    private var ansBmpData:BitmapData;
    private var cellMap:Array = new Array();
    private var vHints:Array; 
    private var wHints:Array ; 
    private var vHintsSpr:Array; 
    private var wHintsSpr:Array ; 
    private var stageSize:int;
    private var quest:Object; 
    private var cleared:Boolean;
    private var pHeight:int;
    private var pWidth:int;
    private var timer:Timer;
      
    public function getCleared():Boolean{
      return cleared;
    }
    
    public function setCleared(bool:Boolean):void{
      cleared = bool;
    }
    
    public function getTitle():String{
      return quest.title;     
    }

    public function getAnsBmpData():BitmapData{
      return ansBmpData;
    } 

    public function Question(_quest:Object,_stageSize:int,_cleared:Boolean){
      cleared           = _cleared;
      quest             = _quest;
      stageSize         = _stageSize;
      ansBmpData        = base64StringDecoder(_quest.bmp);
      ansBmp.bitmapData = ansBmpData;
    }
      
     
    public function draw(parent:Object):void{
        
     this.mouseChildren = true;
      pHeight = parent.height;
      pWidth = parent.width;
      var cY     :int = pHeight *0.25;
      for(var rowLen:int=0;rowLen < cellMap.length;rowLen++){
        var cX:int = parent.width *0.25;
        for (var colLen:int=0;colLen<cellMap[rowLen].length;colLen++){
          var cellSpl:Cell = cellMap[rowLen][colLen];
          cellSpl.draw();
          cellSpl.setStat(false);
          cellSpl.cngStat();
          cellSpl.x = cX;
          cellSpl.y = cY;
          cX += cellSpl.width;
          cellSpl.addEventListener(MouseEvent.MOUSE_DOWN,cellDown);
          cellSpl.addEventListener(MouseEvent.ROLL_OVER ,cellRoll);
          cellSpl.addEventListener(MouseEvent.ROLL_OUT  ,cellRoll);
          this.addChild(cellSpl);
        }
        cY += cellMap[rowLen][0].height;
      }
      drawVhints(pWidth *0.25 ,pHeight *0.25);
      drawWhints(pWidth *0.25 ,pHeight *0.25);
      drawMenu(pWidth *0.25 ,pHeight *0.25);
       
      parent.addChild(this); 
    }

    private function drawVhints(_cX:int,_cY:int):void{ 
      var cX         :int    = _cX;
      var cY         :int    = _cY;
      var vHintWidth :Number = cX;
      var vHintHeight:Number = cellMap[0][0].height;
      
      vHintsSpr = new Array();
      for(var i:int = 0;i<vHints.length;i++){
        var bgcolor:uint       = i%2 ? 0xECF7E9 : 0xE6F0F4;
        var bar    :SideBar    = new SideBar(i,vHintWidth,vHintHeight,bgcolor);
        var txt    :TextField  = new TextField();
        var format :TextFormat = new TextFormat();       
        bar.x = 0;
        bar.y = cY;
       
        format.align          = TextFormatAlign.RIGHT;
        format.font           = "MS ゴシック";
        format.size           = 10;
        txt.autoSize          = TextFieldAutoSize.RIGHT;
        txt.selectable        = false;
        txt.defaultTextFormat = format;
      
        for(var m:int = 0;m < vHints[i].length;m++){
          txt.appendText(vHints[i][m]);
          txt.appendText(" ");
        }
        txt.y =  1;
        cY    += vHintHeight;
        
        bar.addChild(txt);
        vHintsSpr.push(bar);
        this.addChild(bar);
      }
    }

    private function drawWhints(_cX:int,_cY:int):void{ 
      var cX         :int    = _cX;
      var cY         :int    = _cY;
      var wHintWidth :Number = cellMap[0][0].width;
      var wHintHeight:Number = cY;
               
      wHintsSpr = new Array();
      for(var i:int = 0;i<wHints.length;i++){
        var bgcolor:uint       = i%2 ? 0xECF7E9 : 0xE6F0F4;
        var bar    :SideBar    = new SideBar(i,wHintWidth,wHintHeight,bgcolor);
        var format :TextFormat = new TextFormat();
        var txt    :TextField  = new TextField();
        
        bar.x = cX;
        bar.y = 0;
        
        format.align          = TextFormatAlign.CENTER;
        format.font           = "MS ゴシック";
        format.size           = 10;
        txt.defaultTextFormat = format;
        
        for(var m:int = 0;m < wHints[i].length;m++){
          txt.appendText(wHints[i][m]);
          txt.appendText("\n");
        }
        
        txt.width      = wHintWidth;
        txt.autoSize   = TextFieldAutoSize.CENTER;
        txt.y          = bar.height - txt.height-1;
        txt.selectable = false;
        cX             += wHintWidth;
        
        bar.addChild(txt);
        wHintsSpr.push(bar);
        this.addChild(bar);
      }
    }
      
      private function drawMenu(_cX:int,_cY:int):void{
        var menuSpr:Sprite     = new Sprite();
        var infoTxt:TextField  = new TextField();
        var format :TextFormat = new TextFormat();
       
        menuSpr.x = 0;
        menuSpr.y = 0;
        menuSpr.graphics.lineStyle (2, 0x000000, 1); 
        menuSpr.graphics.beginFill(0x666666, 1);
        menuSpr.graphics.drawRect(0,0,_cX,_cY);
        menuSpr.graphics.endFill();
          
        format.align              = TextFormatAlign.LEFT;
        format.color              = 0xFFFFFF;
        format.font               = "MS ゴシック";
        infoTxt.defaultTextFormat = format;
        infoTxt.selectable        = false;
        infoTxt.autoSize = TextFieldAutoSize.LEFT;
        infoTxt.appendText("     タテ[" + (cellMap.length) + "]\n");
        infoTxt.appendText("     ヨコ[" + cellMap[0].length + "]\n");
        
        var timerTxt:TextField = new TextField();
        var rimit   :int       = quest.rimit;
        timerTxt.defaultTextFormat = format;
        timerTxt.text = "ノコリジカン[" + secToMin(rimit) + "]"
        timerTxt.y = infoTxt.height;
        timer = new Timer(1000);
        timer.addEventListener("timer", function():void{
                                        rimit -= 1;
                                        if(rimit == 0){
                                          dispatchEvent(new Event(ClearEvent.FAILED));
                                          timer.removeEventListener("timer",arguments.callee);
                                        }else if(rimit <= 30 ){
                                          timerTxt.textColor = 0xFF6262;
                                        }
                                        timerTxt.text = "ノコリジカン[" + secToMin(rimit) + "]";
                                        });
        timer.start();
        
        var giveTxt:TextField     = new TextField();
        giveTxt.defaultTextFormat = format;
        giveTxt.selectable        = false;
        giveTxt.autoSize          = TextFieldAutoSize.LEFT;
        giveTxt.appendText("ギブアップ?");

        giveTxt.addEventListener(MouseEvent.ROLL_OVER,txtRollOver);
        giveTxt.addEventListener(MouseEvent.ROLL_OUT,txtRollOut);
        giveTxt.addEventListener(MouseEvent.CLICK,dispConfirm);
        giveTxt.y = menuSpr.height * 0.75;   
        
        menuSpr.addChild(infoTxt);      
        menuSpr.addChild(timerTxt);      
        this.addChild(menuSpr);    
        this.addChild(giveTxt);   
        
        function secToMin(_sec:int):String{
          var sec:int = (_sec % 60);
          var secStr:String = sec < 10 ? "0" + sec : "" + sec;
          return Math.floor(_sec / 60) + ":" + secStr ;
        }  
    }
    
    private function dispConfirm(e:MouseEvent):void{
      var spr:Sprite = confirmSpr();
      e.target.parent.addChild(spr);
    }
    
    private function confirmSpr():Sprite{
      
      timer.stop();
      
      var spr    :Sprite     = new Sprite();
      var txtConf:TextField  = new TextField();
      var txtYes :TextField  = new TextField();
      var txtNo  :TextField  = new TextField();
      var format :TextFormat = new TextFormat();
      

     
      spr.graphics.lineStyle (2, 0x222222, 1); 
      spr.graphics.beginFill(0x333333,0.5);
      spr.graphics.drawRect(0, 0, pWidth, pHeight);
      spr.graphics.endFill();
      
      format.align          = TextFormatAlign.JUSTIFY;
      format.font           = "MS ゴシック";
      format.color          = 0xFFFFFF;
      format.size           = 10;
      
      txtConf.defaultTextFormat = format;
      txtConf.autoSize          = TextFieldAutoSize.CENTER;
      txtConf.selectable        = false; 
      txtConf.x                 = pWidth / 2 - 30;
      txtConf.y                 = pHeight / 2- 10;
      txtConf.appendText("ギブアップ シマスカ?");
      
      txtYes.defaultTextFormat  = format;
      txtYes.autoSize           = TextFieldAutoSize.CENTER;
      txtYes.selectable         = false;
      txtYes.x                  = txtConf.x;
      txtYes.y                  = txtConf.y + 30;
      txtYes.appendText("ハイ");
      txtYes.addEventListener(MouseEvent.ROLL_OVER,txtRollOver);
      txtYes.addEventListener(MouseEvent.ROLL_OUT,txtRollOut);
      txtYes.addEventListener(MouseEvent.CLICK,function():void{spr.mouseChildren = false;
                                                               dispatchEvent(new Event(ClearEvent.FAILED));});
      
      txtNo.defaultTextFormat   = format;
      txtNo.autoSize            = TextFieldAutoSize.CENTER;
      txtNo.selectable          = false;
      txtNo.x                   = txtConf.x + 60;
      txtNo.y                   = txtConf.y + 30;
      txtNo.appendText("イイエ");
      txtNo.addEventListener(MouseEvent.ROLL_OVER,txtRollOver);
      txtNo.addEventListener(MouseEvent.ROLL_OUT,txtRollOut);
      txtNo.addEventListener(MouseEvent.CLICK,function():void{spr.parent.removeChild(spr);
                                                              timer.start();});
      spr.addChild(txtConf);
      spr.addChild(txtYes);
      spr.addChild(txtNo);
      
      return spr;
    }
    
    private function txtRollOver(e:MouseEvent):void{
      e.target.border          = true;
      e.target.background      = true;
      e.target.backgroundColor = 0xCCCCCC;
    }
    private function txtRollOut(e:MouseEvent):void{
      e.target.border          = false;
      e.target.background      = false;
    }
    
    
    private function cellRoll(e:MouseEvent):void{
      
      const ALPHA_LV:Number = 0.9;
      var   tgV    :int    = e.target.getvIdx();
      var   tgW    :int    = e.target.getwIdx();
      var   i      :int;
      var   m      :int;
            
      if(e.type == MouseEvent.ROLL_OUT){
        for( i=0;i<cellMap.length;i++){setShadow(cellMap[i][tgV],1);}
        for( m=0;m<cellMap[tgV].length;m++){setShadow(cellMap[tgW][m],1);}
        setShadow(vHintsSpr[tgW],1);
        setShadow(wHintsSpr[tgV],1);
      }
      else if(e.type == MouseEvent.ROLL_OVER){
        if(e.buttonDown){
          cellDown(e);
        }
        for( i=0;i<cellMap.length;i++){setShadow(cellMap[i][tgV],ALPHA_LV);}
        for( m=0;m<cellMap[tgV].length;m++){setShadow(cellMap[tgW][m],ALPHA_LV);}
        setShadow(vHintsSpr[tgW],ALPHA_LV);
        setShadow(wHintsSpr[tgV],ALPHA_LV);
        setShadow(e.target, 1);
      }
   }
    
   public function setShadow(tgt:*,iTra:Number):void{
     tgt.alpha = iTra;
   }
      
   private function cellDown(e:MouseEvent):void{
 
     e.target.cngStat();
     if(ansCheck(e)){
       cleared = true;
       onCrear();
     };
   }
   
   private function onCrear():void{
     timer.stop();
     for(var v:int=0;v<cellMap.length;v++){
       for(var w:int = 0;w<cellMap[v].length;w++){
         cellMap[v][w].colorChange();
       }
     }
     //カスタムイベントの送出
     dispatchEvent(new Event(ClearEvent.CLEAR));
     this.mouseChildren = false;
     
   }
    
   private function ansCheck(e:MouseEvent):Boolean{
  
     if(e.target.getAns() != e.target.getStat()){
       return false;
     }
        
     for(var rowLen:int=0;rowLen < cellMap.length;rowLen++){
       for (var colLen:int=0;colLen<cellMap[rowLen].length;colLen++){
         var _cell:Cell = cellMap[rowLen][colLen];
         if(_cell.getAns() != _cell.getStat()){
           return false;
         }
       }
     }
     return true;
   }

  private function base64StringDecoder(_data:String):BitmapData{
    const MAXPIXEL_NUM :int = 100; //問題にする画像の最大縦横ピクセルサイズ。画面が大きくなれば大きくしていいと思う。
    var   byteArray    :ByteArray;
    var   base64Decoder:Base64Decoder;
    var   loader       :Loader;
    var   bmd          :BitmapData = new BitmapData(MAXPIXEL_NUM, MAXPIXEL_NUM, false, 0xFFFFFF);
    var   rtnBmd       :BitmapData;
          
    base64Decoder = new Base64Decoder();
    base64Decoder.decode(_data);
         
    try {
      byteArray = base64Decoder.toByteArray();
      byteArray.position = 0;
    } catch (e:Error) {
      return null;
    }
      
    loader = new Loader();
    loader.loadBytes(byteArray);
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE
                                             ,function(e:Event):void
                                              { 
                                                var v:int,w:int =0;//ループインデクサ
                                                bmd.draw(loader);
                                                   
                                                //問題範囲として必要なサイズの割り出し
                                                //このへんの処理は蛇足的。
                                                var u:Number = MAXPIXEL_NUM;
                                                var l:Number = MAXPIXEL_NUM;
                                                var d:Number = 0;
                                                var r:Number = 0;
                                                   
                                                for(v = 0;v < bmd.height;v++){
                                                  for(w = 0;w < bmd.width;w++){
                                                    if(bmd.getPixel(w,v) != 0xFFFFFF){
                                                      var tmpPoint:Point = new Point(w,v);
                                                      u = (u >= tmpPoint.y) ? tmpPoint.y : u;//左上
                                                      d = (d <= tmpPoint.y) ? tmpPoint.y : d;//右上
                                                      l = (l >= tmpPoint.x) ? tmpPoint.x : l;//左上
                                                      r = (r <= tmpPoint.x) ? tmpPoint.x : r;//右上
                                                    }
                                                  }
                                                }
                                                   
                                                //切り抜き範囲の大きさ
                                                var rect:Rectangle = new Rectangle(0,0,r-l+1,d-u+1);
                                                var mat :Matrix    = new Matrix();
                                                
                                                //切り抜き開始地点の指定
                                                mat.translate(-l,-u);
                                                
                                                rtnBmd = new BitmapData(r-l+1, d-u+1, false, 16711422);
                                                rtnBmd.draw(loader,mat,null,null,rect);
                                                   
                                                var vSize:int = rtnBmd.height;
                                                var wSize:int = rtnBmd.width;
                                                var side:int = (function(vNum:int,wNum:int):int{
                                                                  return stageSize / (vNum > wNum ? vNum : wNum);
                                                                })(vSize,wSize);
                                                                   
                                                vHints = new Array(vSize);
                                                wHints = new Array(wSize);
                                                for ( v =0;v<vSize;v++){
                                                  var cellLine:Array = new Array();//1行分
                                                  for (w =0;w<wSize;w++){
                                                    var pixelColor:Number  = rtnBmd.getPixel(w,v);
                                                    var ans       :Boolean = pixelColor > 0x808080 ?true:false;
                                                    var fillColor :Number;
                                                    
                                                    if(v%10 >= 5){
                                                      fillColor = w%10 >= 5 ? 0xFFFFF0 : 0xFFFFE0;
                                                    }else{
                                                      fillColor = w%10 >= 5 ? 0xFFFFE0 : 0xFFFFF0;
                                                    }
                                                    
                                                    var _cell:Cell = new Cell(side,ans,pixelColor,v,w,fillColor);
                                                    cellLine.push(_cell);
                                                         
                                                    vHints[v] = vHints[v] == null ? [0] : vHints[v] ;
                                                    wHints[w] = wHints[w] == null ? [0] : wHints[w] ;
                                                    if (!ans){
                                                      vHints[v].push(vHints[v].pop() + 1);
                                                      wHints[w].push(wHints[w].pop() + 1);
                                                    }else{
                                                      vHints[v].push(0);
                                                      wHints[w].push(0);
                                                    }
                                                  }
                                                  cellMap.push(cellLine);
                                                }
                                                
                                                delElm(vHints,0);   
                                                delElm(wHints,0);
                                                ansBmpData = rtnBmd;     
                                                
                                                dispatchEvent(new Event(CompEvent.COMPLETE));
                                                
                                                function delElm(arr:Array,val:*):void{
                                                  for(var i:int = 0;i<arr.length;i++){
                                                    _delElm(arr[i],0);
                                                  }
                                                  
                                                  function _delElm(arr:Array,val:*):void{
                                                    var flg:Boolean = true;
                                                    while(flg){
                                                      var i:int = arr.indexOf(val);
                                                      if(i==-1){
                                                        flg=false;
                                                        break;
                                                      }else{
                                                        arr.splice(i,1);    
                                                      }
                                                    }     
                                                 }
                                               }
                                            });
      return rtnBmd;
    }
}