var cssFiles = ['/static/style/mixi_editor/pictograph/set1/pictograph_set.css', '/static/style/mixi_editor/pictograph/set2/pictograph_set.css', '/static/style/mixi_editor/pictograph/setv1/pictograph_set.css'];

var MixiEditor2 = Class.create({
    initialize: function(target, options, args) {
        this.target = $(target);

        var iframe = new Element('iframe', {
            id: $(target).id + "Iframe"
        });
        var padding_left = parseFloat(this.target.getStyle('padding-left'));
        var padding_right = parseFloat(this.target.getStyle('padding-right'));
        var padding_top = parseFloat(this.target.getStyle('padding-top'));
        var padding_bottom = parseFloat(this.target.getStyle('padding-bottom'));

        var obj = this;

        var cssAttributes = [
            'borderTopColor', 'borderTopStyle', 'borderTopWidth',
            'borderRightColor', 'borderRightStyle', 'borderRightWidth',
            'borderBottomColor', 'borderBottomStyle', 'borderBottomWidth',
            'borderLeftColor', 'borderLeftStyle', 'borderLeftWidth'
        ];
        var cssStyle = {};
        cssAttributes.each(function(key) {
            cssStyle[key] = obj.target.getStyle(key); 
        });

        iframe.frameBorder = 0;
        iframe.setStyle({
            width: (parseFloat(this.target.getStyle('width')) + padding_left + padding_right) + "px" ,
            height: (parseFloat(this.target.getStyle('height')) + padding_top + padding_bottom) + "px", 
	    marginBottom: '10px'
        });
        iframe.setStyle(cssStyle);
        this.iframe = iframe;
        this.iframe.observe('load', function() {
            this._iframeDocument().designMode = "On";
        }.bind(this));
        $(target).insert({
            before: iframe
        });

        this._iframeDocument().open();
        cssFiles.each(function(url) {
            this._iframeDocument().writeln('<link href="' + url + '" rel="stylesheet" type="text/css" />');
        }.bind(this));


        var backgroundAttr = [
            'backgroundColor', 'backgroundAttachment', 'backgroundImage',
            'backgroundPosition', 'backgroundRepeat'
        ];
        var backgroundCss = "";
        backgroundAttr.each(function(key) {
            backgroundCss += obj.target.getStyle(key) + " ";
        });
        this._iframeDocument().writeln('<style>*{margin:0;padding:0}body{padding:4px;background: ' + backgroundCss + ';font-size:14px;line-height:1.5;}blockquote{border:1px solid #FFB52E;padding:5px;}</style>');
        this._iframeDocument().writeln('<body></body>');
        this._iframeDocument().writeln(this.target.value);
        this._iframeDocument().close();
        this.target.hide();
        if(document.all){
            this.iframe.attachEvent("onblur",function() {
                this.output()
            }.bind(this));

            this._iframeDocument().attachEvent("onmouseup", function() {
                this.selectionHandler();
            }.bind(this));
            this._iframeDocument().attachEvent("keyup", function() {
                this.selectionHandler();
            }.bind(this));
        
        }else{
            this.iframe.contentWindow.addEventListener("blur",function() {
                this.output()
            }.bind(this),false);

            this._iframeDocument().addEventListener("keyup", function() {
                this.selectionHandler();
            }.bind(this), false);
            this._iframeDocument().addEventListener("mouseup", function() {
                this.selectionHandler();
            }.bind(this), false);
        }


        this.options = options || {};
        this.args = args || {};
        this._bulid();

        var obj = this;

        var outputFunc = this.output;
        window.setInterval(outputFunc.bind(obj), 1000);
    },
    _iframeDocument: function() {
        return this.iframe.contentDocument ? this.iframe.contentDocument :
        this.iframe.contentWindow.document;
    },
    selectionHandler: function() {

        var fontSize = this._iframeDocument().queryCommandValue('fontsize') || 3;
        if( /^\d+px$/.test(fontSize+"") ) {
            var map = {
                '10px' : 1,
                '12px' : 1,
                '13px' : 2,
                '14px' : 3,
                '16px' : 3,
                '18px' : 4,
                '24px' : 5,
                '32px' : 6,
                '48px' : 7
            };
            fontSize = map[fontSize];
        }
        var isBold = this._iframeDocument().queryCommandState('bold');

        var bButton = this.menu['strong'];
        if( bButton ) {
            if( isBold ) {
                bButton.removeClassName('strong').addClassName('strongOn'); 
            } 
            else {
                bButton.removeClassName('strongOn').addClassName('strong');
            }
        }

        var isStrike = this._iframeDocument().queryCommandState('strikethrough');
        var sButton = this.menu['del'];
        if( sButton ) {
            if( isStrike ) {
                sButton.removeClassName('del').addClassName('delOn');
            }
            else {
                sButton.removeClassName('delOn').addClassName('del');
            }
        }

        if( this.menu['fontSize'] ) {
            var pt = [8, 10, 12, 14, 18, 24, 36];
            this.menu['fontSize'].value = pt[fontSize-1];
        }
    },
    output: function() {
        try {
            this._iframeDocument().execCommand('styleWithCSS', false, false);
        } catch(e) {};
        var tmp = new Element('div');
        tmp.innerHTML = this._iframeDocument().body.innerHTML;
        this.target.value = tmp.innerHTML;
        this.target.fire('custom:contentchange');
    },
    focus: function() {
        this.iframe.contentWindow ? this.iframe.contentWindow.focus() : this.iframe.focus();
    },
    executeCmd: function(cmd, value) {
        this._iframeDocument().execCommand(cmd, false, value);
        this.focus();
    },
    _storeRange: function() {
        var rangeObject;
        this.focus();
        if (this.iframe.contentWindow.getSelection) {
            var userSelection = this.iframe.contentWindow.getSelection();
            rangeObject = userSelection.getRangeAt(0);
        }
        else {
            if (this._iframeDocument().selection) {
                rangeObject = this._iframeDocument().selection.createRange();
            }
        }
        this.range = rangeObject;
        window._rangeForMixiEditor = rangeObject;
    },
    _insertNode: function(node){
        var tmpParent = this._iframeDocument().createElement('div');
        tmpParent.appendChild(node);
        if (this.range.insertNode) {
            return this.executeCmd('inserthtml', tmpParent.innerHTML);
        }       
        //this.range.collapse();
        if( this.range.pasteHTML ) {
            this.range.pasteHTML(tmpParent.innerHTML);
        }
    },
    _insertHtml: function(html){
        if (this.range.insertNode) {
            return this.executeCmd('inserthtml', html);
        }       
        //this.range.collapse();
        if( this.range.pasteHTML ) {
            this.range.pasteHTML(html);
        }
    },
    _surroundContents: function(node){
        this._storeRange();
        if (this.range.surroundContents)
            return this.range.surroundContents(node);
        var tmpParent = this._iframeDocument().createElement('div');
        tmpParent.appendChild(node);
        node.innerHTML += this.range.htmlText;
        this.range.pasteHTML(tmpParent.innerHTML);
    },
    _bulid: function() {
        var customMenu = $A([]);
        if(this.options.menu) {
            $A(this.options.menu).each(function(item) {
                if(MixiEditor2._menu.keys().include(item.toLowerCase())) {
                    customMenu.push(item.toLowerCase());
                }
            });
        } else {
            customMenu = MixiEditor2._menu.keys();
        }

        var menus = this.menu = {};
        var menuUl = new Element('div', {
            id: this.target.id + "Menu"
        });
        menuUl.className = 'MixiEditorMenu clearfix';
        var obj = this;
        customMenu.each(function(item) {
            if( !obj.options.exclude || !obj.options.exclude.include(item) ) {
                var button = new Element('input', {
                    type: 'button',
                    title: MixiEditor2._menuDesc[item]
                });
                if( item == 'fontSize' ) {
                    button.value = '12'; 
                }
                button.className = item + ' menuButton';
                button.observe('click',
                    MixiEditor2._menu.get(item).bind(obj));
                menuUl.insert(button);

                menus[item] = button;
            }
        });
        this.iframe.insert({
            before: menuUl
        });
    }
});
MixiEditor2.Global = {};

document.observe('MixiEditorPanel:open', function(event) {
    var open = MixiEditor2.Global.CurrentOpen;
    if( open ) open.hide();
    MixiEditor2.Global.CurrentOpen = event.memo.obj;
});

MixiEditor2._menuDesc = {
    pictograph: '表情',
    color: '颜色',
    fontSize: '字体大小',
    strong: '粗体',
    del: '删除线',
    link: '超链接',
    video: '视频',
    blockquote: '引用',
    photo_album: '图片' 
};

