<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<graphic-notation appVersion="0.7.9" version="0.7.9">
<properties>
<property name="multimer" short-description="multimer" type="int" value="0"/>
<property name="text" short-description="text" type="String" value=""/>
<property name="value" short-description="value" type="String" value=""/>
</properties>
<nodes>
<node icon="icon0" type="source-sink"/>
<node icon="icon1" type="tag"/>
<node icon="icon2" type="unspecified entity"/>
<node icon="icon3" type="simple chemical">
<propertyRef name="multimer" value="0"/>
</node>
<node icon="icon4" isCompartment="true" type="macromolecule">
<propertyRef name="multimer" value="0"/>
</node>
<node icon="icon5" isCompartment="true" type="complex"/>
<node icon="icon6" isCompartment="true" type="compartment"/>
<node icon="icon7" type="unit of information">
<propertyRef name="text" value=""/>
</node>
<node icon="icon8" type="variable">
<propertyRef name="value" value=""/>
</node>
<node icon="icon9" type="and"/>
<node icon="icon10" type="or"/>
<node icon="icon11" type="xor"/>
<node icon="icon12" type="not"/>
<node icon="icon13" type="transition"/>
<node icon="icon14" type="omitted process"/>
<node icon="icon15" type="uncertain process"/>
<node icon="icon16" type="association"/>
<node icon="icon17" type="dissociation"/>
</nodes>
<edges>
<edge icon="icon18" type="consumption"/>
<edge icon="icon19" type="production"/>
<edge icon="icon20" type="modulation"/>
<edge icon="icon21" type="stimulation"/>
<edge icon="icon22" type="catalysis"/>
<edge icon="icon23" type="inhibition"/>
</edges>
<reactions/>
<viewOptions/>
<viewBuilder prototype="biouml.model.DefaultDiagramViewBuilder">
<nodeView type="unspecified entity"><![CDATA[function f(container, node, options, g)
{ 
    var d, pen, brush;
    d = new Dimension(70,40);
    brush = new Brush(new Color(1.0, 1.0, 0.9));
    pen = options.getDefaultPen();
    var ellipse = new EllipseView(pen, brush, 0, 0, d.width, d.height);
    container.add(ellipse);
    var title = new TextView(node.getValue('title', ''), options.getNodeTitleFont(), g); 
    container.add(title, CompositeView.X_CC | CompositeView.Y_CC); 
    return false; 
}]]></nodeView>
<nodeView type="xor"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(30,30);
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var ellipse = new EllipseView(pen, brush, 0, 0, d.width, d.height);
    container.add(ellipse);
    var title = new TextView("XOR", options.getNodeTitleFont(), g); 
    container.add(title, CompositeView.X_CC | CompositeView.Y_CC); 
    return false; 
}]]></nodeView>
<nodeView type="complex"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = node.getValue("shapeSize", null);
    if(d.width == 0 && d.height == 0) 
    {
        d.width = 150; 
        d.height = 150;
    }
    brush = new Brush(new Color(0.9, 1.0, 1.0));
    pen = options.getDefaultPen();
    var x = new Array (20,d.width-20,d.width,d.width,d.width-20,20,0,0); 
    var y = new Array (0,0,20,d.height-20,d.height,d.height,d.height-20,20); 
    var polygon = new PolygonView(pen, brush, x, y);  
    container.add(polygon); 

    return false; 
}]]></nodeView>
<nodeView type="dissociation"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(15,15);
    d2 = new Dimension(9,9);
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var ellipse1 = new EllipseView(pen, brush, 0, 0, d.width, d.height);
    container.add(ellipse1);
    var ellipse2 = new EllipseView(pen, brush, 3, 3, d2.width, d2.height);
    container.add(ellipse2);
    return false; 
}]]></nodeView>
<nodeView type="modulation"><![CDATA[function f(container, edge, inPoint, outPoint, options, g)
{
    var pen, brush;
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var arrow = new ArrowView(pen, brush, inPoint.x, inPoint.y, outPoint.x, outPoint.y, null, ArrowView.createDiamondTip(pen, brush, 5, 10, 5));
    container.add(arrow);
    return false;
}]]></nodeView>
<nodeView type="unit of information"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(40,20);
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var ellipse = new BoxView(pen, brush, 0, 0, d.width, d.height);
    container.add(ellipse);
    var title = new TextView(node.getValue('text', ''), options.getNodeTitleFont(), g); 
    container.add(title, CompositeView.X_CC | CompositeView.Y_CC); 
    return false; 
}]]></nodeView>
<nodeView type="association"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(15,15);
    brush = new Brush(new Color(0.0, 0.0, 0.0));
    pen = options.getDefaultPen();
    var ellipse = new EllipseView(pen, brush, 0, 0, d.width, d.height);
    container.add(ellipse);
    return false; 
}]]></nodeView>
<nodeView type="or"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(30,30);
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var ellipse = new EllipseView(pen, brush, 0, 0, d.width, d.height);
    container.add(ellipse);
    var title = new TextView("OR", options.getNodeTitleFont(), g); 
    container.add(title, CompositeView.X_CC | CompositeView.Y_CC); 
    return false; 
}]]></nodeView>
<nodeView type="consumption"><![CDATA[function f(container, edge, inPoint, outPoint, options, g)
{
    var pen, brush;
    brush = new Brush(new Color(0.0, 0.0, 0.0));
    pen = options.getDefaultPen();
    var arrow = new ArrowView(pen, brush, inPoint.x, inPoint.y, outPoint.x, outPoint.y, 0, 0);
    container.add(arrow);
    return false;
}]]></nodeView>
<nodeView type="tag"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(70,40);
    brush = new Brush(new Color(0.9, 0.9, 1.0));
    pen = options.getDefaultPen();
    var x = new Array (0,d.width-25,d.width,d.width-25,0); 
    var y = new Array (0,0,d.height/2,d.height,d.height); 
    var polygon = new PolygonView(pen, brush, x, y);  
    container.add(polygon); 
    var title = new TextView(node.getValue('title', ''), options.getNodeTitleFont(), g); 
    container.add(title, CompositeView.X_CC | CompositeView.Y_CC); 
    return false; 
}]]></nodeView>
<nodeView type="inhibition"><![CDATA[function f(container, edge, inPoint, outPoint, options, g)
{
    var pen, brush;
    brush = new Brush(new Color(0.0, 0.0, 0.0));
    pen = options.getDefaultPen();
    var arrow = new ArrowView(pen, brush, inPoint.x, inPoint.y, outPoint.x, outPoint.y, null, ArrowView.createDiamondTip(pen, brush, 0,0, 8));
    container.add(arrow);
    return false;
}]]></nodeView>
<nodeView type="macromolecule"><![CDATA[function f(container, node, options, g) 
{
    var d, pen, brush;
    d = node.getValue("shapeSize", null);
    if(d.width == 0 && d.height == 0) 
    {
        d.width = 70; 
        d.height = 40;
    }
    brush = new Brush(new Color(0.9, 1.0, 0.9));
    pen = options.getDefaultPen();
    var multimer = node.getValue("multimer", 0);
    if(multimer>1)
    {
         var rect = new RoundRectangle2D.Float(5, 5, d.width, d.height, 20, 20);
         var box = new BoxView(pen, brush, rect); 
         container.add(box); 
    }
    var rect = new RoundRectangle2D.Float(0, 0, d.width, d.height, 20, 20);
    var box = new BoxView(pen, brush, rect); 
    container.add(box); 
    var title = new TextView(node.getValue('title', ''), options.getNodeTitleFont(), g); 
    container.add(title, CompositeView.X_CC | CompositeView.Y_CC); 
    if(multimer>1)
    {
         var mbox = new BoxView(pen, brush, 10, -10, 20, 20); 
         container.add(mbox); 
         var mcount = new TextView(node.getValue('multimer', '...'), options.getNodeTitleFont(), g); 
         var mPosition = new Point(15, 2); 
         container.add(mcount, CompositeView.X_LL | CompositeView.Y_TT, mPosition); 
    }
    return false; 
}]]></nodeView>
<nodeView type="transition"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(15,15);
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var box = new BoxView(pen, brush, 0, 0, d.width, d.height);
    container.add(box);
    return false; 
}]]></nodeView>
<nodeView type="uncertain process"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(15,15);
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var box = new BoxView(pen, brush, 0, 0, d.width, d.height);
    container.add(box);
    var title = new TextView("?", options.getNodeTitleFont(), g); 
    container.add(title, CompositeView.X_CC | CompositeView.Y_TT); 
    return false; 
}]]></nodeView>
<nodeView type="simple chemical"><![CDATA[function f(container, node, options, g)
{ 
    var d, pen, brush;
    d = new Dimension(50,50);
    brush = new Brush(new Color(1.0, 0.9, 1.0));
    pen = options.getDefaultPen();
    var multimer = node.getValue("multimer", 0);
    if(multimer>1)
    {
         var ellipse = new EllipseView(pen, brush, 5, 5, d.width, d.height);
         container.add(ellipse); 
    }
    var ellipse = new EllipseView(pen, brush, 0, 0, d.width, d.height);
    container.add(ellipse);
    var title = new TextView(node.getValue('title', ''), options.getNodeTitleFont(), g); 
    container.add(title, CompositeView.X_CC | CompositeView.Y_CC);
    if(multimer>1)
    {
         var mbox = new BoxView(pen, brush, d.width/2-10, -10, 20, 20); 
         container.add(mbox); 
         var mcount = new TextView(node.getValue('multimer', '...'), options.getNodeTitleFont(), g); 
         var mPosition = new Point(d.width/2-5, 2); 
         container.add(mcount, CompositeView.X_LL | CompositeView.Y_TT, mPosition); 
    } 
    return false; 
}]]></nodeView>
<nodeView type="omitted process"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(15,15);
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var box = new BoxView(pen, brush, 0, 0, d.width, d.height);
    container.add(box);
    var x = new Array (3,8); 
    var y = new Array (3,12); 
    var line1 = new PolygonView(pen, brush, x, y);  
    container.add(line1); 
    var x = new Array (8,13); 
    var y = new Array (3,12); 
    var line1 = new PolygonView(pen, brush, x, y);  
    container.add(line1); 
    return false; 
}]]></nodeView>
<nodeView type="production"><![CDATA[function f(container, edge, inPoint, outPoint, options, g)
{
    var pen, brush;
    brush = new Brush(new Color(0.0, 0.0, 0.0));
    pen = options.getDefaultPen();
    var arrow = new ArrowView(pen, brush, inPoint.x, inPoint.y, outPoint.x, outPoint.y, null, ArrowView.createTriangleTip(pen, brush, 15, 5));
    container.add(arrow);
    return false;
}]]></nodeView>
<nodeView type="and"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(30,30);
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var ellipse = new EllipseView(pen, brush, 0, 0, d.width, d.height);
    container.add(ellipse);
    var title = new TextView("AND", options.getNodeTitleFont(), g); 
    container.add(title, CompositeView.X_CC | CompositeView.Y_CC); 
    return false; 
}]]></nodeView>
<nodeView type="not"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(30,30);
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var ellipse = new EllipseView(pen, brush, 0, 0, d.width, d.height);
    container.add(ellipse);
    var title = new TextView("NOT", options.getNodeTitleFont(), g); 
    container.add(title, CompositeView.X_CC | CompositeView.Y_CC); 
    return false; 
}]]></nodeView>
<nodeView type="stimulation"><![CDATA[function f(container, edge, inPoint, outPoint, options, g)
{
    var pen, brush;
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var arrow = new ArrowView(pen, brush,inPoint.x, inPoint.y, outPoint.x, outPoint.y, null, ArrowView.createTriangleTip(pen, brush, 15, 5));
    container.add(arrow);
    return false;
}]]></nodeView>
<nodeView type="source-sink"><![CDATA[function f(container, node, options, g)
{ 
            var d, pen, brush;
            d = new Dimension(40,40);
            brush = new Brush(new Color(1.0, 0.9, 0.9));
            pen = options.getDefaultPen();
            var ellipse = new EllipseView(pen, brush, 0, 0, d.width, d.height);
            var x = new Array (3,d.width-3);
            var y = new Array (d.height+3,-3);
            var polygon = new PolygonView(pen, null, x, y); 
            container.add(ellipse);
            container.add(polygon);
            return false; 
}]]></nodeView>
<nodeView type="catalysis"><![CDATA[function f(container, edge, inPoint, outPoint, options, g)
{
    var pen, brush;
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var arrow = new ArrowView(pen, brush, inPoint.x, inPoint.y, outPoint.x, outPoint.y, null, ArrowView.createEllipseTip(pen, brush, 6));
    container.add(arrow);
    return false;
}]]></nodeView>
<nodeView type="variable"><![CDATA[function f(container, node, options, g)
{
    var d, pen, brush;
    d = new Dimension(40,20);
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var ellipse = new EllipseView(pen, brush, 0, 0, d.width, d.height);
    container.add(ellipse);
    var title = new TextView(node.getValue('name', '')+' '+node.getValue('value', ''), options.getNodeTitleFont(), g); 
    container.add(title, CompositeView.X_CC | CompositeView.Y_CC); 
    return false; 
}]]></nodeView>
<nodeView type="compartment"><![CDATA[function f(container, node, options, g) 
{
     var d, pen, brush;
    d = node.getValue("shapeSize", null);
    if(d.width == 0 && d.height == 0) 
    {
        d.width = 150; 
        d.height = 150;
    }
    brush = new Brush(new Color(1.0, 1.0, 1.0));
    pen = options.getDefaultPen();
    var rect = new RoundRectangle2D.Float(0, 0, d.width, d.height, 40, 15);
    var box = new BoxView(pen, brush, rect); 
    container.add(box); 
    var title = new TextView(node.getValue('title', ''), options.getNodeTitleFont(), g); 
    var textPosition = new Point((d.width-title.getBounds().width)-5, 2); 
    container.add(title, CompositeView.X_LL | CompositeView.Y_TT, textPosition); 

    return false; 
}]]></nodeView>
</viewBuilder>
<icons>
<icon name="icon18">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAM0lEQVR42mP4TyFgGDVgMBiwcePG/6tXr4ZjQnx0OYYvX778//z5MxiD2KTyR2NhWBgAANWe6o4yWum7AAAAAElFTkSuQmCC</icon>
<icon name="icon19">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAQklEQVR42mP4TyFgGIEGrF69mnIDkA0h2wCYIQwbN25EESTER5dj+PLly//Pnz+DMYhNiI9sAIg/MGEw0lMi1Q0AAAMr3yd1L+O0AAAAAElFTkSuQmCC</icon>
<icon name="icon20">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAQklEQVR42mP4TyFgGDWAPANWr15NvgEwzTCaYePGjWAODBPiIwOQHMOXL1/+f/78GYxBbEJ8ZBeA+PQPg9GERAMDAHRN6APDhsp4AAAAAElFTkSuQmCC</icon>
<icon name="icon21">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAARUlEQVR42mP4TyFgGIEGrF69mnIDkA0h2wUwmmHjxo1wU0GYEB/ZdpAcw5cvX/5//vwZjEFsQnxkF4D4AxcGIzklUt0AACqD4xd71Mu3AAAAAElFTkSuQmCC</icon>
<icon name="icon22">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAQ0lEQVR42mP4TyFgGDWAPANWr14NxmQZANMIYzNs3LgRbiIIE+IjA5Acw5cvX/5//vwZjEFsQnwMF9A9DEYTEg0MAACpc+Ysuk0cHAAAAABJRU5ErkJggg==</icon>
<icon name="icon23">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAOklEQVR42mP4TyFgGOEGrF69ejAYsHHjRjADhgnx0eUYvnz58v/z589gDGIT4sPYIDxIwmA0KVNuAAD5euTEIi9ANgAAAABJRU5ErkJggg==</icon>
<icon name="icon0">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABVUlEQVR42rWTbYuCQBSF+/+f+xOVZKUSEkQGlYKiQR8Ke5PoTVPrF5zlXJhll5KIZQeGwXHuc8+5c6eGP47aJ4fzPEdZlu8BQRBgPB7DNE1Mp1Nst1vZdxwHj8ejGrBer9Hr9TCZTBBFkQT6vo/RaIR6vS57lRZ2ux3a7TbO5zNutxuu1ytOp5NIpqJms4l+v18NMAwDx+MRl8tFAjkJWS6X0DQN9/sd8/lcbDwBNpsNBoOBFEkFUwnXRqOB/X4v4DRN5fsJQImz2UwOKABtsB5hGCLLsu89y7IE9gvAohGiADzoeZ54/qmK+7ZtI0mSagv0Hcex+GYmZYWTSnRdf11EymUwg1qtlkDVTaiCrlYrUfASsFgs5OdwOBQ7yjcnrVEJk/A2Khup2+1KwzD74XCQQPplA3U6HYFV9gH9u64rmaiEMPrlyrZ++5joryiK/32Nr8YXxUi7n1KPFGwAAAAASUVORK5CYII=</icon>
<icon name="icon1">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAkElEQVR42t2TMQrEIBBFc//D2OkNgtjYmEasVAhqUqRUm79oG7OwuMWyA48pnHmKowsmY/kNgbUWzjl474e0teu6xoJaKwghMMZAa/0I57xvdBOUUsAYw3EcCCEMiTH2LISAlPIuoJT2on3f35JSglKqi3LOnwsa53li2zas6zp3gtb3nTuYnsL0O/iTvzATL13u0nBgrzJ1AAAAAElFTkSuQmCC</icon>
<icon name="icon2">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA/UlEQVR42tWSSWuEQBCF5///IZG5uFxGcRncFVfQcUNBBPH2hioYQxhiDoGQCAWlbX/1+r2+4IfP5e8Btm1DURSwLAuKouB6vULXdfi+j3Vdvwbs+84/yrIMx3EYEEURsizj3rZtaJoGSZIwjuM7gDbHcYy+77mGYUDXdWjblnsq+l6WJSuj/gCQPM/zmPx4PE6LoHVd88ADIIoi0jTlxe8AVDTddd0PAJlmGAamaWLJZ5vpKHmesy+fPAiCgE2qqurw4eXFqydAGIa43W6c1luMTdNAVVVWQ56Q86Zpcir3+x2CIPAgSuz0IlHey7IgSRKWOs8zv/+Tq/zrgCfkVdNskoL2ugAAAABJRU5ErkJggg==</icon>
<icon name="icon3">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABHElEQVR42q2T24qDUAxF+/+fI4qoVbxiCz5YBS+oiC9eW4oo9TFDAiKd0drSObAhHMxKzNk5wJfnsHYZxzEIggAsy5Iw9n1/H/B4PEBRFDBNE4qigLZtSRifTicQRRG6rtsGyLIMSZLA9XqFqqqgLEsSxniHIJ7n4X6//wVYlgWXy4UqzIm/1TQNpGkKkiQ9A5DIcRxV2Uqehd9omgZhGC4Az/PgfD6/rD6rrmtK1nV9AbiuSxBscQ+AwlmoqroAoiiiGbzbQRAEYBjGAhiGARiGeQtwu93otbIse34Fx3FIrwaJBbBbHOKqD47HI7W35QN8Qux0HMd1wDRNRMcJ53lOQ52daNs2ubTv+/1dwP9D/6M3PtqFf9vGT84PQa6/hqfsq/MAAAAASUVORK5CYII=</icon>
<icon name="icon4">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAoUlEQVR42s2TvQ6FIAyFff8ncyEEgvI3I6ITsLD1pjXG3MVrrgtNThg4/SgtDPAyhn4AIQRYloXWO52e1toFYIyBMQastY/knINxHA9ArRWklLBtG6zr+kj7vlNOzvkATNNEG1jeE6WUCFBK6QUwz/M7gBCCmhhj/NlA9GATMYcAOAqlFFXhvacR3Qk9WmvgnH8/pHOMeMKd0INX6PAv/Bsf77LMGemNaaUAAAAASUVORK5CYII=</icon>
<icon name="icon5">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAYklEQVR42u2TMQrAMAhFvf8ZDdFgksFD/CKhQ7emZqzwwEGegkpIBt2Ju2/xENRawcwopbwiakVkCVprMDPMObdQVfTeQdF9jLFNNA4JxShfBcEvOCFIrzF9SOlTPvJMmbgATO+7PPT9np0AAAAASUVORK5CYII=</icon>
<icon name="icon6">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAY0lEQVR42u2TywoAIQhF+/9vjLIMW9cP3OEGzbrHbhjhiIKelTpchmPqvQ9aa0vM2SFQVXjvkVKCiCzB2RgjQghwbCiptW4zBDlnEDPb5hd8R3B9SKWUo1PmMuvjZyLvN97EA/Bgu5NeE6n3AAAAAElFTkSuQmCC</icon>
<icon name="icon7">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAJUlEQVR42mP4TyFgGDWAygYwMDAQhfEaQNDGwW8ARWEwmpDIAwA5fK58zQ3M4QAAAABJRU5ErkJggg==</icon>
<icon name="icon8">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVR42mP4TyFgGDUAuwEMDAxYMUED8CnEJc+ALEm0s5HUUs8Air1AlUAcTYnkAQCDTrR20iDyOQAAAABJRU5ErkJggg==</icon>
<icon name="icon9">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAU0lEQVR42q1TWwoAIAjb/S9dv6FbzVQIxfYAM6xmgDYBeiwBBVR3cMkKgwqZYVElR5EkwOozp54CvrIUiC7U9SZgO6sZfA2x/YwjizSyyiOfqRobC5ZF5bXtHKsAAAAASUVORK5CYII=</icon>
<icon name="icon10">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAUklEQVR42mP4TyFgwCrIwIAVE2UALoW45BiI1YxLDQMpmrGpZSBVM7ohOA1AsQVLIOI1AC6JgybLAJJcgNM2Yl1AciBSHI1USUhUScpUyUykAgDtN2bE17x/8gAAAABJRU5ErkJggg==</icon>
<icon name="icon11">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAUElEQVR42q1TWw4AIAji/peu7wx8uzmbATM1nKGBJgHqKQEFVHfIkhUGFTLDokq2Io+Ajez8YSOCim0Bt4LME8IKWk0cj3FlkVZWeeUzVe0CymBU1iwEm0sAAAAASUVORK5CYII=</icon>
<icon name="icon12">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAUklEQVR42q2T2woAIAhD9/8/Xc/K5l2QwrYDmeEtA7QI0CwBlFCdoWpWGnTMTIuu2UMMwK9s75saAiKgBBj6BBBdIQWMm7h+xpNBOhnlk8/UjQ//rFHZ/TucYAAAAABJRU5ErkJggg==</icon>
<icon name="icon13">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAs0lEQVR42s2TsQnDMBREtaF28AQq3Bi8gybQAgJbuLE1hRprDtXGzYULGOJEP4akseCqe3p8fZDCn0fdS7BtG3LOSClVw46MKJjnGU3TwFpbDTsyomAYBsQYxXHZkTkJ9n3HEe89xnEUBezIvN5Rfd+jbdtntNZYlkUUsCNz8Lx7esI0TZcTkBF3QOBK8N5/CEIIooDdVwEX5JxDKaUadmREwbquMMag67pq2JG58V/45TwAnHK0fDfikh4AAAAASUVORK5CYII=</icon>
<icon name="icon14">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABC0lEQVR42t1TO4uDQBjMz7X0T6QQRRE7EbVQCxuxFPwDosFGEBEfJEV8FCIWlhO+BQ/ucnjFdVkYdtmdmf1mHxf8s10+0KCua6Rpitvt9g1ZlmFZlnODdV3B8zyCIEAYhvB9n/UESZJgGMa5wTzP0HUdeZ6jqioMw4A4jtlaWZawbfvdwHVdmKbJFkVRhCAI2LYNiqIwgqqqGMcRj8cDHMfBcRzGJ5D20nUdmqZB3/dIkgSyLDMhESl3URSMeL/fWYzn88n4BNK+RdA0jY2nafqqgmJFUcSM/jyDw4AaVUQ7khlV5HneuQFlp1uwLItlJBGNSXi9Xn8/xJ8TtBu9hSPngbZtse/7J/6FF7NsuXQ2zMTwAAAAAElFTkSuQmCC</icon>
<icon name="icon15">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAxUlEQVR42u1SuwqEQBDz/7G0VLERCwvxAdv4ASJiqY2ooFaWaimRCdzhsYXFtQYGhiST3R3WwJ8w3gA9YF1XmKYJz/MQBAF834fruuREewwYhgFxHGPfdw4XRYHzPBFFETUtIMsyip+yLAtKKSzLgrquYds2jUmSULt7ZdYYxxF9338rz3OaBWVZoqoq9mmaUrt7ZVZ7Qtd1vIGgaRocx8FeONEed9C2LRzHwTzPPGGaJvbCifYYsG0btx+G4U8JJ9r7lXVcy8LM+qD13nEAAAAASUVORK5CYII=</icon>
<icon name="icon16">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAiUlEQVR42mP4TyFgGDUAtwHnzp37n5ub+7+tre3/u3fvSDNg9+7d/5mZmf8zMDCAsba29v8nT55gN2Djxo3/V69eDccgvpGREVwzDPv7+//fsmULhlqGL1++/P/8+TMYg9gg4OzsjGGAg4MDWA5dPVFeALFBYiQF4o4dO/7r6emBMYg9mhJpaAAA0mmsSzJHRkoAAAAASUVORK5CYII=</icon>
<icon name="icon17">iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAtUlEQVR42u2SvQqEMBCEff/KBxCxUxTEQqMGFGzEQjCQKiFdCkHyAqnmSOAOhPNArnXh62Zm2Z8Af1bwBFwH7PuOdV0hpbwfwDlHVVVIkgR5nmMYhusApRSEEB8YY8iyDNu2YZom9H2Puq5BKT3pHM4bjOPoRW/iOPZ0Xec7WGuRpinCMDzpHM77dYSiKEAIgdYa8zxjWRa0bXt/B1EU+TGc2Rhz7wpu+2VZomkaHMfxvPKPegG8wdVAIkqO6gAAAABJRU5ErkJggg==</icon>
</icons>
<semanticController prototype="biouml.model.DefaultSemanticController">
<canAccept><![CDATA[function f(container, de)
{
    var deType = de.getValue('kernel', '').getType();
    if(deType == "unspecified entity" || deType == "xor" || deType == "or" || deType == "dissociation"  || deType == "association"
    || deType == "transition" || deType == "uncertain process"  || deType == "omitted process" || deType == "and" || deType == "not")
    {
        var type = container.getValue('kernel', '').getType();
        if(type == 'info-diagram' || type == 'compartment')
        {
            return true;
        }
        return false;
    }
    else if(deType == "complex" || deType == "macromolecule" || deType == "simple chemical" || deType == "compartment")
    {
        var type = container.getValue('kernel', '').getType();
        if(type == 'info-diagram' || type == 'compartment' || type == 'complex')
        {
            return true;
        }
        return false;
    }
    else if(deType == "modulation")
    {
        var input = de.getValue('input', '').getKernel().getType();
        var output = de.getValue('output', '').getKernel().getType();
        if((input == 'unspecified entity' || input == 'simple chemical' || input == 'macromolecule' || input == 'complex'
        || input == 'and' || input == 'or' || input == 'xor' || input == 'not')
        &&(output == 'transition' || output == 'omitted process' || output == 'uncertain process'))
        {
            return true;
        }
        return false;
    }
    else if(deType == "consumption")
    {
        var input = de.getValue('input', '').getKernel().getType();
        var output = de.getValue('output', '').getKernel().getType();
        if((input == 'source-sink' || input == 'unspecified entity' || input == 'simple chemical' || input == 'macromolecule' || input == 'complex' || input == 'compartment')
        &&(output == 'tag' || output == 'transition' || output == 'omitted process' || output == 'uncertain process' || output == 'association' || output == 'dissociation'
        || output == 'and' || output == 'or' || output == 'xor' || output == 'not'))
        {
            return true;
        }
        return false;
    }
    else if(deType == "inhibition")
    {
        var input = de.getValue('input', '').getKernel().getType();
        var output = de.getValue('output', '').getKernel().getType();
        if((input == 'unspecified entity' || input == 'simple chemical' || input == 'macromolecule' || input == 'complex'
        || input == 'and' || input == 'or' || input == 'xor' || input == 'not')
        &&(output == 'transition' || output == 'omitted process' || output == 'uncertain process'))
        {
            return true;
        }
        return false;
    }
    else if(deType == "production")
    {
        var input = de.getValue('input', '').getKernel().getType();
        var output = de.getValue('output', '').getKernel().getType();
        if((input == 'transition' || input == 'omitted process' || input == 'uncertain process' || input == 'association' || input == 'dissociation')
        &&(output == 'source-sink' || output == 'unspecified entity' || output == 'simple chemical' || output == 'macromolecule' || output == 'complex'))
        {
            return true;
        }
        return false;
    }
    else if(deType == "stimulation")
    {
        var input = de.getValue('input', '').getKernel().getType();
        var output = de.getValue('output', '').getKernel().getType();
        if((input == 'unspecified entity' || input == 'simple chemical' || input == 'macromolecule' || input == 'complex'
        || input == 'and' || input == 'or' || input == 'xor' || input == 'not')
        &&(output == 'transition' || output == 'omitted process' || output == 'uncertain process'))
        {
            return true;
        }
        return false;
    }
    else if(deType == "source-sink")
    {
        var type = container.getValue('kernel', '').getType();
        if(type == 'info-diagram')
        {
            return true;
        }
        return false;
    }
    else if(deType == "catalysis")
    {
        var input = de.getValue('input', '').getKernel().getType();
        var output = de.getValue('output', '').getKernel().getType();
        if((input == 'unspecified entity' || input == 'simple chemical' || input == 'macromolecule' || input == 'complex'
        || input == 'and' || input == 'or' || input == 'xor' || input == 'not')
        &&(output == 'transition' || output == 'omitted process' || output == 'uncertain process'))
        {
            return true;
        }
        return false;
    }
    return true;
}]]></canAccept>
<isResizable><![CDATA[function f(de)
{
    var type = de.getValue('kernel', '').getType();
    if(type == "variable")
    {
        return false;
    }
    return true;
}]]></isResizable>
<move><![CDATA[function f(location, node, parent)
{
    var deType = node.getValue('kernel', '').getType();
    if(deType == "unit of information" || deType == "variable")
    {
        var type = parent.getValue('kernel', '').getType();
        if(type == 'compartment' || type == 'complex' || type == 'macromolecule')
        {
           JSUtility.moveToEdge(location, node, parent);
        }
    }
}]]></move>
</semanticController>
<examples>
<example name="complex">
<diagram diagramType="biouml.model.xml.XmlDiagramType" notation="">
<diagramInfo/>
<layouterInfo>
<o n="layouterInfo" t="ru.biosoft.graph.ForceDirectedLayouter">
<v>
<wi n="initialPlacement" v="1"/>
<wi n="edgeLength" v="150"/>
<wf n="repulsion" v="1.0"/>
<wi n="repulsionDistance" v="10"/>
<wf n="gravity" v="0.06"/>
<wi n="orientation" v="0"/>
<wi n="distanceMethod" v="0"/>
<wf n="attraction" v="1.0"/>
<wf n="magneticIntencity" v="0.0"/>
<wi n="iterationNumber" v="100"/>
<wf n="minTemperature" v="0.0"/>
<wf n="maxTemperature" v="0.0"/>
<o n="dpl" t="ru.biosoft.graph.DiagonalPathLayouter">
<v>
<wi n="lineDistance" v="10"/>
<o n="selfLoopLayouter" t="ru.biosoft.graph.SelfLoopLayouter">
<v>
<wi n="loopLength" v="30"/>
</v>
</o>
</v>
</o>
<wb n="horisontalMovementAllowed" v="true"/>
<wb n="verticalMovementAllowed" v="true"/>
<o n="pathWeighter" t="ru.biosoft.graph.PathWeighter">
<v>
<wi n="bendPenalty" v="500"/>
<wi n="confluencePenalty" v="50000"/>
<wi n="lengthPenalty" v="1"/>
</v>
</o>
<o n="sl" t="ru.biosoft.graph.SubgraphLayouter">
<v>
<wi n="layerDeltaX" v="150"/>
<wi n="layerDeltaY" v="150"/>
</v>
</o>
</v>
</o>
</layouterInfo>
<compartmentInfo color="255,255,255" height="150" kernel="stub/complex" kernel_type="info-diagram" shape="0" width="150" x="0" y="0"/>
<nodes>
<compartment>
<compartmentInfo color="255,255,255" height="276" kernel="stub/dscsdacsdcsd" kernel_type="complex" shape="0" width="361" x="43" y="31"/>
<nodes>
<node height="50" kernel="stub/csacdsc" kernel_type="unit of information" width="50" x="94" y="297">
<property name="text" short-description="text" type="String" value="INFO"/>
</node>
<compartment>
<compartmentInfo color="255,255,255" height="206" kernel="stub/dcdscsdcd" kernel_type="complex" shape="0" width="180" x="171" y="54"/>
<nodes>
<compartment>
<compartmentInfo color="255,255,255" height="71" kernel="stub/label3" kernel_type="macromolecule" shape="0" width="67" x="252" y="84"/>
<nodes>
<node height="50" kernel="stub/ascascsac" kernel_type="unit of information" width="50" x="236" y="74">
<property name="text" short-description="text" type="String" value="INFO"/>
</node>
<node height="50" kernel="stub/var2" kernel_type="variable" width="50" x="282" y="74">
<property name="value" short-description="value" type="String" value=""/>
</node>
</nodes>
<edges/>
<property name="multimer" short-description="multimer" type="int" value="0"/>
</compartment>
<node height="50" kernel="stub/label4" kernel_type="simple chemical" width="50" x="276" y="189"/>
<node height="50" kernel="stub/varX" kernel_type="variable" width="50" x="222" y="250">
<property name="value" short-description="value" type="String" value=""/>
</node>
</nodes>
<edges/>
</compartment>
<compartment>
<compartmentInfo color="255,255,255" height="67" kernel="stub/label1" kernel_type="macromolecule" shape="0" width="65" x="83" y="136"/>
<nodes>
<node height="50" kernel="stub/cdcsdc" kernel_type="unit of information" width="50" x="64" y="126">
<property name="text" short-description="text" type="String" value="INFO"/>
</node>
<node height="50" kernel="stub/var1" kernel_type="variable" width="50" x="108" y="126">
<property name="value" short-description="value" type="String" value=""/>
</node>
</nodes>
<edges/>
<property name="multimer" short-description="multimer" type="int" value="0"/>
</compartment>
<node height="50" kernel="stub/varY" kernel_type="variable" width="50" x="242" y="297">
<property name="value" short-description="value" type="String" value=""/>
</node>
</nodes>
<edges/>
</compartment>
</nodes>
<edges/>
<filters>
<a n="filters" t="[Lbiouml.model.DiagramFilter;">
<v/>
</a>
</filters>
</diagram>
</example>
<example name="logic test">
<diagram diagramType="biouml.model.xml.XmlDiagramType" notation="">
<diagramInfo/>
<layouterInfo>
<o n="layouterInfo" t="ru.biosoft.graph.ForceDirectedLayouter">
<v>
<wi n="initialPlacement" v="1"/>
<wi n="edgeLength" v="150"/>
<wf n="repulsion" v="1.0"/>
<wi n="repulsionDistance" v="10"/>
<wf n="gravity" v="0.06"/>
<wi n="orientation" v="0"/>
<wi n="distanceMethod" v="0"/>
<wf n="attraction" v="1.0"/>
<wf n="magneticIntencity" v="0.0"/>
<wi n="iterationNumber" v="100"/>
<wf n="minTemperature" v="0.0"/>
<wf n="maxTemperature" v="0.0"/>
<o n="dpl" t="ru.biosoft.graph.DiagonalPathLayouter">
<v>
<wi n="lineDistance" v="10"/>
<o n="selfLoopLayouter" t="ru.biosoft.graph.SelfLoopLayouter">
<v>
<wi n="loopLength" v="30"/>
</v>
</o>
</v>
</o>
<wb n="horisontalMovementAllowed" v="true"/>
<wb n="verticalMovementAllowed" v="true"/>
<o n="pathWeighter" t="ru.biosoft.graph.PathWeighter">
<v>
<wi n="bendPenalty" v="500"/>
<wi n="confluencePenalty" v="50000"/>
<wi n="lengthPenalty" v="1"/>
</v>
</o>
<o n="sl" t="ru.biosoft.graph.SubgraphLayouter">
<v>
<wi n="layerDeltaX" v="150"/>
<wi n="layerDeltaY" v="150"/>
</v>
</o>
</v>
</o>
</layouterInfo>
<compartmentInfo color="255,255,255" height="150" kernel="stub/logic test" kernel_type="info-diagram" shape="0" width="150" x="0" y="0"/>
<nodes>
<node height="50" kernel="stub/fdfvdvs" kernel_type="not" width="50" x="441" y="56"/>
<node height="50" kernel="stub/fdvfv" kernel_type="xor" width="50" x="185" y="303"/>
<node height="50" kernel="stub/fdvfv(2)" kernel_type="not" width="50" x="339" y="177"/>
<node height="50" kernel="stub/fvbfdvf" kernel_type="or" width="50" x="113" y="143"/>
<node height="50" kernel="stub/hkjg" kernel_type="and" width="50" x="216" y="29"/>
<node height="50" kernel="stub/sdvds" kernel_type="or" width="50" x="488" y="280"/>
</nodes>
<edges/>
<filters>
<a n="filters" t="[Lbiouml.model.DiagramFilter;">
<v/>
</a>
</filters>
</diagram>
</example>
<example name="test">
<diagram diagramType="biouml.model.xml.XmlDiagramType" notation="">
<diagramInfo/>
<layouterInfo>
<o n="layouterInfo" t="ru.biosoft.graph.ForceDirectedLayouter">
<v>
<wi n="initialPlacement" v="1"/>
<wi n="edgeLength" v="150"/>
<wf n="repulsion" v="1.0"/>
<wi n="repulsionDistance" v="10"/>
<wf n="gravity" v="0.06"/>
<wi n="orientation" v="0"/>
<wi n="distanceMethod" v="0"/>
<wf n="attraction" v="1.0"/>
<wf n="magneticIntencity" v="0.0"/>
<wi n="iterationNumber" v="100"/>
<wf n="minTemperature" v="0.0"/>
<wf n="maxTemperature" v="0.0"/>
<o n="dpl" t="ru.biosoft.graph.DiagonalPathLayouter">
<v>
<wi n="lineDistance" v="10"/>
<o n="selfLoopLayouter" t="ru.biosoft.graph.SelfLoopLayouter">
<v>
<wi n="loopLength" v="30"/>
</v>
</o>
</v>
</o>
<wb n="horisontalMovementAllowed" v="true"/>
<wb n="verticalMovementAllowed" v="true"/>
<o n="pathWeighter" t="ru.biosoft.graph.PathWeighter">
<v>
<wi n="bendPenalty" v="500"/>
<wi n="confluencePenalty" v="50000"/>
<wi n="lengthPenalty" v="1"/>
</v>
</o>
<o n="sl" t="ru.biosoft.graph.SubgraphLayouter">
<v>
<wi n="layerDeltaX" v="150"/>
<wi n="layerDeltaY" v="150"/>
</v>
</o>
</v>
</o>
</layouterInfo>
<compartmentInfo color="255,255,255" height="150" kernel="stub/test" kernel_type="info-diagram" shape="0" width="150" x="0" y="0"/>
<nodes>
<compartment>
<compartmentInfo color="255,255,255" height="166" kernel="stub/cdscdc" kernel_type="complex" shape="0" width="221" x="67" y="204"/>
<nodes>
<node height="50" kernel="stub/csdcs" kernel_type="unit of information" width="50" x="99" y="194">
<property name="text" short-description="text" type="String" value="INFO"/>
</node>
<node height="50" kernel="stub/var1" kernel_type="variable" width="50" x="191" y="194">
<property name="value" short-description="value" type="String" value=""/>
</node>
</nodes>
<edges/>
</compartment>
<node height="50" kernel="stub/fdvfdvdf" kernel_type="tag" width="50" x="175" y="56"/>
<compartment>
<compartmentInfo color="255,255,255" height="146" kernel="stub/sdcascsac" kernel_type="compartment" shape="0" width="163" x="345" y="204"/>
<nodes>
<node height="50" kernel="stub/sdcsdacdsc" kernel_type="unit of information" width="50" x="354" y="194">
<property name="text" short-description="text" type="String" value="INFO"/>
</node>
</nodes>
<edges/>
</compartment>
<compartment>
<compartmentInfo color="255,255,255" height="89" kernel="stub/test1" kernel_type="macromolecule" shape="0" width="148" x="349" y="52"/>
<nodes>
<node height="50" kernel="stub/csdcds" kernel_type="unit of information" width="50" x="372" y="131">
<property name="text" short-description="text" type="String" value="t1"/>
</node>
<node height="50" kernel="stub/dascdcasdc" kernel_type="unit of information" width="50" x="477" y="61">
<property name="text" short-description="text" type="String" value="t2"/>
</node>
<node height="50" kernel="stub/dscsdacsd" kernel_type="unit of information" width="50" x="391" y="42">
<property name="text" short-description="text" type="String" value="t3"/>
</node>
<node height="50" kernel="stub/t1" kernel_type="variable" width="50" x="329" y="62">
<property name="value" short-description="value" type="String" value=""/>
</node>
<node height="50" kernel="stub/t2" kernel_type="variable" width="50" x="477" y="111">
<property name="value" short-description="value" type="String" value=""/>
</node>
</nodes>
<edges/>
<property name="multimer" short-description="multimer" type="int" value="0"/>
</compartment>
<node height="50" kernel="stub/test2" kernel_type="simple chemical" width="50" x="234" y="129">
<property name="multimer" short-description="multimer" type="int" value="1"/>
</node>
<node height="50" kernel="stub/vfdvdf" kernel_type="source-sink" width="50" x="89" y="61"/>
</nodes>
<edges/>
<filters>
<a n="filters" t="[Lbiouml.model.DiagramFilter;">
<v/>
</a>
</filters>
</diagram>
</example>
<example name="simple">
<diagram diagramType="biouml.model.xml.XmlDiagramType" notation="">
<diagramInfo/>
<layouterInfo>
<o n="layouterInfo" t="ru.biosoft.graph.ForceDirectedLayouter">
<v>
<wi n="initialPlacement" v="1"/>
<wi n="edgeLength" v="150"/>
<wf n="repulsion" v="1.0"/>
<wi n="repulsionDistance" v="10"/>
<wf n="gravity" v="0.06"/>
<wi n="orientation" v="0"/>
<wi n="distanceMethod" v="0"/>
<wf n="attraction" v="1.0"/>
<wf n="magneticIntencity" v="0.0"/>
<wi n="iterationNumber" v="100"/>
<wf n="minTemperature" v="0.0"/>
<wf n="maxTemperature" v="0.0"/>
<o n="dpl" t="ru.biosoft.graph.DiagonalPathLayouter">
<v>
<wi n="lineDistance" v="10"/>
<o n="selfLoopLayouter" t="ru.biosoft.graph.SelfLoopLayouter">
<v>
<wi n="loopLength" v="30"/>
</v>
</o>
</v>
</o>
<wb n="horisontalMovementAllowed" v="true"/>
<wb n="verticalMovementAllowed" v="true"/>
<o n="pathWeighter" t="ru.biosoft.graph.PathWeighter">
<v>
<wi n="bendPenalty" v="500"/>
<wi n="confluencePenalty" v="50000"/>
<wi n="lengthPenalty" v="1"/>
</v>
</o>
<o n="sl" t="ru.biosoft.graph.SubgraphLayouter">
<v>
<wi n="layerDeltaX" v="150"/>
<wi n="layerDeltaY" v="150"/>
</v>
</o>
</v>
</o>
</layouterInfo>
<compartmentInfo color="255,255,255" height="150" kernel="stub/simple" kernel_type="info-diagram" shape="0" width="150" x="0" y="0"/>
<nodes>
<node height="50" kernel="stub/dscsdcs" kernel_type="source-sink" width="50" x="57" y="50"/>
<node height="50" kernel="stub/label1" kernel_type="unspecified entity" width="50" x="167" y="54"/>
<node height="50" kernel="stub/label2" kernel_type="simple chemical" width="50" x="288" y="51"/>
<compartment>
<compartmentInfo color="255,255,255" height="67" kernel="stub/label3" kernel_type="macromolecule" shape="0" width="71" x="420" y="50"/>
<nodes>
<node height="50" kernel="stub/sacscas" kernel_type="unit of information" width="50" x="402" y="40">
<property name="text" short-description="text" type="String" value="INFO"/>
</node>
</nodes>
<edges/>
<property name="multimer" short-description="multimer" type="int" value="1"/>
</compartment>
<node height="50" kernel="stub/label4" kernel_type="simple chemical" width="50" x="140" y="177"/>
<node height="50" kernel="stub/label5" kernel_type="macromolecule" width="50" x="296" y="174"/>
<node height="50" kernel="stub/var1" kernel_type="variable" width="50" x="476" y="73">
<property name="value" short-description="value" type="String" value=""/>
</node>
</nodes>
<edges/>
<filters>
<a n="filters" t="[Lbiouml.model.DiagramFilter;">
<v/>
</a>
</filters>
</diagram>
</example>
<example name="transition">
<diagram diagramType="biouml.model.xml.XmlDiagramType" notation="">
<diagramInfo/>
<layouterInfo>
<o n="layouterInfo" t="ru.biosoft.graph.ForceDirectedLayouter">
<v>
<wi n="initialPlacement" v="1"/>
<wi n="edgeLength" v="150"/>
<wf n="repulsion" v="1.0"/>
<wi n="repulsionDistance" v="10"/>
<wf n="gravity" v="0.06"/>
<wi n="orientation" v="0"/>
<wi n="distanceMethod" v="0"/>
<wf n="attraction" v="1.0"/>
<wf n="magneticIntencity" v="0.0"/>
<wi n="iterationNumber" v="100"/>
<wf n="minTemperature" v="0.0"/>
<wf n="maxTemperature" v="0.0"/>
<o n="dpl" t="ru.biosoft.graph.DiagonalPathLayouter">
<v>
<wi n="lineDistance" v="10"/>
<o n="selfLoopLayouter" t="ru.biosoft.graph.SelfLoopLayouter">
<v>
<wi n="loopLength" v="30"/>
</v>
</o>
</v>
</o>
<wb n="horisontalMovementAllowed" v="true"/>
<wb n="verticalMovementAllowed" v="true"/>
<o n="pathWeighter" t="ru.biosoft.graph.PathWeighter">
<v>
<wi n="bendPenalty" v="500"/>
<wi n="confluencePenalty" v="50000"/>
<wi n="lengthPenalty" v="1"/>
</v>
</o>
<o n="sl" t="ru.biosoft.graph.SubgraphLayouter">
<v>
<wi n="layerDeltaX" v="150"/>
<wi n="layerDeltaY" v="150"/>
</v>
</o>
</v>
</o>
</layouterInfo>
<compartmentInfo color="255,255,255" height="150" kernel="stub/transition" kernel_type="info-diagram" shape="0" width="150" x="0" y="0"/>
<nodes>
<node height="50" kernel="stub/bfgb" kernel_type="simple chemical" width="50" x="177" y="147">
<property name="multimer" short-description="multimer" type="int" value="0"/>
</node>
<node height="50" kernel="stub/bgfbfg" kernel_type="simple chemical" width="50" x="423" y="272">
<property name="multimer" short-description="multimer" type="int" value="0"/>
</node>
<node height="50" kernel="stub/fgb" kernel_type="simple chemical" width="50" x="423" y="187">
<property name="multimer" short-description="multimer" type="int" value="0"/>
</node>
<node height="50" kernel="stub/fgbgf" kernel_type="simple chemical" width="50" x="184" y="240">
<property name="multimer" short-description="multimer" type="int" value="0"/>
</node>
<node height="50" kernel="stub/fgbgf(2)" kernel_type="simple chemical" width="50" x="420" y="103">
<property name="multimer" short-description="multimer" type="int" value="0"/>
</node>
<node height="50" kernel="stub/klnhkjb" kernel_type="transition" width="50" x="320" y="206"/>
</nodes>
<edges>
<edge in="bfgb" kernel="stub/consumption_0: $bfgb to $klnhkjb" kernel_type="consumption" out="klnhkjb">
<path>
<segment segmentType="moveTo" x0="227" y0="180"/>
<segment segmentType="lineTo" x0="320" y0="211"/>
</path>
</edge>
<edge in="fgbgf" kernel="stub/consumption_0: $fgbgf to $klnhkjb" kernel_type="consumption" out="klnhkjb">
<path>
<segment segmentType="moveTo" x0="234" y0="254"/>
<segment segmentType="lineTo" x0="320" y0="216"/>
</path>
</edge>
<edge in="klnhkjb" kernel="stub/production_0: $klnhkjb to $&quot;fgbgf(2)&quot;" kernel_type="production" out="fgbgf(2)">
<path>
<segment segmentType="moveTo" x0="335" y0="208"/>
<segment segmentType="lineTo" x0="420" y0="146"/>
</path>
</edge>
<edge in="klnhkjb" kernel="stub/production_0: $klnhkjb to $bgfbfg" kernel_type="production" out="bgfbfg">
<path>
<segment segmentType="moveTo" x0="335" y0="218"/>
<segment segmentType="lineTo" x0="423" y0="280"/>
</path>
</edge>
<edge in="klnhkjb" kernel="stub/production_0: $klnhkjb to $fgb" kernel_type="production" out="fgb">
<path>
<segment segmentType="moveTo" x0="335" y0="213"/>
<segment segmentType="lineTo" x0="423" y0="212"/>
</path>
</edge>
</edges>
<filters>
<a n="filters" t="[Lbiouml.model.DiagramFilter;">
<v/>
</a>
</filters>
</diagram>
</example>
<example name="transition2">
<diagram diagramType="biouml.model.xml.XmlDiagramType" notation="">
<diagramInfo/>
<layouterInfo>
<o n="layouterInfo" t="ru.biosoft.graph.ForceDirectedLayouter">
<v>
<wi n="initialPlacement" v="1"/>
<wi n="edgeLength" v="150"/>
<wf n="repulsion" v="1.0"/>
<wi n="repulsionDistance" v="10"/>
<wf n="gravity" v="0.06"/>
<wi n="orientation" v="0"/>
<wi n="distanceMethod" v="0"/>
<wf n="attraction" v="1.0"/>
<wf n="magneticIntencity" v="0.0"/>
<wi n="iterationNumber" v="100"/>
<wf n="minTemperature" v="0.0"/>
<wf n="maxTemperature" v="0.0"/>
<o n="dpl" t="ru.biosoft.graph.DiagonalPathLayouter">
<v>
<wi n="lineDistance" v="10"/>
<o n="selfLoopLayouter" t="ru.biosoft.graph.SelfLoopLayouter">
<v>
<wi n="loopLength" v="30"/>
</v>
</o>
</v>
</o>
<wb n="horisontalMovementAllowed" v="true"/>
<wb n="verticalMovementAllowed" v="true"/>
<o n="pathWeighter" t="ru.biosoft.graph.PathWeighter">
<v>
<wi n="bendPenalty" v="500"/>
<wi n="confluencePenalty" v="50000"/>
<wi n="lengthPenalty" v="1"/>
</v>
</o>
<o n="sl" t="ru.biosoft.graph.SubgraphLayouter">
<v>
<wi n="layerDeltaX" v="150"/>
<wi n="layerDeltaY" v="150"/>
</v>
</o>
</v>
</o>
</layouterInfo>
<compartmentInfo color="255,255,255" height="150" kernel="stub/transition2" kernel_type="info-diagram" shape="0" width="150" x="0" y="0"/>
<nodes>
<node height="50" kernel="stub/Agonist" kernel_type="simple chemical" width="50" x="255" y="86">
<property name="multimer" short-description="multimer" type="int" value="0"/>
</node>
<compartment>
<compartmentInfo color="255,255,255" height="52" kernel="stub/GPCR1" kernel_type="macromolecule" shape="0" width="67" x="111" y="186"/>
<nodes>
<node height="50" kernel="stub/inactive" kernel_type="variable" width="50" x="113" y="176">
<property name="value" short-description="value" type="String" value=""/>
</node>
</nodes>
<edges/>
<property name="multimer" short-description="multimer" type="int" value="0"/>
</compartment>
<compartment>
<compartmentInfo color="255,255,255" height="53" kernel="stub/GPCR2" kernel_type="macromolecule" shape="0" width="57" x="382" y="184"/>
<nodes>
<node height="50" kernel="stub/active" kernel_type="variable" width="50" x="383" y="174">
<property name="value" short-description="value" type="String" value=""/>
</node>
</nodes>
<edges/>
<property name="multimer" short-description="multimer" type="int" value="0"/>
</compartment>
<node height="50" kernel="stub/Inverse agonist" kernel_type="simple chemical" width="50" x="239" y="294">
<property name="multimer" short-description="multimer" type="int" value="0"/>
</node>
<node height="50" kernel="stub/hjbkjh" kernel_type="transition" width="50" x="274" y="216"/>
<node height="50" kernel="stub/kjbk" kernel_type="transition" width="50" x="273" y="186"/>
</nodes>
<edges>
<edge in="GPCR1" kernel="stub/consumption_0: $GPCR1 to $kjbk" kernel_type="consumption" out="kjbk">
<path>
<segment segmentType="moveTo" x0="178" y0="211"/>
<segment segmentType="lineTo" x0="273" y0="194"/>
</path>
</edge>
<edge in="GPCR2" kernel="stub/consumption_0: $GPCR2 to $hjbkjh" kernel_type="consumption" out="hjbkjh">
<path>
<segment segmentType="moveTo" x0="382" y0="216"/>
<segment segmentType="lineTo" x0="289" y0="223"/>
</path>
</edge>
<edge in="Inverse agonist" kernel="stub/modulation_0: $&quot;Inverse agonist&quot; to $hjbkjh" kernel_type="modulation" out="hjbkjh">
<path>
<segment segmentType="moveTo" x0="281" y0="294"/>
<segment segmentType="lineTo" x0="281" y0="231"/>
</path>
</edge>
<edge in="Agonist" kernel="stub/modulation_0: $Agonist to $kjbk" kernel_type="modulation" out="kjbk">
<path>
<segment segmentType="moveTo" x0="280" y0="136"/>
<segment segmentType="lineTo" x0="280" y0="186"/>
</path>
</edge>
<edge in="hjbkjh" kernel="stub/production_0: $hjbkjh to $GPCR1" kernel_type="production" out="GPCR1">
<path>
<segment segmentType="moveTo" x0="274" y0="223"/>
<segment segmentType="lineTo" x0="178" y0="218"/>
</path>
</edge>
<edge in="kjbk" kernel="stub/production_0: $kjbk to $GPCR2" kernel_type="production" out="GPCR2">
<path>
<segment segmentType="moveTo" x0="288" y0="194"/>
<segment segmentType="lineTo" x0="382" y0="211"/>
</path>
</edge>
</edges>
<filters>
<a n="filters" t="[Lbiouml.model.DiagramFilter;">
<v/>
</a>
</filters>
</diagram>
</example>
<example name="test4">
<diagram diagramType="biouml.model.xml.XmlDiagramType" notation="">
<diagramInfo/>
<layouterInfo>
<o n="layouterInfo" t="ru.biosoft.graph.ForceDirectedLayouter">
<v>
<wi n="initialPlacement" v="1"/>
<wi n="edgeLength" v="150"/>
<wf n="repulsion" v="1.0"/>
<wi n="repulsionDistance" v="10"/>
<wf n="gravity" v="0.06"/>
<wi n="orientation" v="0"/>
<wi n="distanceMethod" v="0"/>
<wf n="attraction" v="1.0"/>
<wf n="magneticIntencity" v="0.0"/>
<wi n="iterationNumber" v="100"/>
<wf n="minTemperature" v="0.0"/>
<wf n="maxTemperature" v="0.0"/>
<o n="dpl" t="ru.biosoft.graph.DiagonalPathLayouter">
<v>
<wi n="lineDistance" v="10"/>
<o n="selfLoopLayouter" t="ru.biosoft.graph.SelfLoopLayouter">
<v>
<wi n="loopLength" v="30"/>
</v>
</o>
</v>
</o>
<wb n="horisontalMovementAllowed" v="true"/>
<wb n="verticalMovementAllowed" v="true"/>
<o n="pathWeighter" t="ru.biosoft.graph.PathWeighter">
<v>
<wi n="bendPenalty" v="500"/>
<wi n="confluencePenalty" v="50000"/>
<wi n="lengthPenalty" v="1"/>
</v>
</o>
<o n="sl" t="ru.biosoft.graph.SubgraphLayouter">
<v>
<wi n="layerDeltaX" v="150"/>
<wi n="layerDeltaY" v="150"/>
</v>
</o>
</v>
</o>
</layouterInfo>
<compartmentInfo color="255,255,255" height="150" kernel="stub/test4" kernel_type="info-diagram" shape="0" width="150" x="0" y="0"/>
<nodes>
<compartment>
<compartmentInfo color="255,255,255" height="264" kernel="stub/dcsd" kernel_type="complex" shape="0" width="257" x="61" y="333"/>
<nodes/>
<edges/>
</compartment>
<compartment>
<compartmentInfo color="255,255,255" height="177" kernel="stub/dvsdvd" kernel_type="macromolecule" shape="0" width="261" x="341" y="367"/>
<nodes/>
<edges/>
<property name="multimer" short-description="multimer" type="int" value="0"/>
</compartment>
<compartment>
<compartmentInfo color="255,255,255" height="225" kernel="stub/lknkj" kernel_type="compartment" shape="0" width="319" x="472" y="125"/>
<nodes/>
<edges/>
</compartment>
</nodes>
<edges/>
<filters>
<a n="filters" t="[Lbiouml.model.DiagramFilter;">
<v/>
</a>
</filters>
</diagram>
</example>
<example name="test2">
<diagram diagramType="biouml.model.xml.XmlDiagramType" notation="">
<diagramInfo/>
<layouterInfo>
<o n="layouterInfo" t="ru.biosoft.graph.ForceDirectedLayouter">
<v>
<wi n="initialPlacement" v="1"/>
<wi n="edgeLength" v="150"/>
<wf n="repulsion" v="1.0"/>
<wi n="repulsionDistance" v="10"/>
<wf n="gravity" v="0.06"/>
<wi n="orientation" v="0"/>
<wi n="distanceMethod" v="0"/>
<wf n="attraction" v="1.0"/>
<wf n="magneticIntencity" v="0.0"/>
<wi n="iterationNumber" v="100"/>
<wf n="minTemperature" v="0.0"/>
<wf n="maxTemperature" v="0.0"/>
<o n="dpl" t="ru.biosoft.graph.DiagonalPathLayouter">
<v>
<wi n="lineDistance" v="10"/>
<o n="selfLoopLayouter" t="ru.biosoft.graph.SelfLoopLayouter">
<v>
<wi n="loopLength" v="30"/>
</v>
</o>
</v>
</o>
<wb n="horisontalMovementAllowed" v="true"/>
<wb n="verticalMovementAllowed" v="true"/>
<o n="pathWeighter" t="ru.biosoft.graph.PathWeighter">
<v>
<wi n="bendPenalty" v="500"/>
<wi n="confluencePenalty" v="50000"/>
<wi n="lengthPenalty" v="1"/>
</v>
</o>
<o n="sl" t="ru.biosoft.graph.SubgraphLayouter">
<v>
<wi n="layerDeltaX" v="150"/>
<wi n="layerDeltaY" v="150"/>
</v>
</o>
</v>
</o>
</layouterInfo>
<compartmentInfo color="255,255,255" height="150" kernel="stub/test2" kernel_type="info-diagram" shape="0" width="150" x="0" y="0"/>
<nodes>
<node height="50" kernel="stub/csdcd" kernel_type="unspecified entity" width="50" x="76" y="218"/>
<node height="50" kernel="stub/csdsds" kernel_type="uncertain process" width="50" x="241" y="232"/>
<node height="50" kernel="stub/dfvdfvf" kernel_type="unspecified entity" width="50" x="353" y="59"/>
<node height="50" kernel="stub/dfvfdv" kernel_type="unspecified entity" width="50" x="365" y="294"/>
<node height="50" kernel="stub/dvfd" kernel_type="simple chemical" width="50" x="226" y="385">
<property name="multimer" short-description="multimer" type="int" value="0"/>
</node>
<node height="50" kernel="stub/dvfvf" kernel_type="unspecified entity" width="50" x="81" y="450"/>
<node height="50" kernel="stub/fdvf" kernel_type="unspecified entity" width="50" x="363" y="446"/>
<node height="50" kernel="stub/fdvf(2)" kernel_type="unspecified entity" width="50" x="220" y="548"/>
<node height="50" kernel="stub/fdvfdv" kernel_type="unspecified entity" width="50" x="359" y="134"/>
<node height="50" kernel="stub/fdvfv" kernel_type="unspecified entity" width="50" x="79" y="298"/>
<node height="50" kernel="stub/ferfer" kernel_type="transition" width="50" x="229" y="71"/>
<node height="50" kernel="stub/klnljkb" kernel_type="dissociation" width="50" x="248" y="460"/>
<node height="50" kernel="stub/lkjnlkj" kernel_type="association" width="50" x="244" y="312"/>
<node height="50" kernel="stub/sdcdsc" kernel_type="unspecified entity" width="50" x="359" y="216"/>
<node height="50" kernel="stub/vdfvdf" kernel_type="unspecified entity" width="50" x="66" y="59"/>
<node height="50" kernel="stub/vfdvdfv" kernel_type="unspecified entity" width="50" x="71" y="137"/>
<node height="50" kernel="stub/vljkdf" kernel_type="omitted process" width="50" x="237" y="145"/>
</nodes>
<edges>
<edge in="fdvf(2)" kernel="stub/catalysis_0: $&quot;fdvf(2)&quot; to $klnljkb" kernel_type="catalysis" out="klnljkb">
<path>
<segment segmentType="moveTo" x0="255" y0="548"/>
<segment segmentType="lineTo" x0="255" y0="475"/>
</path>
</edge>
<edge in="csdcd" kernel="stub/consumption_0: $csdcd to $csdsds" kernel_type="consumption" out="csdsds">
<path>
<segment segmentType="moveTo" x0="146" y0="238"/>
<segment segmentType="lineTo" x0="241" y0="239"/>
</path>
</edge>
<edge in="dvfvf" kernel="stub/consumption_0: $dvfvf to $klnljkb" kernel_type="consumption" out="klnljkb">
<path>
<segment segmentType="moveTo" x0="151" y0="470"/>
<segment segmentType="lineTo" x0="248" y0="467"/>
</path>
</edge>
<edge in="fdvfv" kernel="stub/consumption_0: $fdvfv to $lkjnlkj" kernel_type="consumption" out="lkjnlkj">
<path>
<segment segmentType="moveTo" x0="149" y0="318"/>
<segment segmentType="lineTo" x0="244" y0="319"/>
</path>
</edge>
<edge in="vdfvdf" kernel="stub/consumption_0: $vdfvdf to $ferfer" kernel_type="consumption" out="ferfer">
<path>
<segment segmentType="moveTo" x0="136" y0="79"/>
<segment segmentType="lineTo" x0="229" y0="78"/>
</path>
</edge>
<edge in="vfdvdfv" kernel="stub/consumption_0: $vfdvdfv to $vljkdf" kernel_type="consumption" out="vljkdf">
<path>
<segment segmentType="moveTo" x0="141" y0="156"/>
<segment segmentType="lineTo" x0="237" y0="152"/>
</path>
</edge>
<edge in="dvfd" kernel="stub/modulation_0: $dvfd to $lkjnlkj" kernel_type="modulation" out="lkjnlkj">
<path>
<segment segmentType="moveTo" x0="251" y0="385"/>
<segment segmentType="lineTo" x0="251" y0="327"/>
</path>
</edge>
<edge in="csdsds" kernel="stub/production_0: $csdsds to $sdcdsc" kernel_type="production" out="sdcdsc">
<path>
<segment segmentType="moveTo" x0="256" y0="239"/>
<segment segmentType="lineTo" x0="359" y0="236"/>
</path>
</edge>
<edge in="ferfer" kernel="stub/production_0: $ferfer to $dfvdfvf" kernel_type="production" out="dfvdfvf">
<path>
<segment segmentType="moveTo" x0="244" y0="78"/>
<segment segmentType="lineTo" x0="353" y0="79"/>
</path>
</edge>
<edge in="klnljkb" kernel="stub/production_0: $klnljkb to $fdvf" kernel_type="production" out="fdvf">
<path>
<segment segmentType="moveTo" x0="263" y0="467"/>
<segment segmentType="lineTo" x0="363" y0="466"/>
</path>
</edge>
<edge in="lkjnlkj" kernel="stub/production_0: $lkjnlkj to $dfvfdv" kernel_type="production" out="dfvfdv">
<path>
<segment segmentType="moveTo" x0="259" y0="319"/>
<segment segmentType="lineTo" x0="365" y0="315"/>
</path>
</edge>
<edge in="vljkdf" kernel="stub/production_0: $vljkdf to $fdvfdv" kernel_type="production" out="fdvfdv">
<path>
<segment segmentType="moveTo" x0="252" y0="152"/>
<segment segmentType="lineTo" x0="359" y0="154"/>
</path>
</edge>
</edges>
<filters>
<a n="filters" t="[Lbiouml.model.DiagramFilter;">
<v/>
</a>
</filters>
</diagram>
</example>
<example name="test3">
<diagram diagramType="biouml.model.xml.XmlDiagramType" notation="">
<diagramInfo/>
<layouterInfo>
<o n="layouterInfo" t="ru.biosoft.graph.ForceDirectedLayouter">
<v>
<wi n="initialPlacement" v="1"/>
<wi n="edgeLength" v="150"/>
<wf n="repulsion" v="1.0"/>
<wi n="repulsionDistance" v="10"/>
<wf n="gravity" v="0.06"/>
<wi n="orientation" v="0"/>
<wi n="distanceMethod" v="0"/>
<wf n="attraction" v="1.0"/>
<wf n="magneticIntencity" v="0.0"/>
<wi n="iterationNumber" v="100"/>
<wf n="minTemperature" v="0.0"/>
<wf n="maxTemperature" v="0.0"/>
<o n="dpl" t="ru.biosoft.graph.DiagonalPathLayouter">
<v>
<wi n="lineDistance" v="10"/>
<o n="selfLoopLayouter" t="ru.biosoft.graph.SelfLoopLayouter">
<v>
<wi n="loopLength" v="30"/>
</v>
</o>
</v>
</o>
<wb n="horisontalMovementAllowed" v="true"/>
<wb n="verticalMovementAllowed" v="true"/>
<o n="pathWeighter" t="ru.biosoft.graph.PathWeighter">
<v>
<wi n="bendPenalty" v="500"/>
<wi n="confluencePenalty" v="50000"/>
<wi n="lengthPenalty" v="1"/>
</v>
</o>
<o n="sl" t="ru.biosoft.graph.SubgraphLayouter">
<v>
<wi n="layerDeltaX" v="150"/>
<wi n="layerDeltaY" v="150"/>
</v>
</o>
</v>
</o>
</layouterInfo>
<compartmentInfo color="255,255,255" height="150" kernel="stub/test3" kernel_type="info-diagram" shape="0" width="150" x="0" y="0"/>
<nodes>
<node height="50" kernel="stub/dscdsc" kernel_type="simple chemical" width="50" x="288" y="230">
<property name="multimer" short-description="multimer" type="int" value="0"/>
</node>
<node height="50" kernel="stub/lm,n" kernel_type="or" width="50" x="291" y="114"/>
<node height="50" kernel="stub/ojnkj" kernel_type="transition" width="50" x="373" y="182"/>
<node height="50" kernel="stub/refgerf" kernel_type="unspecified entity" width="50" x="157" y="49"/>
<node height="50" kernel="stub/sdcsdc" kernel_type="unspecified entity" width="50" x="153" y="121"/>
<node height="50" kernel="stub/sdcsdc(2)" kernel_type="unspecified entity" width="50" x="416" y="119"/>
</nodes>
<edges>
<edge in="dscdsc" kernel="stub/consumption_0: $dscdsc to $ojnkj" kernel_type="consumption" out="ojnkj">
<path>
<segment segmentType="moveTo" x0="338" y0="231"/>
<segment segmentType="lineTo" x0="373" y0="195"/>
</path>
</edge>
<edge in="refgerf" kernel="stub/consumption_0: $refgerf to $&quot;lm,n&quot;" kernel_type="consumption" out="lm,n">
<path>
<segment segmentType="moveTo" x0="227" y0="87"/>
<segment segmentType="lineTo" x0="291" y0="122"/>
</path>
</edge>
<edge in="sdcsdc" kernel="stub/consumption_0: $sdcsdc to $&quot;lm,n&quot;" kernel_type="consumption" out="lm,n">
<path>
<segment segmentType="moveTo" x0="223" y0="138"/>
<segment segmentType="lineTo" x0="291" y0="130"/>
</path>
</edge>
<edge in="ojnkj" kernel="stub/production_0: $ojnkj to $&quot;sdcsdc(2)&quot;" kernel_type="production" out="sdcsdc(2)">
<path>
<segment segmentType="moveTo" x0="388" y0="184"/>
<segment segmentType="lineTo" x0="423" y0="159"/>
</path>
</edge>
<edge in="lm,n" kernel="stub/stimulation_0: $&quot;lm,n&quot; to $ojnkj" kernel_type="stimulation" out="ojnkj">
<path>
<segment segmentType="moveTo" x0="321" y0="141"/>
<segment segmentType="lineTo" x0="373" y0="184"/>
</path>
</edge>
</edges>
<filters>
<a n="filters" t="[Lbiouml.model.DiagramFilter;">
<v/>
</a>
</filters>
</diagram>
</example>
</examples>
</graphic-notation>