MixiEditor2._menu = $H({
    pictograph: function(event) {
        this._storeRange();
        if( MixiEditor2.Global.picPanel ) {
            MixiEditor2.Global.picPanel.resetTarget(this);
        } else {
            MixiEditor2.Global.picPanel = new MixiEditor2.PicPanel(this, this.args.is_vip);
            document.body.appendChild(MixiEditor2.Global.picPanel.getDom());
        }
        var offset = this.menu['pictograph'].cumulativeOffset();
        MixiEditor2.Global.picPanel.getDom().setStyle({
            left: offset[0] + "px",
            top: (offset[1] + 22) + "px"
        });
        document.fire('MixiEditorPanel:open', {
            obj: MixiEditor2.Global.picPanel
        });
        MixiEditor2.Global.picPanel.show();
    },
    color: function(event) {
        this._storeRange();
        if( MixiEditor2.Global.colorPanel ) {
            MixiEditor2.Global.colorPanel.resetTarget(this);
        } else {
            MixiEditor2.Global.colorPanel = new MixiEditor2.ColorPanel(this);
            document.body.appendChild(MixiEditor2.Global.colorPanel.getDom());
        }
        var offset = this.menu['color'].cumulativeOffset();
        MixiEditor2.Global.colorPanel.getDom().setStyle({
            left: offset[0] + "px",
            top: (offset[1] + 22) + "px"
        });
        document.fire('MixiEditorPanel:open', {
            obj: MixiEditor2.Global.colorPanel
        });
        MixiEditor2.Global.colorPanel.show();
    },
    fontSize: function(event) {
        this._storeRange();
        if( MixiEditor2.Global.fontSizePanel ) {
            MixiEditor2.Global.fontSizePanel.resetTarget(this);
        } else {
            MixiEditor2.Global.fontSizePanel = new MixiEditor2.FontSizePanel(this);
            document.body.appendChild(MixiEditor2.Global.fontSizePanel.getDom());
        }
        var offset = this.menu['fontSize'].cumulativeOffset();

        MixiEditor2.Global.fontSizePanel.getDom().setStyle({
            left: offset[0] + "px",
            top: (offset[1] + 22) + "px"
        });
        document.fire('MixiEditorPanel:open', {
            obj: MixiEditor2.Global.fontSizePanel
        });
        var currentSize = this.menu['fontSize'].value;
        var pt = [8, 10, 12, 14, 18, 24, 36];
        var i = 0;
        for( i = 0; i < pt.length; ++i ) {
            if( currentSize == pt[i] ) {
                break;
            } 
        }
        MixiEditor2.Global.fontSizePanel.setSelection(i+1);
        MixiEditor2.Global.fontSizePanel.show();
    },
    strong: function() {
        this._storeRange();
        this.executeCmd('bold', null);
        this.selectionHandler();
    },
    del: function() {
        this._storeRange();
        this.executeCmd('strikethrough', null);
        this.selectionHandler();
    },
    link: function(event) {
        this._storeRange();
        if( MixiEditor2.Global.linkPanel ) {
            MixiEditor2.Global.linkPanel.resetTarget(this);
        } else {
            MixiEditor2.Global.linkPanel = new MixiEditor2.LinkPanel(this);
            document.body.appendChild(MixiEditor2.Global.linkPanel.getDom());
        }
        MixiEditor2.Global.linkPanel.getDom().setStyle({
            left: (Event.pointerX(event) + 5) + "px",
            top: (Event.pointerY(event) + 5) + "px"
        });
        document.fire('MixiEditorPanel:open', {
            obj: MixiEditor2.Global.linkPanel
        });
        MixiEditor2.Global.linkPanel.show();
    },
    video: function(event) {
        this._storeRange();
        if( MixiEditor2.Global.flashPanel ) {
            MixiEditor2.Global.flashPanel.resetTarget(this);
        } else {
            MixiEditor2.Global.flashPanel = new MixiEditor2.FlashPanel(this);
            document.body.appendChild(MixiEditor2.Global.flashPanel.getDom());
        }
        MixiEditor2.Global.flashPanel.getDom().setStyle({
            left: (Event.pointerX(event) + 5) + "px",
            top: (Event.pointerY(event) + 5) + "px"
        });
        document.fire('MixiEditorPanel:open', {
            obj: MixiEditor2.Global.flashPanel
        });
        MixiEditor2.Global.flashPanel.show();
    },
    photo_album: function(event) {
        this._storeRange();
        var panel;
        if( this.args.no_image_upload ) {
            panel = MixiEditor2.Global.noUploadPicturePanel; 
        }
        else {
            panel = MixiEditor2.Global.picturePanel;
        }
        if( panel ) {
            panel.resetTarget(this);
        } else {
            panel = new MixiEditor2.PicturePanel(this, this.args);
            document.body.appendChild(panel.getDom());

            if( this.args.no_image_upload ) {
                MixiEditor2.Global.noUploadPicturePanel = panel; 
            }
            else {
                MixiEditor2.Global.picturePanel = panel;;
            }
        } 
        panel.getDom().setStyle({
            left: (Event.pointerX(event) + 5) + "px",
            top: (Event.pointerY(event) + 5) + "px"
        });
        document.fire('MixiEditorPanel:open', {
            obj:panel 
        });
        panel.show();
    },
    blockquote: function() {
        var ele = this._iframeDocument().createElement('blockquote');
        this._surroundContents(ele);
    }
});

MixiEditor2.BasicPanel = Class.create({
    initialize: function(target, args) {
        this.target = target;
        this.args = args;
        this._build();
    },
    show: function() {
        this.dom.show();
    },
    hide: function() {
        this.dom.hide();
    },
    getDom: function() {
        return this.dom;
    },
    resetTarget: function(target) {
        this.target = target;
    },
    makeWrapper: function(titleContent, wrapperStyle, innerWrapperStyle, innerWrapperId) {
        var obj = this;
        var wrapper = new Element('div');
        wrapper.className = 'MixiEditorPanel clearfix';
        wrapper.setStyle(wrapperStyle);

        var titleBar = new Element('div');
        titleBar.className = 'titleBar clearfix';
        var title = new Element('span');
        title.className = 'title';
        title.innerHTML = titleContent;
        var close = new Element('span').observe('click', function() {
            obj.hide();
        });
        close.innerHTML = 'X';
        close.className = 'close';
        titleBar.insert(title);
        titleBar.insert(close);
        wrapper.insert(titleBar);

        var innerWrapper = new Element('div');
        innerWrapper.className = 'clearfix innerWrapper';
        innerWrapper.setStyle(innerWrapperStyle);
        if( innerWrapperId ) {
            innerWrapper.id = innerWrapperId;
        }
        wrapper.insert(innerWrapper);
        return {
            wrapper: wrapper,
            innerWrapper: innerWrapper
        };
    }
});

MixiEditor2.FlashPanel = Class.create(MixiEditor2.BasicPanel, {
    _build: function() {
        var obj = this;
        var container = obj.makeWrapper('视频', {width: '290px'}, {padding: '8px'});
        var wrapper = container.wrapper;
        var innerWrapper = container.innerWrapper;

        var row1 = new Element('div');
        var label1 = new Element('label');
        label1.innerHTML = '请输入Flash源文件地址';
        var input1 = new Element('input', {
            id: 'mixi_editor_flash_src_url',
            type: 'text'
        });
        input1.className = 'textinput';
        row1.insert(label1).insert(input1);
        innerWrapper.insert(row1);

        var row3 = new Element('div');
        var input3 = new Element('input', {
            type: 'button',
            value: '提交'
        });
        input3.className = "button";
        input3.observe('click', function(event) {
            var url = $F('mixi_editor_flash_src_url');
            if( !url.blank() ) {
                $('mixi_editor_flash_src_url').value = '';
                var flashWrapper = obj.target._iframeDocument().createElement('img');
                flashWrapper.className = 'flashToken';
                flashWrapper.setAttribute('src', '/static/img/flashplayer.jpg');
                flashWrapper.setAttribute('mixiuflash', url);
                obj.target._insertNode(flashWrapper);
                obj.target.focus();
            } 
            obj.hide();
        });
        row3.insert(input3);
        var input5 = new Element('input', {
            type: 'button',
            value: '关闭'
        });
        input5.className = "button";
        input5.observe('click', function(event) {
            MixiEditor2.Global.flashPanel.hide();
        });
        row3.insert(input5);
        innerWrapper.insert(row3);

        this.dom = wrapper;
    }
});

MixiEditor2.LinkPanel = Class.create(MixiEditor2.BasicPanel, {
    _build: function() {
        var obj = this;

        var container = obj.makeWrapper('链接', {width: '290px'}, {padding: '8px'});
        var wrapper = container.wrapper;
        var innerWrapper = container.innerWrapper;

        var row1 = new Element('div');
        var label1 = new Element('label');
        label1.innerHTML = '请输入选择文字的链接地址';
        var input1 = new Element('input', {
            id: 'mixi_editor_http_url',
            type: 'text'
        });
        input1.className = 'textinput';
        input1.value = 'http://';
        row1.insert(label1).insert(input1);
        innerWrapper.insert(row1);

        var row3 = new Element('div');
        var input3 = new Element('input', {
            type: 'button',
            value: '提交'
        });
        input3.className = "button";
        input3.observe('click', function(event) {
            var url = $F('mixi_editor_http_url');
            if( !url.blank() ) {
                if( obj.target.range.select ) obj.target.range.select();
                obj.target.executeCmd('createlink', url);
                $('mixi_editor_http_url').value = 'http://';
            } 
            obj.hide();
        });
        row3.insert(input3);
        var input5 = new Element('input', {
            type: 'button',
            value: '关闭'
        });
        input5.className = "button";
        input5.observe('click', function(event) {
            MixiEditor2.Global.linkPanel.hide();
        });
        row3.insert(input5);
        innerWrapper.insert(row3);

        this.dom = wrapper;
    }
});

MixiEditor2.QuoteAlbumPanel = Class.create(MixiEditor2.BasicPanel, {
    insertImg: function() {
        var obj = this; 
        if( obj.target.range.select ) obj.target.range.select();
        $$('#mixi_editor_quote_album_container .ref_album_photo').each(function(checkbox) {
            if( checkbox.checked == true ) {
                var ele = obj.target._iframeDocument().createElement('img');
                ele.setAttribute('src', $(checkbox).readAttribute('url'));
                ele.className = "albumPhotoRefToken";
                ele.setAttribute('code', $(checkbox).readAttribute('code'));
                obj.target._insertNode(ele);
            } 
        }); 
        obj.target.focus();
        obj.hide();
        //MixiEditor2.Global.picturePanel.hide();
    },
    update: function() {
        var url = '/quote_album_photo_new.pl?' + ($('album_selector') ? 'album_id=' + $F('album_selector') : '');  
        new Ajax.Updater('mixi_editor_quote_album_container', url, {onException: function(t, exception) {
            alert(exception);
        }}); 
    },
    show: function() {
        MixiEffect.showOverlap();
        MixiEffect.makeCenter(this.dom);

        MixiEffect.makeCenter($('ie6_bug_iframe'));
        $('ie6_bug_iframe').show();
        this.dom.show();
        this.update();
    },
    hide: function() {
        MixiEffect.hideOverlap();
        $('ie6_bug_iframe').hide();
        this.dom.hide();
    },
    _build: function() {
        var obj = this;

        var container = obj.makeWrapper('相册引用', {width: '600px'}, {padding: '8px', height: '472px'}, 'mixi_editor_quote_album_container');
        var wrapper = container.wrapper;
        var innerWrapper = container.innerWrapper;
        
        this.dom = wrapper;
        
        var iframe = new Element('iframe', { id: 'ie6_bug_iframe'});
        iframe.frameBorder = 0;
        iframe.setStyle({
            width: '618px',
            height: '518px',
            position: 'absolute'
        });
        document.body.appendChild(iframe);
    }
})


MixiEditor2.PicturePanel = Class.create(MixiEditor2.BasicPanel, {
    insertImg: function(url) {
        var obj = this; 
        if( obj.target.range.select ) obj.target.range.select();
        var ele = obj.target._iframeDocument().createElement('img');
        ele.setAttribute('src', url);
        obj.target._insertNode(ele);
        obj.target.focus();
    },
    showUploadingTips: function() {
        var obj = this;
        this.uploading_tips.show();
        this.uploading_tips.innerHTML = '加载中';
        this.uploadingIntervalId = setInterval(function() {
            var text = obj.uploading_tips.innerHTML;
            if( text.length <= 6 ) {
                text = text + "."
            }
            else {
                text = '加载中';
            }
            obj.uploading_tips.innerHTML = text;
        }, 500);
    },
    hideUploadingTips: function() {
        this.uploading_tips.hide();
        clearInterval(this.uploadingIntervalId);

        if (Prototype.Browser.IE) {
            
            [1,2,3].each(function(num) {
                $('upload_img' + num).outerHTML = '<input type="file" class="textinput" size="35" id="upload_img' + num + '" name="upload_img' + num + '">';
            });
        }
        else {
            $('upload_img1').value = '';
            $('upload_img2').value = '';
            $('upload_img3').value = '';
        }

        return this;
    },
    _build: function() {
        var obj = this;

        var container = obj.makeWrapper('图片', {width: '300px'}, {padding: '8px'});
        var wrapper = container.wrapper;
        var innerWrapper = container.innerWrapper;


        var row4 = new Element('div');
        var label4 = new Element('label');
        label4.innerHTML = '方法1:<span style="text-decoration: underline;cursor:pointer">引用自己相册的照片</span>';
        row4.insert(label4);
        innerWrapper.insert(row4);
        
        label4.select('span').first().observe('click', function(event) {
            if( MixiEditor2.Global.quoteAlbumPanel ) {
                MixiEditor2.Global.quoteAlbumPanel.resetTarget(obj.target);
            } else {
                MixiEditor2.Global.quoteAlbumPanel = new MixiEditor2.QuoteAlbumPanel(obj.target);
                document.body.appendChild(MixiEditor2.Global.quoteAlbumPanel.getDom());
            } 
            MixiEditor2.Global.quoteAlbumPanel.getDom().setStyle({
                left: (Event.pointerX(event) + 5) + "px",
                top: (Event.pointerY(event) + 5) + "px"
            });
            MixiEditor2.Global.quoteAlbumPanel.show();
        });


        if( !obj.args.no_image_upload ) {
            var row2 = new Element('div');
            var form = new Element('form', {
                name: 'editor_upload_img_form',
                target: 'async_iframe',
                method: 'post',
                action: '/tmp_uploader.pl'
            });
            form.encoding = 'multipart/form-data';
            row2.insert(form);
            var label2 = new Element('label');
            label2.innerHTML = '方法2:上传新图片';

            obj.uploading_tips = new Element('span');
            obj.uploading_tips.innerHTML = "上传中";
            obj.uploading_tips.setStyle({
                color: '#FF0000',
                padding: '0 0 0 5px'
            }).hide();
            label2.insert(obj.uploading_tips);

            var input2_1 = new Element('input', {
                id: 'upload_img1',
                type: 'file'
            });
            input2_1.writeAttribute('name', 'upload_img1');
            input2_1.className = 'textinput';
            input2_1.size = "35";

            var input2_2 = new Element('input', {
                id: 'upload_img2',
                type: 'file'
            });
            input2_2.writeAttribute('name', 'upload_img2');
            input2_2.className = 'textinput';
            input2_2.size = "35";

            var input2_3 = new Element('input', {
                id: 'upload_img3',
                type: 'file'
            });
            input2_3.writeAttribute('name', 'upload_img3');
            input2_3.className = 'textinput';
            input2_3.size = "35";

            var photo_type = obj.args.photo_type || 'diary'; 

            var hidden_input = new Element('input', {
                name: 'mode',
                value: photo_type,
                type: 'hidden'
            });

            form.insert(label2).insert(hidden_input).insert(input2_1).insert(input2_2).insert(input2_3);
            row2.insert(form);
            var iframe = new Element('iframe', {
                name: 'async_iframe',
                id: 'async_iframe'
            });
            iframe.hide();
            row2.insert(iframe);
            innerWrapper.insert(row2);
        }


        var row1 = new Element('div');
        var label1 = new Element('label');
        label1.innerHTML = (obj.args.no_image_upload ? '方法2' : '方法3') + ':引用互联网上的图片';
        var input1 = new Element('input', {
            type: 'text'
        });
        input1.className = 'textinput';
        row1.insert(label1).insert(input1);
        innerWrapper.insert(row1);

        var row3 = new Element('div');
        var input3 = new Element('input', {
            type: 'button',
            value: '提交'
        });
        input3.className = "button";
        input3.observe('click', function() {
            var url = input1.value;
            if( !url.blank() ) {
                input1.value = '';
                if( obj.target.range.select ) obj.target.range.select();
                var ele = obj.target._iframeDocument().createElement('img');
                ele.setAttribute('src', url);
                obj.target._insertNode(ele);
                obj.target.focus();
            } 
            if( !obj.args.no_image_upload ) {
                if( !$F('upload_img1').blank() || 
                    !$F('upload_img2').blank() ||
                    !$F('upload_img3').blank() ) {
                    form.submit();    
                    obj.showUploadingTips();
                }
                else {
                    obj.hide();
                }
            }
            else {
                obj.hide();
            }
        });
        row3.insert(input3);
        var input5 = new Element('input', {
            type: 'button',
            value: '关闭'
        });
        input5.className = "button";
        input5.observe('click', function(event) {
            obj.hide();
        });
        row3.insert(input5);
        innerWrapper.insert(row3);

        this.dom = wrapper;
    }
});

MixiEditor2.ColorPanel = Class.create(MixiEditor2.BasicPanel, {
    _build: function() {
        var obj = this;

        var container = obj.makeWrapper('图片', {width: '122px'}, {});
        var wrapper = container.wrapper;
        var innerWrapper = container.innerWrapper;

        MixiEditor2.ColorPanel.colors.each(function(row) {
            row.each(function(color) {
                var cell = new Element('input', {
                    type: 'button'
                }).setStyle({
                    backgroundColor: color,
                    border: '1px solid #FFF4E0'
                });
                cell.className = 'colorCell';
                cell.observe('click', function() {
                    if( obj.target.range.select ) obj.target.range.select();
                    this.target.executeCmd('forecolor', color);
                }.bind(obj))
                .observe('mouseover', function() {
                    this.setStyle({
                        border: "1px solid black"
                    });
                })
                .observe('mouseout', function() {
                    this.setStyle({
                        border: "1px solid #FFF4E0"
                    });
                });
                innerWrapper.insert(cell);
            });
        });
        wrapper.observe('click', function() {
            wrapper.hide()
        });
        this.dom = wrapper;
    }
});

MixiEditor2.FontSizePanel = Class.create(MixiEditor2.BasicPanel, {
    _build: function() {
        var obj = this;

        var wrapper = new Element('div');
        wrapper.setStyle({ 
            width: '80px',
            backgroundColor: '#FFF8CC',
            border: '1px solid #E5CDC0',
            position: 'absolute'
        });

        var pt = [8, 10, 12, 14, 18, 24, 36];

        var cells = this.cells = [];
        pt.each(function(num, index) {
            var cell = new Element('input', {
                type: 'button',
                value: num 
            });
            cell.setStyle({
                width: '80px',
                border: '0',
                backgroundColor: '#FFF8CC',
                textAlign: 'left',
                paddingLeft: '8px',
                height: '20px',
                lineHeight: '20px',
                color: '#000000'
            });
            cells.push(cell);
            cell.observe('click', function() {
                if( obj.target.range.select ) obj.target.range.select();
                this.target.executeCmd('fontsize', index + 1);
                this.setSelection(index + 1);
            }.bind(obj))
            .observe('mouseover', function() {
                cell.setStyle({
                    backgroundColor: '#FFB52F',
                    color: '#FFFFFF'
                });
            })
            .observe('mouseout', function() {
                if( !cell.hasClassName('on') ) {
                    cell.setStyle({
                        backgroundColor: '#FFF8CC',
                        color: '#000000'
                    });
                }
            });
            wrapper.insert(cell);
        });
        wrapper.observe('click', function() {
            wrapper.hide();
        });
        this.dom = wrapper;
    },
    setSelection: function(size) {
        var pt = [8, 10, 12, 14, 18, 24, 36];
        this.cells.each(function(item) {
            item.setStyle({
                background: '#FFF8CC',
                color: '#000000'
            }).removeClassName('on');
        });
        this.cells[size-1].setStyle({
            backgroundColor: '#FFB52F',
            color: '#FFFFFF'
        }).className = 'on';
        this.target.menu['fontSize'].value = pt[size-1];
    }
});

MixiEditor2.ColorPanel.colors = $A([
    $A(['#FFFFFF', '#CCCCCC', '#999999', '#666666', '#333333', '#000000']),
    $A(['#FFCCCC', '#FF99CC', '#FF6699', '#FF0000', '#CC0000', '#990000']),
    $A(['#FFFF99', '#FFFF00', '#FFCC33', '#FF9933', '#FF6600', '#CC3300']),
    $A(['#99FF99', '#00FF00', '#00CC00', '#009900', '#006600', '#003300']),
    $A(['#66FFFF', '#00CCFF', '#0066FF', '#0000FF', '#0000CC', '#000066']),
    $A(['#CCCCFF', '#9999FF', '#9966FF', '#9900FF', '#660099', '#660066']),
    $A(['#FFCCFF', '#FF99FF', '#FF66FF', '#FF00FF', '#CC0099', '#990066'])
    ]);

MixiEditor2.PicPanel = Class.create(MixiEditor2.BasicPanel, {
    initialize: function(target, is_vip) {
        this.target = target;
        this.is_vip = is_vip;
        this._build();
    },
    _build: function() {
        var obj = this;

        var container = obj.makeWrapper('表情', {width: '354px'}, {});
        var wrapper = container.wrapper;
        var innerWrapper = container.innerWrapper;

        var picContainer = new Element('div');
        picContainer.className = "clearfix";
        innerWrapper.insert(picContainer);

        MixiEditor2.PicPanel.pic.each(function(item) {
            var div = new Element('a').setStyle({
                border: "1px solid #FFFFFF"
            }).observe('click', function() {         
                if( obj.target.range.select ) obj.target.range.select();
                var ele = obj.target._iframeDocument().createElement('img');
                ele.className = "pictograph " + item.cName;
                ele.setAttribute('src', "http://r.mixiu.cn/static/img/n.gif");
                ele.setAttribute('code', item.code);
                obj.target._insertNode(ele);
                obj.target.focus();
                obj.hide();
            }).observe('mouseover', function() {
                this.setStyle({
                    border: "1px dashed black"
                });
            }).observe('mouseout', function() {
                this.setStyle({
                    border: "1px solid #FFFFFF"
                });
            });
            div.className = 'pictograph ' + item['cName'];
            picContainer.appendChild(div);
        });

        if( obj.is_vip ) {
            var pContainer;
            var count = 0;
            MixiEditor2.PicPanel.vip_pic.each(function(item, index) {
                if( index % 36 == 0 ) {
                    pContainer = new Element('div');
                    pContainer.className = "clearfix";
                    pContainer.hide();
                    innerWrapper.insert(pContainer);
                    ++count;
                } 

                var div = new Element('a').setStyle({
                    border: "1px solid #FFFFFF"
                }).observe('click', function() {         
                    if( obj.target.range.select ) obj.target.range.select();
                    var ele = obj.target._iframeDocument().createElement('img');
                    ele.className = "pictograph " + item.cName;
                    ele.setAttribute('src', "http://r.mixiu.cn/static/img/n.gif");
                    ele.setAttribute('code', item.code);
                    obj.target._insertNode(ele);
                    obj.target.focus();
                    obj.hide();
                }).observe('mouseover', function() {
                    this.setStyle({
                        border: "1px dashed black"
                    });
                }).observe('mouseout', function() {
                    this.setStyle({
                        border: "1px solid #FFFFFF"
                    });
                });
                div.className = 'pictograph ' + item['cName'];
                pContainer.insert(div);
            });
            var ul = new Element('ul');
            ul.setStyle({
                textAlign: 'right',
                padding: '6px 0 0 0'
            });
            (count+1).times(function(n) {
                var li = new Element('li');
                li.setStyle({
                    display: 'inline',
                    border: '1px solid #FFDCA2',
                    backgroundColor: '#FFFFFF',
                    padding: '1px 4px',
                    margin: '0 5px',
                    cursor: 'pointer'
                });
                li.innerHTML = n+1;
                li.observe('click', function(event) {
                    innerWrapper.select('div').invoke('hide');
                    innerWrapper.select('div')[n].show();
                    ul.select('li').invoke('removeClassName', 'on');
                    ul.select('li').invoke('setStyle', {
                        backgroundColor: "#FFFFFF",
                        color: "#6D6D6D"
                    });
                    li.className = 'on';
                    li.setStyle({
                        color: "#FFFFFF",
                        backgroundColor: "#FF6602"
                    });
                }).observe('mouseover', function(event) {
                    if( !li.hasClassName('on') ) {
                        li.setStyle({backgroundColor: "#FF6602"});
                    }
                }).observe('mouseout', function(event) {
                    if( !li.hasClassName('on') ) {
                        li.setStyle({backgroundColor: "#FFFFFF"});
                    }
                });
                ul.insert(li);
            });

            var first = ul.select('li')[0];
            first.className = "on";
            first.setStyle({
                color: "#FFFFFF",
                backgroundColor: "#FF6602"
            });
            wrapper.insert(ul);
        }
        this.dom = wrapper;
    }
});


MixiEditor2.PicPanel.vip_pic = $A([
    { cName: 'setv1 setv1df01 setv1n1', code: '[setv1:1]' },
    { cName: 'setv1 setv1df02 setv1n2', code: '[setv1:2]' },
    { cName: 'setv1 setv1df03 setv1n3', code: '[setv1:3]' },
    { cName: 'setv1 setv1df04 setv1n4', code: '[setv1:4]' },
    { cName: 'setv1 setv1df05 setv1n5', code: '[setv1:5]' },
    { cName: 'setv1 setv1df06 setv1n6', code: '[setv1:6]' },
    { cName: 'setv1 setv1df07 setv1n7', code: '[setv1:7]' },
    { cName: 'setv1 setv1df08 setv1n8', code: '[setv1:8]' },
    { cName: 'setv1 setv1df09 setv1n9', code: '[setv1:9]' },
    { cName: 'setv1 setv1df010 setv1n10', code: '[setv1:10]' },
    { cName: 'setv1 setv1df011 setv1n11', code: '[setv1:11]' },
    { cName: 'setv1 setv1df012 setv1n12', code: '[setv1:12]' },
    { cName: 'setv1 setv1df013 setv1n13', code: '[setv1:13]' },
    { cName: 'setv1 setv1df014 setv1n14', code: '[setv1:14]' },
    { cName: 'setv1 setv1df015 setv1n15', code: '[setv1:15]' },
    { cName: 'setv1 setv1df016 setv1n16', code: '[setv1:16]' },
    { cName: 'setv1 setv1df017 setv1n17', code: '[setv1:17]' },
    { cName: 'setv1 setv1df018 setv1n18', code: '[setv1:18]' },
    { cName: 'setv1 setv1df019 setv1n19', code: '[setv1:19]' },
    { cName: 'setv1 setv1df020 setv1n20', code: '[setv1:20]' },
    { cName: 'setv1 setv1df021 setv1n21', code: '[setv1:21]' },
    { cName: 'setv1 setv1df022 setv1n22', code: '[setv1:22]' },
    { cName: 'setv1 setv1df023 setv1n23', code: '[setv1:23]' },
    { cName: 'setv1 setv1df024 setv1n24', code: '[setv1:24]' },
    { cName: 'setv1 setv1df025 setv1n25', code: '[setv1:25]' },
    { cName: 'setv1 setv1df026 setv1n26', code: '[setv1:26]' },
    { cName: 'setv1 setv1df027 setv1n27', code: '[setv1:27]' },
    { cName: 'setv1 setv1df028 setv1n28', code: '[setv1:28]' },
    { cName: 'setv1 setv1df029 setv1n29', code: '[setv1:29]' },
    { cName: 'setv1 setv1df030 setv1n30', code: '[setv1:30]' },
    { cName: 'setv1 setv1df031 setv1n31', code: '[setv1:31]' },
    { cName: 'setv1 setv1df032 setv1n32', code: '[setv1:32]' },
    { cName: 'setv1 setv1df033 setv1n33', code: '[setv1:33]' },
    { cName: 'setv1 setv1df034 setv1n34', code: '[setv1:34]' },
    { cName: 'setv1 setv1df035 setv1n35', code: '[setv1:35]' },
    { cName: 'setv1 setv1df036 setv1n36', code: '[setv1:36]' },
    { cName: 'setv1 setv1df037 setv1n37', code: '[setv1:37]' },
    { cName: 'setv1 setv1df038 setv1n38', code: '[setv1:38]' },
    { cName: 'setv1 setv1df039 setv1n39', code: '[setv1:39]' },
    { cName: 'setv1 setv1df040 setv1n40', code: '[setv1:40]' },
    { cName: 'setv1 setv1df041 setv1n41', code: '[setv1:41]' },
    { cName: 'setv1 setv1df042 setv1n42', code: '[setv1:42]' },
    { cName: 'setv1 setv1df043 setv1n43', code: '[setv1:43]' },
    { cName: 'setv1 setv1df044 setv1n44', code: '[setv1:44]' },
    { cName: 'setv1 setv1df045 setv1n45', code: '[setv1:45]' },
    { cName: 'setv1 setv1df046 setv1n46', code: '[setv1:46]' },
    { cName: 'setv1 setv1df047 setv1n47', code: '[setv1:47]' },
    { cName: 'setv1 setv1df048 setv1n48', code: '[setv1:48]' },
    { cName: 'setv1 setv1df049 setv1n49', code: '[setv1:49]' },
    { cName: 'setv1 setv1df050 setv1n50', code: '[setv1:50]' },
    { cName: 'setv1 setv1df051 setv1n51', code: '[setv1:51]' },
    { cName: 'setv1 setv1df052 setv1n52', code: '[setv1:52]' },
    { cName: 'setv1 setv1df053 setv1n53', code: '[setv1:53]' },
    { cName: 'setv1 setv1df054 setv1n54', code: '[setv1:54]' },
    { cName: 'setv1 setv1df055 setv1n55', code: '[setv1:55]' },
    { cName: 'setv1 setv1df056 setv1n56', code: '[setv1:56]' },
    { cName: 'setv1 setv1df057 setv1n57', code: '[setv1:57]' },
    { cName: 'setv1 setv1df058 setv1n58', code: '[setv1:58]' },
    { cName: 'setv1 setv1df059 setv1n59', code: '[setv1:59]' },
    { cName: 'setv1 setv1df060 setv1n60', code: '[setv1:60]' },
    { cName: 'setv1 setv1df061 setv1n61', code: '[setv1:61]' },
    { cName: 'setv1 setv1df062 setv1n62', code: '[setv1:62]' },
    { cName: 'setv1 setv1df063 setv1n63', code: '[setv1:63]' },
    { cName: 'setv1 setv1df064 setv1n64', code: '[setv1:64]' },
    { cName: 'setv1 setv1df065 setv1n65', code: '[setv1:65]' },
    { cName: 'setv1 setv1df066 setv1n66', code: '[setv1:66]' },
    { cName: 'setv1 setv1df067 setv1n67', code: '[setv1:67]' },
    { cName: 'setv1 setv1df068 setv1n68', code: '[setv1:68]' },
    { cName: 'setv1 setv1df069 setv1n69', code: '[setv1:69]' },
    { cName: 'setv1 setv1df070 setv1n70', code: '[setv1:70]' },
    { cName: 'setv1 setv1df071 setv1n71', code: '[setv1:71]' },
    { cName: 'setv1 setv1df072 setv1n72', code: '[setv1:72]' },
    { cName: 'setv1 setv1df073 setv1n73', code: '[setv1:73]' },
    { cName: 'setv1 setv1df074 setv1n74', code: '[setv1:74]' },
    { cName: 'setv1 setv1df075 setv1n75', code: '[setv1:75]' },
    { cName: 'setv1 setv1df076 setv1n76', code: '[setv1:76]' },
    { cName: 'setv1 setv1df077 setv1n77', code: '[setv1:77]' },
    { cName: 'setv1 setv1df078 setv1n78', code: '[setv1:78]' },
    { cName: 'setv1 setv1df079 setv1n79', code: '[setv1:79]' },
    { cName: 'setv1 setv1df080 setv1n80', code: '[setv1:80]' },
    { cName: 'setv1 setv1df081 setv1n81', code: '[setv1:81]' },
    { cName: 'setv1 setv1df082 setv1n82', code: '[setv1:82]' },
    { cName: 'setv1 setv1df083 setv1n83', code: '[setv1:83]' },
    { cName: 'setv1 setv1df084 setv1n84', code: '[setv1:84]' },
    { cName: 'setv1 setv1df085 setv1n85', code: '[setv1:85]' },
    { cName: 'setv1 setv1df086 setv1n86', code: '[setv1:86]' },
    { cName: 'setv1 setv1df087 setv1n87', code: '[setv1:87]' },
    { cName: 'setv1 setv1df088 setv1n88', code: '[setv1:88]' },
    { cName: 'setv1 setv1df089 setv1n89', code: '[setv1:89]' },
    { cName: 'setv1 setv1df090 setv1n90', code: '[setv1:90]' },
    { cName: 'setv1 setv1df091 setv1n91', code: '[setv1:91]' },
    { cName: 'setv1 setv1df092 setv1n92', code: '[setv1:92]' },
    { cName: 'setv1 setv1df093 setv1n93', code: '[setv1:93]' },
    { cName: 'setv1 setv1df094 setv1n94', code: '[setv1:94]' },
    { cName: 'setv1 setv1df095 setv1n95', code: '[setv1:95]' },
    { cName: 'setv1 setv1df096 setv1n96', code: '[setv1:96]' },
    { cName: 'setv1 setv1df097 setv1n97', code: '[setv1:97]' },
    { cName: 'setv1 setv1df098 setv1n98', code: '[setv1:98]' },
    { cName: 'setv1 setv1df099 setv1n99', code: '[setv1:99]' },
    { cName: 'setv1 setv1df0100 setv1n100', code: '[setv1:100]' },
    { cName: 'setv1 setv1df0101 setv1n101', code: '[setv1:101]' },
    { cName: 'setv1 setv1df0102 setv1n102', code: '[setv1:102]' },
    { cName: 'setv1 setv1df0103 setv1n103', code: '[setv1:103]' },
    { cName: 'setv1 setv1df0104 setv1n104', code: '[setv1:104]' },
    { cName: 'setv1 setv1df0105 setv1n105', code: '[setv1:105]' },
    { cName: 'setv1 setv1df0106 setv1n106', code: '[setv1:106]' },
    { cName: 'setv1 setv1df0107 setv1n107', code: '[setv1:107]' },
    { cName: 'setv1 setv1df0108 setv1n108', code: '[setv1:108]' },
    { cName: 'setv1 setv1df0109 setv1n109', code: '[setv1:109]' },
    { cName: 'setv1 setv1df0110 setv1n110', code: '[setv1:110]' },
    { cName: 'setv1 setv1df0111 setv1n111', code: '[setv1:111]' },
    { cName: 'setv1 setv1df0112 setv1n112', code: '[setv1:112]' },
    { cName: 'setv1 setv1df0113 setv1n113', code: '[setv1:113]' },
    { cName: 'setv1 setv1df0114 setv1n114', code: '[setv1:114]' },
    { cName: 'setv1 setv1df0115 setv1n115', code: '[setv1:115]' },
    { cName: 'setv1 setv1df0116 setv1n116', code: '[setv1:116]' },
    { cName: 'setv1 setv1df0117 setv1n117', code: '[setv1:117]' },
    { cName: 'setv1 setv1df0118 setv1n118', code: '[setv1:118]' },
    { cName: 'setv1 setv1df0119 setv1n119', code: '[setv1:119]' },
    { cName: 'setv1 setv1df0120 setv1n120', code: '[setv1:120]' },
    { cName: 'setv1 setv1df0121 setv1n121', code: '[setv1:121]' },
    { cName: 'setv1 setv1df0122 setv1n122', code: '[setv1:122]' },
    { cName: 'setv1 setv1df0123 setv1n123', code: '[setv1:123]' },
    { cName: 'setv1 setv1df0124 setv1n124', code: '[setv1:124]' },
    { cName: 'setv1 setv1df0125 setv1n125', code: '[setv1:125]' },
    { cName: 'setv1 setv1df0126 setv1n126', code: '[setv1:126]' },
    { cName: 'setv1 setv1df0127 setv1n127', code: '[setv1:127]' },
    { cName: 'setv1 setv1df0128 setv1n128', code: '[setv1:128]' },
    { cName: 'setv1 setv1df0129 setv1n129', code: '[setv1:129]' },
    { cName: 'setv1 setv1df0130 setv1n130', code: '[setv1:130]' },
    { cName: 'setv1 setv1df0131 setv1n131', code: '[setv1:131]' },
    { cName: 'setv1 setv1df0132 setv1n132', code: '[setv1:132]' },
    { cName: 'setv1 setv1df0133 setv1n133', code: '[setv1:133]' },
    { cName: 'setv1 setv1df0134 setv1n134', code: '[setv1:134]' },
    { cName: 'setv1 setv1df0135 setv1n135', code: '[setv1:135]' },
    { cName: 'setv1 setv1df0136 setv1n136', code: '[setv1:136]' },
    { cName: 'setv1 setv1df0137 setv1n137', code: '[setv1:137]' },
    { cName: 'setv1 setv1df0138 setv1n138', code: '[setv1:138]' },
    { cName: 'setv1 setv1df0139 setv1n139', code: '[setv1:139]' },
    { cName: 'setv1 setv1df0140 setv1n140', code: '[setv1:140]' },
    { cName: 'setv1 setv1df0141 setv1n141', code: '[setv1:141]' },
    { cName: 'setv1 setv1df0142 setv1n142', code: '[setv1:142]' },
    { cName: 'setv1 setv1df0143 setv1n143', code: '[setv1:143]' },
    { cName: 'setv1 setv1df0144 setv1n144', code: '[setv1:144]' },
    { cName: 'setv1 setv1df0145 setv1n145', code: '[setv1:145]' },
    { cName: 'setv1 setv1df0146 setv1n146', code: '[setv1:146]' },
    { cName: 'setv1 setv1df0147 setv1n147', code: '[setv1:147]' },
    { cName: 'setv1 setv1df0148 setv1n148', code: '[setv1:148]' },
    { cName: 'setv1 setv1df0149 setv1n149', code: '[setv1:149]' },
    { cName: 'setv1 setv1df0150 setv1n150', code: '[setv1:150]' },
    { cName: 'setv1 setv1df0151 setv1n151', code: '[setv1:151]' },
    { cName: 'setv1 setv1df0152 setv1n152', code: '[setv1:152]' },
    { cName: 'setv1 setv1df0153 setv1n153', code: '[setv1:153]' },
    { cName: 'setv1 setv1df0154 setv1n154', code: '[setv1:154]' },
    { cName: 'setv1 setv1df0155 setv1n155', code: '[setv1:155]' },
    { cName: 'setv1 setv1df0156 setv1n156', code: '[setv1:156]' },
    { cName: 'setv1 setv1df0157 setv1n157', code: '[setv1:157]' },
    { cName: 'setv1 setv1df0158 setv1n158', code: '[setv1:158]' },
    { cName: 'setv1 setv1df0159 setv1n159', code: '[setv1:159]' },
    { cName: 'setv1 setv1df0160 setv1n160', code: '[setv1:160]' },
    { cName: 'setv1 setv1df0161 setv1n161', code: '[setv1:161]' },
    { cName: 'setv1 setv1df0162 setv1n162', code: '[setv1:162]' },
    { cName: 'setv1 setv1df0163 setv1n163', code: '[setv1:163]' },
    { cName: 'setv1 setv1df0164 setv1n164', code: '[setv1:164]' },
    { cName: 'setv1 setv1df0165 setv1n165', code: '[setv1:165]' },
    { cName: 'setv1 setv1df0166 setv1n166', code: '[setv1:166]' },
    { cName: 'setv1 setv1df0167 setv1n167', code: '[setv1:167]' },
    { cName: 'setv1 setv1df0168 setv1n168', code: '[setv1:168]' },
    { cName: 'setv1 setv1df0169 setv1n169', code: '[setv1:169]' },
    { cName: 'setv1 setv1df0170 setv1n170', code: '[setv1:170]' },
    { cName: 'setv1 setv1df0171 setv1n171', code: '[setv1:171]' },
    { cName: 'setv1 setv1df0172 setv1n172', code: '[setv1:172]' },
    { cName: 'setv1 setv1df0173 setv1n173', code: '[setv1:173]' },
    { cName: 'setv1 setv1df0174 setv1n174', code: '[setv1:174]' },
    { cName: 'setv1 setv1df0175 setv1n175', code: '[setv1:175]' },
    { cName: 'setv1 setv1df0176 setv1n176', code: '[setv1:176]' },
    { cName: 'setv1 setv1df0177 setv1n177', code: '[setv1:177]' },
    { cName: 'setv1 setv1df0178 setv1n178', code: '[setv1:178]' },
    { cName: 'setv1 setv1df0179 setv1n179', code: '[setv1:179]' },
    { cName: 'setv1 setv1df0180 setv1n180', code: '[setv1:180]' },
    { cName: 'setv1 setv1df0181 setv1n181', code: '[setv1:181]' },
    { cName: 'setv1 setv1df0182 setv1n182', code: '[setv1:182]' },
    { cName: 'setv1 setv1df0183 setv1n183', code: '[setv1:183]' },
    { cName: 'setv1 setv1df0184 setv1n184', code: '[setv1:184]' },
    { cName: 'setv1 setv1df0185 setv1n185', code: '[setv1:185]' },
    { cName: 'setv1 setv1df0186 setv1n186', code: '[setv1:186]' },
    { cName: 'setv1 setv1df0187 setv1n187', code: '[setv1:187]' },
    { cName: 'setv1 setv1df0188 setv1n188', code: '[setv1:188]' },
    { cName: 'setv1 setv1df0189 setv1n189', code: '[setv1:189]' },
    { cName: 'setv1 setv1df0190 setv1n190', code: '[setv1:190]' },
    { cName: 'setv1 setv1df0191 setv1n191', code: '[setv1:191]' },
    { cName: 'setv1 setv1df0192 setv1n192', code: '[setv1:192]' },
    { cName: 'setv1 setv1df0193 setv1n193', code: '[setv1:193]' },
    { cName: 'setv1 setv1df0194 setv1n194', code: '[setv1:194]' },
    { cName: 'setv1 setv1df0195 setv1n195', code: '[setv1:195]' },
    { cName: 'setv1 setv1df0196 setv1n196', code: '[setv1:196]' },
    { cName: 'setv1 setv1df0197 setv1n197', code: '[setv1:197]' },
    { cName: 'setv1 setv1df0198 setv1n198', code: '[setv1:198]' },
    { cName: 'setv1 setv1df0199 setv1n199', code: '[setv1:199]' },
    { cName: 'setv1 setv1df0200 setv1n200', code: '[setv1:200]' },
    { cName: 'setv1 setv1df0202 setv1n202', code: '[setv1:202]' },
    { cName: 'setv1 setv1df0203 setv1n203', code: '[setv1:203]' },
    { cName: 'setv1 setv1df0204 setv1n204', code: '[setv1:204]' },
    { cName: 'setv1 setv1df0205 setv1n205', code: '[setv1:205]' },
    { cName: 'setv1 setv1df0206 setv1n206', code: '[setv1:206]' },
    { cName: 'setv1 setv1df0207 setv1n207', code: '[setv1:207]' },
    { cName: 'setv1 setv1df0208 setv1n208', code: '[setv1:208]' },
    { cName: 'setv1 setv1df0209 setv1n209', code: '[setv1:209]' },
    { cName: 'setv1 setv1df0210 setv1n210', code: '[setv1:210]' },
    { cName: 'setv1 setv1df0211 setv1n211', code: '[setv1:211]' },
    { cName: 'setv1 setv1df0212 setv1n212', code: '[setv1:212]' },
    { cName: 'setv1 setv1df0213 setv1n213', code: '[setv1:213]' },
    { cName: 'setv1 setv1df0214 setv1n214', code: '[setv1:214]' }
    ]);

MixiEditor2.PicPanel.pic = $A([
{
    cName: 'set2 set2df14 set2n1',
    code: '[set2:1]'
},
{
    cName: 'set2 set2df24 set2n2',
    code: '[set2:2]'
},
{
    cName: 'set2 set2df14 set2n3',
    code: '[set2:3]'
},
{
    cName: 'set2 set2df24 set2n4',
    code: '[set2:4]'
},
{
    cName: 'set2 set2df14 set2n5',
    code: '[set2:5]'
},
{
    cName: 'set2 set2df14 set2n6',
    code: '[set2:6]'
},
{
    cName: 'set2 set2df14 set2n7',
    code: '[set2:7]'
},
{
    cName: 'set2 set2df24 set2n8',
    code: '[set2:8]'
},
{
    cName: 'set2 set2df14 set2n9',
    code: '[set2:9]'
},
{
    cName: 'set2 set2df14 set2n10',
    code: '[set2:10]'
},
{
    cName: 'set2 set2df14 set2n11',
    code: '[set2:11]'
},
{
    cName: 'set2 set2df24 set2n12',
    code: '[set2:12]'
},
{
    cName: 'set2 set2df14 set2n13',
    code: '[set2:13]'
},
// { cName: 'set2 set2df54 set2n14', code: '[set2:14]' },
// { cName: 'set2 set2df14 set2n15', code: '[set2:15]' },
{
    cName: 'set2 set2df14 set2n16',
    code: '[set2:16]'
},
{
    cName: 'set2 set2df54 set2n17',
    code: '[set2:17]'
},
{
    cName: 'set2 set2df14 set2n18',
    code: '[set2:18]'
},
{
    cName: 'set2 set2df14 set2n19',
    code: '[set2:19]'
},
{
    cName: 'set2 set2df14 set2n20',
    code: '[set2:20]'
},
{
    cName: 'set2 set2df14 set2n21',
    code: '[set2:21]'
},
{
    cName: 'set2 set2df14 set2n22',
    code: '[set2:22]'
},
{
    cName: 'set2 set2df14 set2n23',
    code: '[set2:23]'
},
{
    cName: 'set2 set2df14 set2n24',
    code: '[set2:24]'
},
{
    cName: 'set2 set2df14 set2n25',
    code: '[set2:25]'
},
{
    cName: 'set2 set2df14 set2n26',
    code: '[set2:26]'
},
{
    cName: 'set2 set2df14 set2n27',
    code: '[set2:27]'
},
{
    cName: 'set2 set2df14 set2n28',
    code: '[set2:28]'
},
// { cName: 'set2 set2df14 set2n29', code: '[set2:29]' },
// { cName: 'set2 set2df14 set2n30', code: '[set2:30]' },
{
    cName: 'set1 set1df52 set1n50',
    code: '[set1:50]'
},
{
    cName: 'set1 set1df52 set1n59',
    code: '[set1:59]'
},
{
    cName: 'set1 set1df52 set1n58',
    code: '[set1:58]'
},
{
    cName: 'set1 set1df52 set1n61',
    code: '[set1:61]'
},
{
    cName: 'set1 set1df52 set1n205',
    code: '[set1:205]'
},
{
    cName: 'set1 set1df52 set1n209',
    code: '[set1:209]'
},
{
    cName: 'set1 set1df52 set1n241',
    code: '[set1:241]'
},
{
    cName: 'set1 set1df52 set1n56',
    code: '[set1:56]'
},
{
    cName: 'set1 set1df52 set1n55',
    code: '[set1:55]'
},
{
    cName: 'set1 set1df52 set1n60',
    code: '[set1:60]'
},
{
    cName: 'set1 set1df52 set1n206',
    code: '[set1:206]'
},
{
    cName: 'set1 set1df52 set1n57',
    code: '[set1:57]'
},
{
    cName: 'set1 set1df52 set1n52',
    code: '[set1:52]'
},
{
    cName: 'set1 set1df52 set1n204',
    code: '[set1:204]'
},
{
    cName: 'set1 set1df52 set1n53',
    code: '[set1:53]'
},
{
    cName: 'set1 set1df52 set1n54',
    code: '[set1:54]'
},
{
    cName: 'set1 set1df52 set1n51',
    code: '[set1:51]'
},
{
    cName: 'set1 set1df52 set1n207',
    code: '[set1:207]'
},
{
    cName: 'set1 set1df52 set1n242',
    code: '[set1:242]'
},
{
    cName: 'set1 set1df103 set1n246',
    code: '[set1:246]'
},
{
    cName: 'set1 set1df52 set1n208',
    code: '[set1:208]'
},
{
    cName: 'set1 set1df52 set1n210',
    code: '[set1:210]'
},
{
    cName: 'set1 set1df1 set1n46',
    code: '[set1:46]'
},
{
    cName: 'set1 set1df52 set1n47',
    code: '[set1:47]'
},
{
    cName: 'set1 set1df52 set1n49',
    code: '[set1:49]'
},
{
    cName: 'set1 set1df53 set1n48',
    code: '[set1:48]'
},
{
    cName: 'set1 set1df1 set1n65',
    code: '[set1:65]'
},
{
    cName: 'set1 set1df52 set1n68',
    code: '[set1:68]'
},
{
    cName: 'set1 set1df1 set1n76',
    code: '[set1:76]'
},
{
    cName: 'set1 set1df1 set1n75',
    code: '[set1:75]'
},
{
    cName: 'set1 set1df1 set1n74',
    code: '[set1:74]'
},
{
    cName: 'set1 set1df52 set1n78',
    code: '[set1:78]'
},
{
    cName: 'set1 set1df1 set1n79',
    code: '[set1:79]'
},
{
    cName: 'set1 set1df93 set1n73',
    code: '[set1:73]'
},
{
    cName: 'set1 set1df54 set1n66',
    code: '[set1:66]'
},
{
    cName: 'set1 set1df53 set1n67',
    code: '[set1:67]'
},
{
    cName: 'set1 set1df1 set1n80',
    code: '[set1:80]'
},
{
    cName: 'set1 set1df1 set1n77',
    code: '[set1:77]'
},
{
    cName: 'set1 set1df1 set1n72',
    code: '[set1:72]'
},
{
    cName: 'set1 set1df1 set1n71',
    code: '[set1:71]'
},
{
    cName: 'set1 set1df1 set1n69',
    code: '[set1:69]'
},
{
    cName: 'set1 set1df1 set1n40',
    code: '[set1:40]'
},
{
    cName: 'set1 set1df1 set1n87',
    code: '[set1:87]'
},
{
    cName: 'set1 set1df1 set1n41',
    code: '[set1:41]'
},
{
    cName: 'set1 set1df1 set1n42',
    code: '[set1:42]'
},
{
    cName: 'set1 set1df1 set1n137',
    code: '[set1:137]'
},
{
    cName: 'set1 set1df1 set1n138',
    code: '[set1:138]'
},
{
    cName: 'set1 set1df1 set1n141',
    code: '[set1:141]'
},
{
    cName: 'set1 set1df1 set1n62',
    code: '[set1:62]'
},
{
    cName: 'set1 set1df1 set1n63',
    code: '[set1:63]'
},
{
    cName: 'set1 set1df1 set1n43',
    code: '[set1:43]'
},
{
    cName: 'set1 set1df1 set1n44',
    code: '[set1:44]'
},
{
    cName: 'set1 set1df102 set1n103',
    code: '[set1:103]'
},
{
    cName: 'set1 set1df103 set1n104',
    code: '[set1:104]'
},
{
    cName: 'set1 set1df102 set1n105',
    code: '[set1:105]'
},
{
    cName: 'set1 set1df52 set1n106',
    code: '[set1:106]'
},
{
    cName: 'set1 set1df52 set1n107',
    code: '[set1:107]'
},
{
    cName: 'set1 set1df52 set1n108',
    code: '[set1:108]'
},
{
    cName: 'set1 set1df104 set1n109',
    code: '[set1:109]'
},
{
    cName: 'set1 set1df52 set1n110',
    code: '[set1:110]'
},
{
    cName: 'set1 set1df103 set1n111',
    code: '[set1:111]'
},
{
    cName: 'set1 set1df52 set1n112',
    code: '[set1:112]'
},
{
    cName: 'set1 set1df34 set1n113',
    code: '[set1:113]'
},
{
    cName: 'set1 set1df102 set1n114',
    code: '[set1:114]'
},
{
    cName: 'set1 set1df1 set1n237',
    code: '[set1:237]'
},
{
    cName: 'set1 set1df52 set1n238',
    code: '[set1:238]'
},
{
    cName: 'set1 set1df52 set1n239',
    code: '[set1:239]'
},
{
    cName: 'set1 set1df55 set1n240',
    code: '[set1:240]'
},
{
    cName: 'set1 set1df52 set1n243',
    code: '[set1:243]'
},
{
    cName: 'set1 set1df53 set1n244',
    code: '[set1:244]'
},
{
    cName: 'set1 set1df1 set1n24',
    code: '[set1:24]'
},
{
    cName: 'set1 set1df1 set1n98',
    code: '[set1:98]'
},
{
    cName: 'set1 set1df1 set1n99',
    code: '[set1:99]'
},
{
    cName: 'set1 set1df1 set1n236',
    code: '[set1:236]'
},
{
    cName: 'set1 set1df1 set1n229',
    code: '[set1:229]'
},
{
    cName: 'set1 set1df1 set1n231',
    code: '[set1:231]'
},
{
    cName: 'set1 set1df1 set1n232',
    code: '[set1:232]'
},
{
    cName: 'set1 set1df1 set1n22',
    code: '[set1:22]'
},
{
    cName: 'set1 set1df1 set1n21',
    code: '[set1:21]'
},
{
    cName: 'set1 set1df52 set1n202',
    code: '[set1:202]'
},
{
    cName: 'set1 set1df1 set1n23',
    code: '[set1:23]'
},
{
    cName: 'set1 set1df1 set1n235',
    code: '[set1:235]'
},
{
    cName: 'set1 set1df1 set1n245',
    code: '[set1:245]'
},
{
    cName: 'set1 set1df52 set1n1',
    code: '[set1:1]'
},
{
    cName: 'set1 set1df52 set1n2',
    code: '[set1:2]'
},
{
    cName: 'set1 set1df54 set1n101',
    code: '[set1:101]'
},
{
    cName: 'set1 set1df1 set1n102',
    code: '[set1:102]'
},
{
    cName: 'set1 set1df52 set1n3',
    code: '[set1:3]'
},
{
    cName: 'set1 set1df53 set1n4',
    code: '[set1:4]'
},
{
    cName: 'set1 set1df52 set1n5',
    code: '[set1:5]'
},
{
    cName: 'set1 set1df1 set1n6',
    code: '[set1:6]'
},
{
    cName: 'set1 set1df1 set1n145',
    code: '[set1:145]'
},
{
    cName: 'set1 set1df1 set1n146',
    code: '[set1:146]'
},
{
    cName: 'set1 set1df1 set1n147',
    code: '[set1:147]'
},
{
    cName: 'set1 set1df1 set1n148',
    code: '[set1:148]'
},
{
    cName: 'set1 set1df1 set1n149',
    code: '[set1:149]'
},
{
    cName: 'set1 set1df1 set1n150',
    code: '[set1:150]'
},
{
    cName: 'set1 set1df1 set1n88',
    code: '[set1:88]'
},
{
    cName: 'set1 set1df1 set1n184',
    code: '[set1:184]'
},
{
    cName: 'set1 set1df106 set1n226',
    code: '[set1:226]'
},
{
    cName: 'set1 set1df55 set1n227',
    code: '[set1:227]'
},
{
    cName: 'set1 set1df1 set1n228',
    code: '[set1:228]'
},
{
    cName: 'set1 set1df1 set1n230',
    code: '[set1:230]'
},
{
    cName: 'set1 set1df1 set1n233',
    code: '[set1:233]'
},
{
    cName: 'set1 set1df63 set1n234',
    code: '[set1:234]'
},
{
    cName: 'set1 set1df1 set1n90',
    code: '[set1:90]'
},
{
    cName: 'set1 set1df1 set1n91',
    code: '[set1:91]'
},
{
    cName: 'set1 set1df1 set1n92',
    code: '[set1:92]'
},
{
    cName: 'set1 set1df1 set1n93',
    code: '[set1:93]'
},
{
    cName: 'set1 set1df1 set1n94',
    code: '[set1:94]'
},
{
    cName: 'set1 set1df1 set1n95',
    code: '[set1:95]'
},
{
    cName: 'set1 set1df1 set1n116',
    code: '[set1:116]'
},
{
    cName: 'set1 set1df1 set1n193',
    code: '[set1:193]'
},
{
    cName: 'set1 set1df1 set1n201',
    code: '[set1:201]'
},
{
    cName: 'set1 set1df34 set1n215',
    code: '[set1:215]'
},
{
    cName: 'set1 set1df1 set1n115',
    code: '[set1:115]'
},
{
    cName: 'set1 set1df1 set1n31',
    code: '[set1:31]'
},
{
    cName: 'set1 set1df1 set1n134',
    code: '[set1:134]'
},
{
    cName: 'set1 set1df1 set1n82',
    code: '[set1:82]'
},
{
    cName: 'set1 set1df1 set1n29',
    code: '[set1:29]'
},
{
    cName: 'set1 set1df1 set1n30',
    code: '[set1:30]'
},
{
    cName: 'set1 set1df1 set1n25',
    code: '[set1:25]'
},
{
    cName: 'set1 set1df1 set1n142',
    code: '[set1:142]'
},
{
    cName: 'set1 set1df1 set1n191',
    code: '[set1:191]'
},
{
    cName: 'set1 set1df1 set1n86',
    code: '[set1:86]'
},
{
    cName: 'set1 set1df1 set1n9',
    code: '[set1:9]'
},
{
    cName: 'set1 set1df1 set1n10',
    code: '[set1:10]'
},
{
    cName: 'set1 set1df1 set1n7',
    code: '[set1:7]'
},
{
    cName: 'set1 set1df1 set1n8',
    code: '[set1:8]'
},
{
    cName: 'set1 set1df1 set1n12',
    code: '[set1:12]'
},
{
    cName: 'set1 set1df1 set1n11',
    code: '[set1:11]'
},
{
    cName: 'set1 set1df1 set1n118',
    code: '[set1:118]'
},
{
    cName: 'set1 set1df1 set1n119',
    code: '[set1:119]'
},
{
    cName: 'set1 set1df1 set1n120',
    code: '[set1:120]'
},
{
    cName: 'set1 set1df1 set1n18',
    code: '[set1:18]'
},
{
    cName: 'set1 set1df1 set1n13',
    code: '[set1:13]'
},
{
    cName: 'set1 set1df1 set1n89',
    code: '[set1:89]'
},
{
    cName: 'set1 set1df1 set1n14',
    code: '[set1:14]'
},
{
    cName: 'set1 set1df1 set1n15',
    code: '[set1:15]'
},
{
    cName: 'set1 set1df1 set1n16',
    code: '[set1:16]'
},
{
    cName: 'set1 set1df1 set1n17',
    code: '[set1:17]'
},
{
    cName: 'set1 set1df1 set1n121',
    code: '[set1:121]'
},
{
    cName: 'set1 set1df1 set1n122',
    code: '[set1:122]'
},
{
    cName: 'set1 set1df1 set1n123',
    code: '[set1:123]'
},
{
    cName: 'set1 set1df1 set1n124',
    code: '[set1:124]'
},
{
    cName: 'set1 set1df1 set1n125',
    code: '[set1:125]'
},
{
    cName: 'set1 set1df1 set1n19',
    code: '[set1:19]'
},
{
    cName: 'set1 set1df1 set1n20',
    code: '[set1:20]'
},
{
    cName: 'set1 set1df1 set1n26',
    code: '[set1:26]'
},
{
    cName: 'set1 set1df1 set1n27',
    code: '[set1:27]'
},
{
    cName: 'set1 set1df1 set1n133',
    code: '[set1:133]'
},
{
    cName: 'set1 set1df1 set1n28',
    code: '[set1:28]'
},
{
    cName: 'set1 set1df1 set1n81',
    code: '[set1:81]'
},
{
    cName: 'set1 set1df1 set1n32',
    code: '[set1:32]'
},
{
    cName: 'set1 set1df53 set1n152',
    code: '[set1:152]'
},
{
    cName: 'set1 set1df1 set1n117',
    code: '[set1:117]'
},
{
    cName: 'set1 set1df52 set1n135',
    code: '[set1:135]'
},
{
    cName: 'set1 set1df54 set1n154',
    code: '[set1:154]'
},
{
    cName: 'set1 set1df1 set1n100',
    code: '[set1:100]'
},
{
    cName: 'set1 set1df53 set1n153',
    code: '[set1:153]'
},
{
    cName: 'set1 set1df1 set1n197',
    code: '[set1:197]'
},
{
    cName: 'set1 set1df1 set1n196',
    code: '[set1:196]'
},
{
    cName: 'set1 set1df1 set1n33',
    code: '[set1:33]'
},
{
    cName: 'set1 set1df1 set1n34',
    code: '[set1:34]'
},
{
    cName: 'set1 set1df1 set1n35',
    code: '[set1:35]'
},
{
    cName: 'set1 set1df1 set1n97',
    code: '[set1:97]'
},
{
    cName: 'set1 set1df1 set1n180',
    code: '[set1:180]'
},
{
    cName: 'set1 set1df1 set1n84',
    code: '[set1:84]'
},
{
    cName: 'set1 set1df1 set1n96',
    code: '[set1:96]'
},
{
    cName: 'set1 set1df1 set1n181',
    code: '[set1:181]'
},
{
    cName: 'set1 set1df1 set1n136',
    code: '[set1:136]'
},
{
    cName: 'set1 set1df1 set1n83',
    code: '[set1:83]'
},
{
    cName: 'set1 set1df1 set1n212',
    code: '[set1:212]'
},
{
    cName: 'set1 set1df1 set1n127',
    code: '[set1:127]'
},
{
    cName: 'set1 set1df1 set1n128',
    code: '[set1:128]'
},
{
    cName: 'set1 set1df1 set1n129',
    code: '[set1:129]'
},
{
    cName: 'set1 set1df1 set1n130',
    code: '[set1:130]'
},
{
    cName: 'set1 set1df1 set1n131',
    code: '[set1:131]'
},
{
    cName: 'set1 set1df1 set1n143',
    code: '[set1:143]'
},
{
    cName: 'set1 set1df1 set1n144',
    code: '[set1:144]'
},
{
    cName: 'set1 set1df1 set1n160',
    code: '[set1:160]'
},
{
    cName: 'set1 set1df1 set1n162',
    code: '[set1:162]'
},
{
    cName: 'set1 set1df1 set1n176',
    code: '[set1:176]'
},
{
    cName: 'set1 set1df1 set1n177',
    code: '[set1:177]'
},
{
    cName: 'set1 set1df1 set1n178',
    code: '[set1:178]'
},
{
    cName: 'set1 set1df62 set1n179',
    code: '[set1:179]'
},
{
    cName: 'set1 set1df1 set1n182',
    code: '[set1:182]'
},
{
    cName: 'set1 set1df1 set1n183',
    code: '[set1:183]'
},
{
    cName: 'set1 set1df1 set1n188',
    code: '[set1:188]'
},
{
    cName: 'set1 set1df1 set1n203',
    code: '[set1:203]'
},
{
    cName: 'set1 set1df1 set1n189',
    code: '[set1:189]'
},
{
    cName: 'set1 set1df1 set1n192',
    code: '[set1:192]'
},
{
    cName: 'set1 set1df1 set1n190',
    code: '[set1:190]'
},
{
    cName: 'set1 set1df72 set1n194',
    code: '[set1:194]'
},
{
    cName: 'set1 set1df1 set1n195',
    code: '[set1:195]'
},
{
    cName: 'set1 set1df1 set1n198',
    code: '[set1:198]'
},
{
    cName: 'set1 set1df1 set1n199',
    code: '[set1:199]'
},
{
    cName: 'set1 set1df1 set1n200',
    code: '[set1:200]'
},
{
    cName: 'set1 set1df1 set1n85',
    code: '[set1:85]'
},
{
    cName: 'set1 set1df1 set1n132',
    code: '[set1:132]'
},
{
    cName: 'set1 set1df1 set1n64',
    code: '[set1:64]'
},
{
    cName: 'set1 set1df1 set1n70',
    code: '[set1:70]'
},
{
    cName: 'set1 set1df1 set1n165',
    code: '[set1:165]'
},
{
    cName: 'set1 set1df1 set1n166',
    code: '[set1:166]'
},
{
    cName: 'set1 set1df1 set1n167',
    code: '[set1:167]'
},
{
    cName: 'set1 set1df1 set1n168',
    code: '[set1:168]'
},
{
    cName: 'set1 set1df1 set1n169',
    code: '[set1:169]'
},
{
    cName: 'set1 set1df1 set1n170',
    code: '[set1:170]'
},
{
    cName: 'set1 set1df1 set1n171',
    code: '[set1:171]'
},
{
    cName: 'set1 set1df1 set1n172',
    code: '[set1:172]'
},
{
    cName: 'set1 set1df1 set1n173',
    code: '[set1:173]'
},
{
    cName: 'set1 set1df1 set1n174',
    code: '[set1:174]'
},
{
    cName: 'set1 set1df1 set1n175',
    code: '[set1:175]'
},
{
    cName: 'set1 set1df1 set1n164',
    code: '[set1:164]'
},
{
    cName: 'set1 set1df1 set1n163',
    code: '[set1:163]'
},
{
    cName: 'set1 set1df1 set1n126',
    code: '[set1:126]'
},
{
    cName: 'set1 set1df1 set1n139',
    code: '[set1:139]'
},
{
    cName: 'set1 set1df1 set1n140',
    code: '[set1:140]'
},
{
    cName: 'set1 set1df1 set1n151',
    code: '[set1:151]'
},
{
    cName: 'set1 set1df1 set1n219',
    code: '[set1:219]'
},
{
    cName: 'set1 set1df1 set1n217',
    code: '[set1:217]'
},
{
    cName: 'set1 set1df1 set1n224',
    code: '[set1:224]'
},
{
    cName: 'set1 set1df1 set1n225',
    code: '[set1:225]'
},
{
    cName: 'set1 set1df1 set1n159',
    code: '[set1:159]'
},
{
    cName: 'set1 set1df1 set1n45',
    code: '[set1:45]'
},
{
    cName: 'set1 set1df1 set1n211',
    code: '[set1:211]'
},
{
    cName: 'set1 set1df1 set1n36',
    code: '[set1:36]'
},
{
    cName: 'set1 set1df1 set1n37',
    code: '[set1:37]'
},
{
    cName: 'set1 set1df1 set1n38',
    code: '[set1:38]'
},
{
    cName: 'set1 set1df1 set1n39',
    code: '[set1:39]'
},
{
    cName: 'set1 set1df1 set1n155',
    code: '[set1:155]'
},
{
    cName: 'set1 set1df1 set1n157',
    code: '[set1:157]'
},
{
    cName: 'set1 set1df1 set1n158',
    code: '[set1:158]'
},
{
    cName: 'set1 set1df1 set1n156',
    code: '[set1:156]'
},
{
    cName: 'set1 set1df1 set1n161',
    code: '[set1:161]'
},
{
    cName: 'set1 set1df1 set1n185',
    code: '[set1:185]'
},
{
    cName: 'set1 set1df1 set1n186',
    code: '[set1:186]'
},
{
    cName: 'set1 set1df1 set1n187',
    code: '[set1:187]'
},
{
    cName: 'set1 set1df1 set1n216',
    code: '[set1:216]'
},
{
    cName: 'set1 set1df1 set1n220',
    code: '[set1:220]'
},
{
    cName: 'set1 set1df1 set1n221',
    code: '[set1:221]'
},
{
    cName: 'set1 set1df1 set1n222',
    code: '[set1:222]'
},
{
    cName: 'set1 set1df1 set1n223',
    code: '[set1:223]'
},
{
    cName: 'set1 set1df1 set1n218',
    code: '[set1:218]'
},
{
    cName: 'set1 set1df1 set1n213',
    code: '[set1:213]'
},
{
    cName: 'set1 set1df1 set1n214',
    code: '[set1:214]'
}
]);



