<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://lipidbank.jp/mediawiki/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3APathwayEditor.js</id>
	<title>MediaWiki:PathwayEditor.js - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://lipidbank.jp/mediawiki/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3APathwayEditor.js"/>
	<link rel="alternate" type="text/html" href="https://lipidbank.jp/mediawiki/index.php?title=MediaWiki:PathwayEditor.js&amp;action=history"/>
	<updated>2026-05-30T22:48:06Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://lipidbank.jp/mediawiki/index.php?title=MediaWiki:PathwayEditor.js&amp;diff=115292&amp;oldid=prev</id>
		<title>Tipputa at 07:03, 26 April 2018</title>
		<link rel="alternate" type="text/html" href="https://lipidbank.jp/mediawiki/index.php?title=MediaWiki:PathwayEditor.js&amp;diff=115292&amp;oldid=prev"/>
		<updated>2018-04-26T07:03:03Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:03, 26 April 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l482&quot;&gt;Line 482:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 482:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;table align=center style=&amp;quot;transform:translate(-6px, 10px)&amp;quot;&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;table align=center style=&amp;quot;transform:translate(-6px, 10px)&amp;quot;&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/d/d7/GL03.png  style=&amp;quot; height:40px;transform:translateX(16px);&amp;quot;/ &amp;gt;&amp;lt;/td&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/d/d7/GL03.png  style=&amp;quot; height:40px;transform:translateX(16px);&amp;quot;/ &amp;gt;&amp;lt;/td&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td nowrap align=left style=&quot;line-height:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;0&lt;/del&gt;%;&quot;&amp;gt;&#039;+fontChange(R1)+&#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td nowrap align=left style=&quot;line-height:&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;50&lt;/ins&gt;%;&quot;&amp;gt;&#039;+fontChange(R1)+&#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=left style=&quot;line-height:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;0&lt;/del&gt;%;&quot;&amp;gt;&#039;+fontChange(R2)+&#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=left style=&quot;line-height:&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;50&lt;/ins&gt;%;&quot;&amp;gt;&#039;+fontChange(R2)+&#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=left  style=&quot;line-height:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;0&lt;/del&gt;%;&quot;&amp;gt;&#039; + fontChange(R3)+ &#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&#039;;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=left  style=&quot;line-height:&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;50&lt;/ins&gt;%;&quot;&amp;gt;&#039; + fontChange(R3)+ &#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&#039;;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 ll.push(txt);&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 ll.push(txt);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wikidb:diff:1.41:old-115288:rev-115292:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Tipputa</name></author>
	</entry>
	<entry>
		<id>https://lipidbank.jp/mediawiki/index.php?title=MediaWiki:PathwayEditor.js&amp;diff=115288&amp;oldid=prev</id>
		<title>Tipputa at 06:47, 26 April 2018</title>
		<link rel="alternate" type="text/html" href="https://lipidbank.jp/mediawiki/index.php?title=MediaWiki:PathwayEditor.js&amp;diff=115288&amp;oldid=prev"/>
		<updated>2018-04-26T06:47:34Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 15:47, 26 April 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l481&quot;&gt;Line 481:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 481:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 var txt = &amp;#039;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 var txt = &amp;#039;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;table align=center style=&amp;quot;transform:translate(-6px, 10px)&amp;quot;&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;table align=center style=&amp;quot;transform:translate(-6px, 10px)&amp;quot;&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td rowspan=3&amp;gt;&amp;lt;img src&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=&lt;/del&gt;=/mediawiki/images/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8b&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GL02&lt;/del&gt;.png  style=&quot; height:40px;transform:translateX(16px);&quot;/ &amp;gt;&amp;lt;/td&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;d&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;d7&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GL03&lt;/ins&gt;.png  style=&quot; height:40px;transform:translateX(16px);&quot;/ &amp;gt;&amp;lt;/td&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td nowrap align=left style=&amp;quot;line-height:0%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R1)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td nowrap align=left style=&amp;quot;line-height:0%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R1)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=left style=&amp;quot;line-height:0%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R2)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=left style=&amp;quot;line-height:0%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R2)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l495&quot;&gt;Line 495:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 495:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 var txt = &amp;#039;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 var txt = &amp;#039;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;table align=center style=&amp;quot;transform:translateY(10px)&amp;quot;&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;table align=center style=&amp;quot;transform:translateY(10px)&amp;quot;&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8b&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GL02&lt;/del&gt;.png style=&quot;height:50px;transform:translateX(18px);&quot;/&amp;gt;&amp;lt;/td&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;d&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;d7&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GL03&lt;/ins&gt;.png style=&quot;height:50px;transform:translateX(18px);&quot;/&amp;gt;&amp;lt;/td&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R1)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R1)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R2)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R2)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=center  style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R3)+&amp;#039;&amp;lt;/td&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=center  style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R3)+&amp;#039;&amp;lt;/td&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8b&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GL02&lt;/del&gt;.png style=&quot; height:50px;transform:translateX(-18px) rotate(180deg);&quot;/ &amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;3&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;31&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GLrev&lt;/ins&gt;.png style=&quot; height:50px;transform:translateX(-18px) rotate(180deg);&quot;/ &amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R4)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R4)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td colspan=2 nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R5)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td colspan=2 nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R5)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l515&quot;&gt;Line 515:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 515:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 var txt = &amp;#039;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 var txt = &amp;#039;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;table align=center style=&amp;quot;transform:translateY(10px)&amp;quot;&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;table align=center style=&amp;quot;transform:translateY(10px)&amp;quot;&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8b&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GL02&lt;/del&gt;.png style=&quot; height:50px;transform:translateX(18px);&quot;/ &amp;gt;&amp;lt;/td&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;d&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;d7&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GL03&lt;/ins&gt;.png style=&quot; height:50px;transform:translateX(18px);&quot;/ &amp;gt;&amp;lt;/td&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R1)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R1)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R2)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R2)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=center  style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R3)+&amp;#039;&amp;lt;/td&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=center  style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R3)+&amp;#039;&amp;lt;/td&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8b&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GL02&lt;/del&gt;.png style=&quot;height:50px;transform:translateX(-18px) rotate(180deg);&quot;/ &amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;3&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;31&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GLrev&lt;/ins&gt;.png style=&quot;height:50px;transform:translateX(-18px) rotate(180deg);&quot;/ &amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R4)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R4)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;8b&lt;/del&gt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GL02&lt;/del&gt;.png style=&quot; height:50px;transform:translateX(18px);&quot;/ &amp;gt;&amp;lt;/td&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;d&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;d7&lt;/ins&gt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GL03&lt;/ins&gt;.png style=&quot; height:50px;transform:translateX(18px);&quot;/ &amp;gt;&amp;lt;/td&amp;gt; \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R5)+&amp;#039;&amp;lt;/td&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;td nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R5)+&amp;#039;&amp;lt;/td&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;/tr&amp;gt;&amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R6)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;                 &amp;lt;/tr&amp;gt;&amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R6)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wikidb:diff:1.41:old-115279:rev-115288:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Tipputa</name></author>
	</entry>
	<entry>
		<id>https://lipidbank.jp/mediawiki/index.php?title=MediaWiki:PathwayEditor.js&amp;diff=115279&amp;oldid=prev</id>
		<title>Tipputa: Created page with &quot;var mdpe_draw = function(_base) {     // 初期化     this.base = $(_base) ;     this.svg = $(&quot;svg&quot;,base) ;     this.bpos = {} ; // boxのinfo保存用     this.em = parseInt...&quot;</title>
		<link rel="alternate" type="text/html" href="https://lipidbank.jp/mediawiki/index.php?title=MediaWiki:PathwayEditor.js&amp;diff=115279&amp;oldid=prev"/>
		<updated>2018-04-26T05:18:41Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;var mdpe_draw = function(_base) {     // 初期化     this.base = $(_base) ;     this.svg = $(&amp;quot;svg&amp;quot;,base) ;     this.bpos = {} ; // boxのinfo保存用     this.em = parseInt...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;var mdpe_draw = function(_base) {&lt;br /&gt;
    // 初期化&lt;br /&gt;
    this.base = $(_base) ;&lt;br /&gt;
    this.svg = $(&amp;quot;svg&amp;quot;,base) ;&lt;br /&gt;
    this.bpos = {} ; // boxのinfo保存用&lt;br /&gt;
    this.em = parseInt($(&amp;#039;html&amp;#039;).css(&amp;#039;font-size&amp;#039;)) ; // 基準とするフォントサイズ&lt;br /&gt;
    this.genebase = []; // gene infoの保存用&lt;br /&gt;
    this.dragDrop = {};&lt;br /&gt;
    var lp,le ; // boxの初期位置情報。随時更新される。&lt;br /&gt;
&lt;br /&gt;
    // dataをセット (this.create, this.setgene) -&amp;gt; redraw&lt;br /&gt;
    this.setobj = function(data,delay) { // 初回描画時のみarrowをdelayさせる。&lt;br /&gt;
        this.genebase = [];&lt;br /&gt;
        $(&amp;#039;div,table&amp;#039;,this.base).remove() ;&lt;br /&gt;
        lp = {x:1,y:1} ;&lt;br /&gt;
        for(var i in data.box) {&lt;br /&gt;
            var pos = this.create(true,data.box[i]) ; // boxの基本情報作成&lt;br /&gt;
            this.bpos[data.box[i].id] = pos ; // boxのポジションを格納&lt;br /&gt;
        }&lt;br /&gt;
        for(var i in data.gene){&lt;br /&gt;
            this.setgene(data.gene[i]); // geneのidとinner情報を格納&lt;br /&gt;
        }&lt;br /&gt;
        var self = this ;&lt;br /&gt;
        this.redraw(data,delay); &lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    // redraw (this.connect)&lt;br /&gt;
    this.redraw = function(data,delay) {	&lt;br /&gt;
        for(var id in this.bpos) {　// boxの位置情報を更新&lt;br /&gt;
            $(&amp;#039;#&amp;#039;+id).css(&amp;#039;left&amp;#039;,this.bpos[id].x+&amp;quot;rem&amp;quot;).css(&amp;#039;top&amp;#039;,this.bpos[id].y+&amp;quot;rem&amp;quot;) ;&lt;br /&gt;
        }&lt;br /&gt;
        var base = this.base ;&lt;br /&gt;
        &lt;br /&gt;
        // geneとarrow情報を削除・新たに設定&lt;br /&gt;
        $(&amp;quot;#base .label&amp;quot;).remove();&lt;br /&gt;
        $(&amp;quot;svg&amp;quot;, base).remove() ;&lt;br /&gt;
        setTimeout($.proxy(function() { // 初回描画のみdelay&lt;br /&gt;
            s=[] ;&lt;br /&gt;
            for(var i in data.conn) {	// コネクションの&lt;br /&gt;
                var c = data.conn[i]&lt;br /&gt;
                l = this.connect($(&amp;quot;#&amp;quot;+c.from),$(&amp;quot;#&amp;quot;+c.to),c.param) ; // =&amp;gt; this.connect&lt;br /&gt;
                if(l!=null) {for(var j in l) {s.push(l[j]) ;}}&lt;br /&gt;
            }&lt;br /&gt;
            base.append(&amp;quot;&amp;lt;svg&amp;gt;&amp;quot;  + s.join(&amp;quot;&amp;quot;) + &amp;quot;&amp;lt;/svg&amp;gt;&amp;quot;); // arrowの設定&lt;br /&gt;
        },this),(delay==true)?500:0) ;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    // create dom block &lt;br /&gt;
    this.create = function(editable, box) {&lt;br /&gt;
        var d = editable?&amp;quot;true&amp;quot;:&amp;quot;false&amp;quot; ;&lt;br /&gt;
        var type,inner;&lt;br /&gt;
        &lt;br /&gt;
        // tableかdivか判定。#や---が使用されていた場合はtable形式のboxになる&lt;br /&gt;
        if(typeof box.inner == &amp;quot;object&amp;quot; || box.title!=null) {&lt;br /&gt;
            if(typeof box.inner != &amp;quot;object&amp;quot;) box.inner = [box.inner] ;&lt;br /&gt;
            for(var tr in box.inner) {&lt;br /&gt;
                var tt = box.inner[tr].split(&amp;quot; | &amp;quot;) ;&lt;br /&gt;
                if(tt.length&amp;gt;1) {&lt;br /&gt;
                    box.inner[tr] = tt.join(&amp;quot;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;quot;) ;&lt;br /&gt;
                } &lt;br /&gt;
            }&lt;br /&gt;
            type =&amp;quot;&amp;lt;table&amp;gt;&amp;quot; ;&lt;br /&gt;
            inner = &amp;quot;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;quot;+box.inner.join(&amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;quot;)+&amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;quot;;&lt;br /&gt;
            if(box.title!=null) inner = &amp;quot;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;&amp;quot;+box.title+&amp;quot;&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&amp;quot; +inner;&lt;br /&gt;
        } else {&lt;br /&gt;
            type = &amp;quot;&amp;lt;div&amp;gt;&amp;quot; ;&lt;br /&gt;
            inner = box.inner;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        var pos = box.pos ;&lt;br /&gt;
        if(pos==undefined) {&lt;br /&gt;
            pos =  lp ;&lt;br /&gt;
        }&lt;br /&gt;
        // &amp;lt;table&amp;gt; or &amp;lt;div&amp;gt;を作成。ここでは位置情報のセットはredrawで行う&lt;br /&gt;
        var e = $(type).addClass(&amp;quot;box&amp;quot;).attr(&amp;#039;id&amp;#039;,box.id).attr(&amp;#039;title&amp;#039;,box.id).&lt;br /&gt;
            attr(&amp;#039;draggable&amp;#039;,d).html(inner) ;&lt;br /&gt;
        if(box.cls) { // class情報の追加&lt;br /&gt;
            if(typeof box.cls == &amp;quot;string&amp;quot;) box.cls = [box.cls] ;&lt;br /&gt;
            for(var i in box.cls) e.addClass(box.cls[i]) ;&lt;br /&gt;
        }&lt;br /&gt;
        if(box.size){&lt;br /&gt;
            e.css(&amp;quot;width&amp;quot;, box.size.w+&amp;quot;px&amp;quot;).css(&amp;quot;height&amp;quot;, box.size.h+&amp;quot;px&amp;quot;);&lt;br /&gt;
        }&lt;br /&gt;
        if(box.css){&lt;br /&gt;
            var css = box.css.split(&amp;quot;;&amp;quot;);&lt;br /&gt;
            for(var i in css){&lt;br /&gt;
                if(css[i] != &amp;quot;&amp;quot;){&lt;br /&gt;
                var css2 = css[i].split(&amp;quot;:&amp;quot;);&lt;br /&gt;
                if(css2.length&amp;gt;1) e.css(css2[0].trim(), css2[1].trim());&lt;br /&gt;
            }}&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        this.base.append(e) ;&lt;br /&gt;
        lp = {x:parseInt(pos.x) + round(parseInt(e.css(&amp;#039;width&amp;#039;))/this.em)+2,y:parseInt(pos.y)+1};&lt;br /&gt;
&lt;br /&gt;
        return pos ; // boxのポジションをreturn, この後this.bposにセット。&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    // set gene information&lt;br /&gt;
    this.setgene = function(gene) {&lt;br /&gt;
        var g = {id:gene.id, inner:gene.inner, cls:gene.cls, count:1};&lt;br /&gt;
        this.genebase.push(g);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    // draw connect line &lt;br /&gt;
    this.connect = function(o1,o2,param) {&lt;br /&gt;
        if(o1.length==0 || o2.length==0) return null ;&lt;br /&gt;
        // start &amp;amp; end positionを2つのboxとconnectionのparameterから計算&lt;br /&gt;
        var sp = setConnectPos(o1, param.s_pos) ; &lt;br /&gt;
        var ep = setConnectPos(o2, param.e_pos) ;&lt;br /&gt;
        &lt;br /&gt;
        var fillcol = &amp;quot;#2c3e50&amp;quot;; // cssで設定されてる初期color; 適宜変更が必要&lt;br /&gt;
&lt;br /&gt;
        // gene labelに関するパート&lt;br /&gt;
        // gene情報をclass=labelで追加&lt;br /&gt;
        if(param.gene != undefined){&lt;br /&gt;
            var id = param.gene;&lt;br /&gt;
            for(var i in this.genebase){&lt;br /&gt;
                if(id == this.genebase[i].id){&lt;br /&gt;
                    var gene = this.genebase[i];&lt;br /&gt;
                    // startとendの中点（mp）を算出&lt;br /&gt;
                    var mpx = ((sp.x+ep.x)/2);&lt;br /&gt;
                    var mpy = ((sp.y+ep.y)/2);&lt;br /&gt;
                    var mp = {x:mpx, y:mpy};&lt;br /&gt;
&lt;br /&gt;
                    // geneが複数回使われるかもしれないため、idにcount情報追加。&lt;br /&gt;
                    var newid = id + &amp;quot;_&amp;quot; + gene.count;&lt;br /&gt;
                    g = $(&amp;quot;&amp;lt;div&amp;gt;&amp;quot;).addClass(&amp;quot;label&amp;quot;).attr(&amp;quot;title&amp;quot;,id).attr(&amp;quot;id&amp;quot;, newid).html(gene.inner).css(&amp;#039;left&amp;#039;, mp.x+&amp;quot;px&amp;quot;).css(&amp;#039;top&amp;#039;,mp.y+&amp;quot;px&amp;quot;);&lt;br /&gt;
                    this.base.append(g);&lt;br /&gt;
                    gene.count = gene.count + 1;&lt;br /&gt;
                    &lt;br /&gt;
                    // classの追加&lt;br /&gt;
                    if(gene.cls) {&lt;br /&gt;
                        if(typeof gene.cls == &amp;quot;string&amp;quot;) gene.cls = [gene.cls] ;&lt;br /&gt;
                          for(var j in gene.cls) g.addClass(gene.cls[j]) ;&lt;br /&gt;
                    }&lt;br /&gt;
                    &lt;br /&gt;
                    // gene position (u|d|l|r)の判別・位置反映 =[]u()=&amp;gt;&lt;br /&gt;
                    // gposのが未指定の場合は中点にプロットされる。&lt;br /&gt;
                    var Rawwidth = g.get(0).offsetWidth; // 描画時のサイズ取得&lt;br /&gt;
                    var RawHeight = g.get(0).offsetHeight;&lt;br /&gt;
                    var margine = 5; // arrowのmargine&lt;br /&gt;
                    var margine2 = 10; // gene labelのmargine&lt;br /&gt;
                    &lt;br /&gt;
                    if(param.gpos != undefined){&lt;br /&gt;
                        if(param.gpos.match(/^u/)){ // 上側にshift&lt;br /&gt;
                            g.css(&amp;#039;left&amp;#039;,(mp.x - Rawwidth/2)+&amp;quot;px&amp;quot;).css(&amp;#039;top&amp;#039;,(mp.y - RawHeight - margine2)+&amp;quot;px&amp;quot;); &lt;br /&gt;
                            // arrowの為にstart endも修正&lt;br /&gt;
                            ep.y = ep.y - margine; &lt;br /&gt;
                            sp.y = sp.y -margine;&lt;br /&gt;
                        } else if(param.gpos.match(/^d/)){ // 下側にshift&lt;br /&gt;
                            g.css(&amp;#039;left&amp;#039;,(mp.x - Rawwidth/2)+&amp;quot;px&amp;quot;).css(&amp;#039;top&amp;#039;,(mp.y + margine2)+&amp;quot;px&amp;quot;); &lt;br /&gt;
                            ep.y = ep.y + margine;&lt;br /&gt;
                            sp.y = sp.y + margine;&lt;br /&gt;
                        } else if(param.gpos.match(/^l/)){ // 左側にshift&lt;br /&gt;
                            g.css(&amp;#039;left&amp;#039;,(mp.x - Rawwidth - margine2)+&amp;quot;px&amp;quot;).css(&amp;#039;top&amp;#039;,(mp.y - RawHeight/2)+&amp;quot;px&amp;quot;); &lt;br /&gt;
                            ep.x = ep.x - margine;&lt;br /&gt;
                            sp.x = sp.x - margine;&lt;br /&gt;
                        } else if(param.gpos.match(/^r/)){ // 右側にshift&lt;br /&gt;
                            g.css(&amp;#039;left&amp;#039;,(mp.x + margine2)+&amp;quot;px&amp;quot;).css(&amp;#039;top&amp;#039;,(mp.y - RawHeight/2)+&amp;quot;px&amp;quot;); &lt;br /&gt;
                            ep.x = ep.x + margine;&lt;br /&gt;
                            sp.x = sp.x + margine;&lt;br /&gt;
                        }&lt;br /&gt;
                    }else{&lt;br /&gt;
                        g.css(&amp;#039;left&amp;#039;,(mp.x - Rawwidth/2)+&amp;quot;px&amp;quot;).css(&amp;#039;top&amp;#039;,(mp.y - RawHeight/2)+&amp;quot;px&amp;quot;);&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
        &lt;br /&gt;
        // 以下はarrowに関するパート&lt;br /&gt;
        var ret = [];&lt;br /&gt;
        &lt;br /&gt;
        // class情報の格納&lt;br /&gt;
        var cls = &amp;quot;&amp;quot; ;&lt;br /&gt;
        if(param.cls) {&lt;br /&gt;
            var c = param.cls.split(&amp;quot; &amp;quot;) ;&lt;br /&gt;
            var cc = [] ;&lt;br /&gt;
            for(var i in c) {&lt;br /&gt;
                if(c[i].match(/^S|B$/)) {&lt;br /&gt;
                    param.type = c[i] ; // S: 直線などは、classではなくまずはtypeに格納&lt;br /&gt;
                } else {&lt;br /&gt;
                    cc.push(c[i]) ;&lt;br /&gt;
                    if(!c[i].match(/^l_.*$/)){&lt;br /&gt;
                    fillcol = c[i];&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            if(cc.length&amp;gt;0) cls = &amp;#039;class=&amp;quot;&amp;#039;+cc.join(&amp;quot; &amp;quot;)+&amp;#039;&amp;quot;&amp;#039; ;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        // startとendが10px以下のずれの場合、矢印のend pointをstartと合わせる（直線にする）&lt;br /&gt;
        var diffPos = 10;&lt;br /&gt;
        if(Math.abs(sp.x - ep.x) &amp;lt; diffPos) {ep.x = sp.x; param.type==&amp;quot;S&amp;quot;;}&lt;br /&gt;
        else if (Math.abs(sp.y - ep.y) &amp;lt; diffPos) {ep.y = sp.y; param.type==&amp;quot;S&amp;quot;;}&lt;br /&gt;
        &lt;br /&gt;
        // 矢印ライン部分の追加&lt;br /&gt;
        // 直線の場合&lt;br /&gt;
        if(param.type==&amp;quot;S&amp;quot;) {&lt;br /&gt;
            ret.push(&amp;#039;&amp;lt;path d=&amp;quot;M &amp;#039; + sp.x + &amp;#039; &amp;#039; + sp.y + &amp;#039; L &amp;#039; + ep.x + &amp;#039; &amp;#039; + ep.y + &amp;#039; &amp;#039; + &amp;#039;&amp;quot; &amp;#039; + cls + &amp;#039; fill=&amp;quot;None&amp;quot; /&amp;gt;&amp;#039;) ;&lt;br /&gt;
        } else { // それ以外のカーブの場合&lt;br /&gt;
            var pm = 50 ;&lt;br /&gt;
            ret.push(&amp;#039;&amp;lt;path d=&amp;quot;M &amp;#039; + sp.x + &amp;#039; &amp;#039; + sp.y + &amp;#039; C &amp;#039; + (sp.x+sp.vx*pm) + &amp;#039; &amp;#039; + (sp.y+sp.vy*pm) + &amp;#039; &amp;#039; + (ep.x+ep.vx*pm) + &amp;#039; &amp;#039; + (ep.y+ep.vy*pm)  + &amp;#039; &amp;#039; + (ep.x) + &amp;#039; &amp;#039; + (ep.y) + &amp;#039;&amp;quot; &amp;#039; + cls  + &amp;#039; &amp;#039; + &amp;#039;fill=&amp;quot;None&amp;quot; /&amp;gt;&amp;#039;) ;&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        // 矢印三角部分の追加 &lt;br /&gt;
        if(param.arrow) {&lt;br /&gt;
            var th = 3.14159*35/180 ;&lt;br /&gt;
            var an = 10 ;&lt;br /&gt;
            var v,p ;&lt;br /&gt;
            function rot(v,th) {&lt;br /&gt;
                var px = v.x * Math.cos(th) - v.y * Math.sin(th) ;&lt;br /&gt;
                var py = v.x * Math.sin(th) + v.y * Math.cos(th) ;&lt;br /&gt;
                var vn = Math.sqrt(px*px+py*py) ;&lt;br /&gt;
                return {x:px/vn,y:py/vn} ;		&lt;br /&gt;
            }&lt;br /&gt;
            function av(sp,ep) {&lt;br /&gt;
                v = (param.type==&amp;quot;S&amp;quot;)?{x:sp.x-ep.x ,y:sp.y-ep.y}:{x:ep.vx,y:ep.vy} ;&lt;br /&gt;
                p1 = rot(v,th) ;&lt;br /&gt;
                p2 = rot(v,-th) ;&lt;br /&gt;
                ret.push(&amp;#039;&amp;lt;path d=&amp;quot;M &amp;#039; + &amp;#039; &amp;#039; + round(ep.x+p1.x*an) + &amp;#039; &amp;#039; + round(ep.y+p1.y*an)  + &amp;#039; L &amp;#039; + ep.x + &amp;#039; &amp;#039; + ep.y + &amp;#039; L &amp;#039; + round(ep.x+p2.x*an)  + &amp;#039; &amp;#039; + round(ep.y+p2.y*an)  + &amp;#039; Z&amp;quot; fill=&amp;#039; + fillcol + &amp;#039; &amp;#039; + cls  + &amp;#039;/&amp;gt;&amp;#039;)&lt;br /&gt;
            }&lt;br /&gt;
            if(param.arrow==&amp;quot;b&amp;quot;||param.arrow==&amp;quot;t&amp;quot;) av(sp,ep) ;&lt;br /&gt;
            if(param.arrow==&amp;quot;b&amp;quot;||param.arrow==&amp;quot;f&amp;quot;) av(ep,sp) ;&lt;br /&gt;
        }&lt;br /&gt;
        return ret //	return {sp:sp,ep:ep} ;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
// connectionの位置を計算&lt;br /&gt;
function setConnectPos(o,f) {&lt;br /&gt;
    var sx = parseInt(o.css(&amp;#039;left&amp;#039;)) ;&lt;br /&gt;
    var sy = parseInt(o.css(&amp;#039;top&amp;#039;)) ;&lt;br /&gt;
    var w = parseInt(o.css(&amp;#039;width&amp;#039;)) ;&lt;br /&gt;
    var h = parseInt(o.css(&amp;#039;height&amp;#039;)) ;&lt;br /&gt;
    var tagName = o.prop(&amp;quot;tagName&amp;quot;);	&lt;br /&gt;
    var px,py,vx,vy ;&lt;br /&gt;
    var t = $(&amp;#039;tr&amp;#039;,o) ;&lt;br /&gt;
    var d = $(&amp;#039;th,td&amp;#039;,o) ;&lt;br /&gt;
    if(tagName == &amp;quot;TABLE&amp;quot;){&lt;br /&gt;
        if(t.length&amp;gt;0 &amp;amp;&amp;amp; f.match(/(l|r)([0-9]+)/)) {&lt;br /&gt;
            vy = 0 ;&lt;br /&gt;
            if(RegExp.$1==&amp;quot;l&amp;quot;) {&lt;br /&gt;
                px = sx ;&lt;br /&gt;
                vx = -1 ;&lt;br /&gt;
            } else if(RegExp.$1==&amp;quot;r&amp;quot;) {&lt;br /&gt;
                px = sx+w ;&lt;br /&gt;
                vx = 1 ;&lt;br /&gt;
            }&lt;br /&gt;
            var tn = RegExp.$2-1 ;&lt;br /&gt;
            py = sy + t[tn].offsetTop+t[tn].offsetHeight/2 ;&lt;br /&gt;
        } else if(d.length&amp;gt;0 &amp;amp;&amp;amp; f.match(/(u|d)([0-9]+)/)) {&lt;br /&gt;
            vx = 0 ;&lt;br /&gt;
            if(RegExp.$1==&amp;quot;u&amp;quot;) {&lt;br /&gt;
                py = sy ;&lt;br /&gt;
                vy = -1 ;&lt;br /&gt;
            } else if(RegExp.$1==&amp;quot;d&amp;quot;) {&lt;br /&gt;
                py = sy+h ;&lt;br /&gt;
                vy = 1 ;&lt;br /&gt;
            }&lt;br /&gt;
            var tn = (RegExp.$2!=undefined)?RegExp.$2-1:0 ;&lt;br /&gt;
            px = sx + d[tn].offsetLeft+d[tn].offsetWidth/2 ;&lt;br /&gt;
        } else {&lt;br /&gt;
            switch(f.substr(0,1)) {&lt;br /&gt;
                case &amp;#039;u&amp;#039;:&lt;br /&gt;
                    px = sx+w/2 ;py = sy ; vx=0 ;vy=-1; break ;&lt;br /&gt;
                case &amp;#039;d&amp;#039;:&lt;br /&gt;
                    px = sx+w/2 ;py = sy+h ; vx=0;vy=1; break ;&lt;br /&gt;
                case &amp;#039;l&amp;#039;:&lt;br /&gt;
                    px = sx ;py = sy + h/2 ; vx=-1;vy=0; break ;&lt;br /&gt;
                case &amp;#039;r&amp;#039;:&lt;br /&gt;
                    px = sx+w ;py = sy + h/2 ; vx=1;vy=0; break ;&lt;br /&gt;
                default:&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    } else {&lt;br /&gt;
        switch(f.substr(0,1)) {&lt;br /&gt;
            case &amp;#039;u&amp;#039;:&lt;br /&gt;
                px = sx+w/2 ;py = sy ; vx=0 ;vy=-1; break ;&lt;br /&gt;
            case &amp;#039;d&amp;#039;:&lt;br /&gt;
                px = sx+w/2 ;py = sy+h ; vx=0;vy=1; break ;&lt;br /&gt;
            case &amp;#039;l&amp;#039;:&lt;br /&gt;
                px = sx ;py = sy + h/2 ; vx=-1;vy=0; break ;&lt;br /&gt;
            case &amp;#039;r&amp;#039;:&lt;br /&gt;
                px = sx+w ;py = sy + h/2 ; vx=1;vy=0; break ;&lt;br /&gt;
            default:&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    return {x:px,y:py,vx:vx,vy:vy} ;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
    // round&lt;br /&gt;
    function round(x) { return Math.floor(x*10)/10; }&lt;br /&gt;
    &lt;br /&gt;
    // handlerで使用。boxのdrag&amp;amp;drop時に値を返す。&lt;br /&gt;
    this.setpos = function(id,x,y) {&lt;br /&gt;
        var px = parseFloat(x)&amp;gt;0?parseFloat(x):1;&lt;br /&gt;
        var py = parseFloat(y)&amp;gt;0?parseFloat(y):1;        &lt;br /&gt;
        this.bpos[id] = {x:px,y:py} ;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    this.changeAllPos = function(opt){&lt;br /&gt;
        var addX, addY, size = 2;&lt;br /&gt;
        switch (opt){&lt;br /&gt;
            case &amp;quot;L&amp;quot;: addX = -size; addY = 0; break;&lt;br /&gt;
            case &amp;quot;R&amp;quot;: addX = size; addY = 0; break;&lt;br /&gt;
            case &amp;quot;D&amp;quot;: addX = 0; addY = size; break;&lt;br /&gt;
            case &amp;quot;U&amp;quot;: addX = 0; addY = -size; break;&lt;br /&gt;
        }&lt;br /&gt;
        for(var id in this.bpos) {　// boxの位置情報を更新&lt;br /&gt;
            var px = parseFloat(this.bpos[id].x) + addX;&lt;br /&gt;
            var py = parseFloat(this.bpos[id].y) + addY;&lt;br /&gt;
            if(px&amp;gt;=0 &amp;amp;&amp;amp; py &amp;gt;= 0)this.bpos[id] = {x:px, y:py};&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    this.select = function(rect){&lt;br /&gt;
        this.deact()&lt;br /&gt;
        var l = parseFloat(rect.css(&amp;quot;left&amp;quot;))/this.em;&lt;br /&gt;
        var t = parseFloat(rect.css(&amp;quot;top&amp;quot;))/this.em;&lt;br /&gt;
        var w = parseFloat(rect.css(&amp;quot;width&amp;quot;))/this.em;&lt;br /&gt;
        var h = parseFloat(rect.css(&amp;quot;height&amp;quot;))/this.em;&lt;br /&gt;
        for(var id in this.bpos){&lt;br /&gt;
            if(this.bpos[id].x &amp;gt; l &amp;amp;&amp;amp; this.bpos[id].x &amp;lt; l+w &amp;amp;&amp;amp; this.bpos[id].y &amp;gt; t &amp;amp;&amp;amp; this.bpos[id].y &amp;lt; t+h){&lt;br /&gt;
                $(&amp;#039;#&amp;#039;+id).addClass(&amp;quot;active&amp;quot;);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    this.deact = function(){&lt;br /&gt;
        for(var id in this.bpos){&lt;br /&gt;
            if($(&amp;#039;#&amp;#039;+id).hasClass(&amp;quot;active&amp;quot;)){&lt;br /&gt;
                $(&amp;#039;#&amp;#039;+id).removeClass(&amp;quot;active&amp;quot;);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    this.drop = function(mag){&lt;br /&gt;
        var ox = (this.dragDrop.pX - this.dragDrop.preX)/mag ;&lt;br /&gt;
        var oy = (this.dragDrop.pY - this.dragDrop.preY)/mag ;&lt;br /&gt;
        for(var id in this.bpos){&lt;br /&gt;
            if($(&amp;#039;#&amp;#039;+id).hasClass(&amp;quot;active&amp;quot;)){&lt;br /&gt;
                var ex = parseInt($(&amp;#039;#&amp;#039;+id).css(&amp;quot;left&amp;quot;)) ;&lt;br /&gt;
                var ey = parseInt($(&amp;#039;#&amp;#039;+id).css(&amp;quot;top&amp;quot;)) ;                &lt;br /&gt;
                var px = Math.floor(((ex+ox)/this.em+0.25)*2)/2 ;&lt;br /&gt;
                var py = Math.floor(((ey+oy)/this.em+0.25)*2)/2 ;&lt;br /&gt;
                this.setpos(id,px,py) ;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    function strHeight(str, width) {&lt;br /&gt;
      var e = $(&amp;quot;#ruler&amp;quot;).css(&amp;quot;width&amp;quot;, width);&lt;br /&gt;
      var height = e.text(str).get(0).offsetHeight;&lt;br /&gt;
      e.empty();&lt;br /&gt;
        console.info(height);&lt;br /&gt;
      return height;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    &lt;br /&gt;
&lt;br /&gt;
    // text 関連&lt;br /&gt;
    // md parser&lt;br /&gt;
    this.m_h = /^\[([A-z0-9-_]*)\]\s*(?:\(([^)]*)\))?\s*(?:&amp;lt;\s*([0-9\.]+)\s*,\s*([0-9\.]+)\s*,*\s*([0-9\.]+)?\s*,*\s*([0-9\.]+)?\s*&amp;gt;)?\s*(?:css\(([^)]*)\))?\s*$/ ;&lt;br /&gt;
    this.parse = function(text) {&lt;br /&gt;
        // return するbox, conn, genesの初期化&lt;br /&gt;
        var box = [] ;&lt;br /&gt;
        var conn = [] ;&lt;br /&gt;
        var genes = [];&lt;br /&gt;
        &lt;br /&gt;
        // pattern&lt;br /&gt;
        var m_g = /^g\[([A-z0-9-_]+)\]\s*(?:\((.*)\))?\s*?$/;&lt;br /&gt;
        var m_comm = /^\/\// ;&lt;br /&gt;
        var m_wiki = /^&amp;lt;?nowiki&amp;gt;/;&lt;br /&gt;
        var m_sep = /^---*$/ ;&lt;br /&gt;
        var m_conn = /^([u|d|l|r][0-9]*)?(&amp;lt;)?==?(?:\[([A-z0-9-_]+)\])?\s*([u|d|l|r][0-9]*)?\s*(?:\(([^&amp;quot;=&amp;gt;]*)\))?==?(&amp;gt;)?([u|d|l|r][0-9]*)?\[([A-z0-9-_]+)\]\s*$/i ;&lt;br /&gt;
        var m_ulink= /\?\[(.+)\]\s*(?:\(([^ &amp;quot;)]+)\s*(?:&amp;quot;(.+)&amp;quot;)?\))?/i;&lt;br /&gt;
        var m_image = /\!\[(.+)\]\s*(?:\(([^ &amp;quot;)]+)\s*(?:&amp;quot;([^&amp;quot;)]*)&amp;quot;)?\))?\s*(?:css\(([^)]*)\))?/i;&lt;br /&gt;
        var m_popStart = /^&amp;lt;pop&amp;gt;$/;&lt;br /&gt;
        var m_popEnd = /^&amp;lt;\/pop&amp;gt;$/;&lt;br /&gt;
        var m_title = /^#(.*)/ ;&lt;br /&gt;
        var m_GL = /^!GL\{([^|]*)?\|?([^|]*)?\|?([^|]*)?\}$/; // for glycerolipids&lt;br /&gt;
        var m_PG = /^!PG\{([^|]*)?\|?([^|]*)?\|?([^|]*)?\|?([^|]*)?\|?([^|]*)?\}$/; // for Phosphatidylglycerol&lt;br /&gt;
        var m_CL = /^!CL\{([^|]*)?\|?([^|]*)?\|?([^|]*)?\|?([^|]*)?\|?([^|]*)?\|?([^|]*)?\|?([^|]*)?}$/; // for Cardiolipin&lt;br /&gt;
&lt;br /&gt;
        var l = text.split(&amp;quot;\n&amp;quot;) ;&lt;br /&gt;
        var b = {id:&amp;quot;&amp;quot;,bl:[], check:false} ;&lt;br /&gt;
        var gene = {id:&amp;quot;&amp;quot;, gl:[]};&lt;br /&gt;
        var boxcheck = true;&lt;br /&gt;
        // read start&lt;br /&gt;
        for(var i in l) {&lt;br /&gt;
            var cl = l[i] ;&lt;br /&gt;
            cl=cl.replace(/&amp;amp;lt;/g,&amp;quot;&amp;lt;&amp;quot;); // for wiki&lt;br /&gt;
            cl=cl.replace(/&amp;amp;gt;/g,&amp;quot;&amp;gt;&amp;quot;); &lt;br /&gt;
            &lt;br /&gt;
            var a, g;&lt;br /&gt;
            &lt;br /&gt;
            // wikiTag or blank&lt;br /&gt;
            if(cl ==&amp;quot;&amp;quot; || m_comm.exec(cl) || cl.match(m_wiki)){continue;}&lt;br /&gt;
            else if(a = this.m_h.exec(cl)) { // set box info&lt;br /&gt;
                if(b.bl.length&amp;gt;0 || b.check) {&lt;br /&gt;
                    pbox(b) ;&lt;br /&gt;
                    b.check = false;&lt;br /&gt;
                } else if(gene.gl.length&amp;gt;0){&lt;br /&gt;
                    pgene(gene);&lt;br /&gt;
                    gene.id = &amp;quot;&amp;quot;;&lt;br /&gt;
                    gene.gl = [];&lt;br /&gt;
                }&lt;br /&gt;
                boxcheck = true;&lt;br /&gt;
                b.id = a[1] ;&lt;br /&gt;
                b.bl = [] ;&lt;br /&gt;
                b.cls = a[2] ;&lt;br /&gt;
                b.pos = (a[3] &amp;amp;&amp;amp; a[4])?{x:a[3],y:a[4]}:undefined ;&lt;br /&gt;
                b.size = (a[5] &amp;amp;&amp;amp; a[6]) ?{w:a[5], h:a[6]}:undefined;&lt;br /&gt;
                b.css = (a[7])?a[7]:undefined;&lt;br /&gt;
                if(b.size){b.check = true;}&lt;br /&gt;
            } else if(g = m_g.exec(cl)) { // set gene info&lt;br /&gt;
                if(b.bl.length&amp;gt;0 || b.check) {&lt;br /&gt;
                    pbox(b);&lt;br /&gt;
                    b.id = &amp;quot;&amp;quot;;&lt;br /&gt;
                    b.bl = [];&lt;br /&gt;
                    b.check = false;&lt;br /&gt;
                } else if(gene.gl.length&amp;gt;0){&lt;br /&gt;
                    pgene(gene);&lt;br /&gt;
                }&lt;br /&gt;
                boxcheck = false;&lt;br /&gt;
                gene.id = g[1] ;&lt;br /&gt;
                gene.gl = [] ;&lt;br /&gt;
                gene.cls = g[2] ;&lt;br /&gt;
            } else{ // set normal line&lt;br /&gt;
            if(boxcheck &amp;amp;&amp;amp; b.id != &amp;quot;&amp;quot;){b.bl.push( cl );}&lt;br /&gt;
            else if (gene.id != &amp;quot;&amp;quot;){ gene.gl.push(cl); }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        // for last item&lt;br /&gt;
        if(b.bl.length&amp;gt;0) pbox(b);&lt;br /&gt;
        if(gene.gl.length&amp;gt;0) pgene(gene);&lt;br /&gt;
        // read end&lt;br /&gt;
        &lt;br /&gt;
         // share parser&lt;br /&gt;
        function sparser(cl, ll, llp){&lt;br /&gt;
            var a;&lt;br /&gt;
            if(cl.match(m_popStart)){&lt;br /&gt;
                // llの一時初期化。popEndで全てまとめてllにset&lt;br /&gt;
                if(ll.length&amp;gt;0) llp.push(ll.join(&amp;quot;&amp;lt;br/&amp;gt;&amp;quot;));&lt;br /&gt;
                ll.length=0;&lt;br /&gt;
            }&lt;br /&gt;
            else if(cl.match(m_popEnd)){&lt;br /&gt;
                // &amp;lt;pop&amp;gt;&amp;lt;/pop&amp;gt;の間を&amp;lt;span&amp;gt;タグで囲む。cssで&amp;lt;span&amp;gt;タグはpopupになるように設定&lt;br /&gt;
                if(ll.length&amp;gt;0) llp.push( &amp;quot;&amp;lt;span&amp;gt;&amp;quot; + ll.join(&amp;quot;&amp;lt;br/&amp;gt;&amp;quot;) + &amp;quot;&amp;lt;/span&amp;gt;&amp;quot;) ;&lt;br /&gt;
                ll.length=0;&lt;br /&gt;
                Array.prototype.push.apply(ll, llp);&lt;br /&gt;
            } else if(a = m_image.exec(cl)) { // imgの読み込み&lt;br /&gt;
                var im;&lt;br /&gt;
                if(a[4]!=undefined){&lt;br /&gt;
                    var style = [];&lt;br /&gt;
                    var css = a[4].split(&amp;quot;;&amp;quot;);&lt;br /&gt;
                    for(var i in css){&lt;br /&gt;
                        if(css[i] != &amp;quot;&amp;quot;){&lt;br /&gt;
                            var css2 = css[i].split(&amp;quot;:&amp;quot;);&lt;br /&gt;
                            if(css2.length&amp;gt;1){&lt;br /&gt;
                                style.push(css2[0].trim()+&amp;quot;:&amp;quot;+css2[1].trim()+&amp;quot;;&amp;quot;);&lt;br /&gt;
                            }&lt;br /&gt;
                        }&lt;br /&gt;
                    }&lt;br /&gt;
                    im = ( &amp;#039;&amp;lt;img src=&amp;quot;&amp;#039;+a[2]+&amp;#039;&amp;quot; title=&amp;#039;+a[1]+&amp;#039; style=&amp;quot;&amp;#039; + style.join(&amp;quot; &amp;quot;) + &amp;#039;&amp;quot;/&amp;gt;&amp;#039;);&lt;br /&gt;
                }&lt;br /&gt;
                else {im = ( &amp;#039;&amp;lt;img src=&amp;quot;&amp;#039;+a[2]+&amp;#039;&amp;quot; title=&amp;#039;+a[1]+&amp;#039; /&amp;gt;&amp;#039;) ;&lt;br /&gt;
                }&lt;br /&gt;
                if(a[3]!=undefined) {&lt;br /&gt;
                    im = &amp;quot;&amp;lt;figure&amp;gt;&amp;quot;+im+&amp;quot;&amp;lt;figcaption&amp;gt;&amp;quot;+fontChange(a[3])+&amp;quot;&amp;lt;/figcaption&amp;gt;&amp;lt;/figure&amp;gt;&amp;quot; ;&lt;br /&gt;
                }&lt;br /&gt;
                ll.push(im) ;&lt;br /&gt;
            } else if(a = m_ulink.exec(cl)) { // urlの読み込み&lt;br /&gt;
                var url = &amp;quot;&amp;lt;a href=&amp;quot;+a[2]+&amp;quot; target=\&amp;quot;_blank\&amp;quot;&amp;gt;&amp;quot; + fontChange(a[3]) + &amp;quot;&amp;lt;/a&amp;gt;&amp;quot;;&lt;br /&gt;
                ll.push(url);&lt;br /&gt;
            } else if (a = m_GL.exec(cl)){&lt;br /&gt;
                R1 = a[1]?a[1]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R2 = a[2]?a[2]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R3 = a[3]?a[3]:&amp;quot;&amp;quot;;&lt;br /&gt;
                var txt = &amp;#039;\&lt;br /&gt;
                &amp;lt;table align=center style=&amp;quot;transform:translate(-6px, 10px)&amp;quot;&amp;gt; \&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td rowspan=3&amp;gt;&amp;lt;img src==/mediawiki/images/8/8b/GL02.png  style=&amp;quot; height:40px;transform:translateX(16px);&amp;quot;/ &amp;gt;&amp;lt;/td&amp;gt; \&lt;br /&gt;
                &amp;lt;td nowrap align=left style=&amp;quot;line-height:0%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R1)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=left style=&amp;quot;line-height:0%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R2)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=left  style=&amp;quot;line-height:0%;&amp;quot;&amp;gt;&amp;#039; + fontChange(R3)+ &amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&amp;#039;;&lt;br /&gt;
                ll.push(txt);&lt;br /&gt;
                &lt;br /&gt;
            }else if (a = m_PG.exec(cl)){&lt;br /&gt;
                R1 = a[1]?a[1]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R2 = a[2]?a[2]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R3 = a[3]?a[3]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R4 = a[4]?a[4]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R5 = a[5]?a[5]:&amp;quot;&amp;quot;;&lt;br /&gt;
                var txt = &amp;#039;\&lt;br /&gt;
                &amp;lt;table align=center style=&amp;quot;transform:translateY(10px)&amp;quot;&amp;gt;\&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/8/8b/GL02.png style=&amp;quot;height:50px;transform:translateX(18px);&amp;quot;/&amp;gt;&amp;lt;/td&amp;gt; \&lt;br /&gt;
                &amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R1)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R2)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=center  style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R3)+&amp;#039;&amp;lt;/td&amp;gt;\&lt;br /&gt;
                &amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/8/8b/GL02.png style=&amp;quot; height:50px;transform:translateX(-18px) rotate(180deg);&amp;quot;/ &amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R4)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; \&lt;br /&gt;
                &amp;lt;td colspan=2 nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R5)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&amp;#039;&lt;br /&gt;
                ll.push(txt);&lt;br /&gt;
&lt;br /&gt;
            } else if(a = m_CL.exec(cl)){&lt;br /&gt;
                R1 = a[1]?a[1]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R2 = a[2]?a[2]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R3 = a[3]?a[3]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R4 = a[4]?a[4]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R5 = a[5]?a[5]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R6 = a[6]?a[6]:&amp;quot;&amp;quot;;&lt;br /&gt;
                R7 = a[7]?a[7]:&amp;quot;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
                var txt = &amp;#039;\&lt;br /&gt;
                &amp;lt;table align=center style=&amp;quot;transform:translateY(10px)&amp;quot;&amp;gt; \&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/8/8b/GL02.png style=&amp;quot; height:50px;transform:translateX(18px);&amp;quot;/ &amp;gt;&amp;lt;/td&amp;gt;\&lt;br /&gt;
                &amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R1)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R2)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td nowrap align=center  style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R3)+&amp;#039;&amp;lt;/td&amp;gt;\&lt;br /&gt;
                &amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/8/8b/GL02.png style=&amp;quot;height:50px;transform:translateX(-18px) rotate(180deg);&amp;quot;/ &amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R4)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;br /&gt;
                &amp;lt;td rowspan=3&amp;gt;&amp;lt;img src=/mediawiki/images/8/8b/GL02.png style=&amp;quot; height:50px;transform:translateX(18px);&amp;quot;/ &amp;gt;&amp;lt;/td&amp;gt; \&lt;br /&gt;
                &amp;lt;td nowrap align=right style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R5)+&amp;#039;&amp;lt;/td&amp;gt;\&lt;br /&gt;
                &amp;lt;/tr&amp;gt;&amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R6)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;\&lt;br /&gt;
                &amp;lt;tr&amp;gt;&amp;lt;td colspan=2 nowrap align=left style=&amp;quot;line-height:50%;&amp;quot;&amp;gt;&amp;#039;+fontChange(R7)+&amp;#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &amp;lt;/table&amp;gt;&amp;#039;    &lt;br /&gt;
                ll.push(txt);&lt;br /&gt;
            } else { // その他のテキスト&lt;br /&gt;
                cl = fontChange(cl);&lt;br /&gt;
                ll.push(cl) ;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        &lt;br /&gt;
        // gene labelの作成&lt;br /&gt;
        function pgene(g) { &lt;br /&gt;
            var ll = [];&lt;br /&gt;
            var llp = []; // popup tag用&lt;br /&gt;
            var a ;&lt;br /&gt;
            for(var i in g.gl) {&lt;br /&gt;
                sparser(g.gl[i], ll, llp) ;&lt;br /&gt;
            }            &lt;br /&gt;
            var l = ll.join(&amp;quot;&amp;lt;br/&amp;gt;&amp;quot;);&lt;br /&gt;
            genes.push( {id:g.id,inner:l,cls:g.cls} ) ;&lt;br /&gt;
        }&lt;br /&gt;
    &lt;br /&gt;
&lt;br /&gt;
        // boxの作成&lt;br /&gt;
        function pbox(b) { &lt;br /&gt;
            var l = [] ;&lt;br /&gt;
            var ll = [] ;&lt;br /&gt;
            var llp = [];&lt;br /&gt;
            var a ;&lt;br /&gt;
            b.title = null ;&lt;br /&gt;
            for(var i in b.bl) {&lt;br /&gt;
                var cl = b.bl[i] ;&lt;br /&gt;
                if(m_sep.exec(cl)) {&lt;br /&gt;
                    if(ll.length&amp;gt;0) l.push( ll.join(&amp;quot;&amp;lt;br/&amp;gt;&amp;quot;)) ;&lt;br /&gt;
                    ll = [] ;&lt;br /&gt;
                } else if(a = m_title.exec(cl)) {&lt;br /&gt;
                    b.title = a[1] ;&lt;br /&gt;
                } else if( a=m_conn.exec(cl)) { // コネクションの読み込み。fpがはじめ、tpが終わり、矢印の向きも判定&lt;br /&gt;
                    if(ll.length&amp;gt;0) l.push( ll.join(&amp;quot;&amp;lt;br/&amp;gt;&amp;quot;)) ;&lt;br /&gt;
                    ll = [] ;&lt;br /&gt;
                    var fp = &amp;quot;r&amp;quot; ;&lt;br /&gt;
                    var tp = &amp;quot;l1&amp;quot; ;&lt;br /&gt;
                    var ar = (a[2]!=undefined)?((a[6]!=undefined)?&amp;quot;b&amp;quot;:&amp;quot;f&amp;quot;):((a[6]!=undefined)?&amp;quot;t&amp;quot;:&amp;quot;&amp;quot;) ; // 向き&lt;br /&gt;
                    if(a[1]!=undefined) fp = a[1] ;&lt;br /&gt;
                    if(a[7]!=undefined) tp = a[7] ;&lt;br /&gt;
                    // connectionの設定, geneでgeneid, gposで[u|d|l|r]&lt;br /&gt;
                    conn.push( {from:b.id,to:a[8],param:{&lt;br /&gt;
                        s_pos:(fp+(l.length+((b.title!=null)?1:0))),e_pos:tp,cls:a[5],arrow:ar, gene:a[3], gpos:a[4]}}) ; &lt;br /&gt;
                } else {&lt;br /&gt;
                    sparser(cl, ll, llp);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            if(ll.length&amp;gt;0) l.push( ll.join(&amp;quot;&amp;lt;br/&amp;gt;&amp;quot;)) ;&lt;br /&gt;
            else if(b.check) l.push(&amp;quot; &amp;quot;);&lt;br /&gt;
            if(l.length==1) l = l[0] ;&lt;br /&gt;
            box.push( {id:b.id,inner:l,pos:b.pos,cls:b.cls,title:b.title, size:b.size, css:b.css} ) ;&lt;br /&gt;
        }&lt;br /&gt;
        return {box:box, conn:conn, gene:genes} ;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    this.searchPosition = function(text,w,tag){&lt;br /&gt;
        var l = text.split(&amp;quot;\n&amp;quot;) ;&lt;br /&gt;
        var height = 0;&lt;br /&gt;
        var heightTmp;&lt;br /&gt;
        for(var i in l) {&lt;br /&gt;
            var cl = l[i];&lt;br /&gt;
            if(cl.match(tag)){break;}&lt;br /&gt;
            if(cl == &amp;quot;&amp;quot;) height = height + 16*1.2;&lt;br /&gt;
            else {heightTmp = strHeight(cl, parseFloat(w));height = height + heightTmp;}&lt;br /&gt;
        }&lt;br /&gt;
        console.info(height);&lt;br /&gt;
        return height;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    // boxを移動させた時にtextの座標も変更&lt;br /&gt;
    this.upd_text = function(text) {&lt;br /&gt;
        var l = text.split(&amp;quot;\n&amp;quot;) ;&lt;br /&gt;
        for(var i in l) {&lt;br /&gt;
            var cl = l[i] ;&lt;br /&gt;
            var a &lt;br /&gt;
            if(cl==&amp;quot;&amp;quot;) continue ;&lt;br /&gt;
            if(a = this.m_h.exec(cl)) {&lt;br /&gt;
                var pos = (this.bpos[a[1]]!=undefined)?this.bpos[a[1]]:{x:a[3],y:a[4]} ;&lt;br /&gt;
                var css = a[7] ? &amp;quot;css(&amp;quot;+a[7]+&amp;quot;)&amp;quot; : &amp;quot;&amp;quot;;&lt;br /&gt;
                if(a[5] &amp;amp;&amp;amp; a[6]){&lt;br /&gt;
                    l[i] = &amp;quot;[&amp;quot;+a[1]+&amp;quot;]&amp;quot;+((a[2]!=undefined)?&amp;quot; (&amp;quot;+a[2]+&amp;quot;)&amp;quot;:&amp;quot;&amp;quot;)+&amp;quot; &amp;lt;&amp;quot;+pos.x+&amp;quot;,&amp;quot;+pos.y+&amp;quot;,&amp;quot;+a[5]+&amp;quot;,&amp;quot;+a[6]+&amp;quot;&amp;gt;&amp;quot;+css;&lt;br /&gt;
                }else{&lt;br /&gt;
                    l[i] = &amp;quot;[&amp;quot;+a[1]+&amp;quot;]&amp;quot;+((a[2]!=undefined)?&amp;quot; (&amp;quot;+a[2]+&amp;quot;)&amp;quot;:&amp;quot;&amp;quot;)+&amp;quot; &amp;lt;&amp;quot;+pos.x+&amp;quot;,&amp;quot;+pos.y+&amp;quot;&amp;gt;&amp;quot;+css ;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        return l.join(&amp;quot;\n&amp;quot;) ;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    function fontChange(cl){&lt;br /&gt;
        m_b = /_\*(.+?)\*_/g　; // 太文字に置換&lt;br /&gt;
        while((m = m_b.exec(cl))!=null) {&lt;br /&gt;
            cl = cl.replace(m[0],&amp;quot;&amp;lt;strong&amp;gt;&amp;quot;+m[1]+&amp;quot;&amp;lt;/strong&amp;gt;&amp;quot;) ;&lt;br /&gt;
        }&lt;br /&gt;
        m_i = /__(.+?)__/g　; // イタリック置換&lt;br /&gt;
        while((m = m_i.exec(cl))!=null) {&lt;br /&gt;
            cl = cl.replace(m[0],&amp;quot;&amp;lt;i&amp;gt;&amp;quot;+m[1]+&amp;quot;&amp;lt;/i&amp;gt;&amp;quot;) ;&lt;br /&gt;
        }&lt;br /&gt;
        m_i = /_s(.+?)s_/g　; // したつき置換&lt;br /&gt;
        while((m = m_i.exec(cl))!=null) {&lt;br /&gt;
            cl = cl.replace(m[0],&amp;quot;&amp;lt;sub&amp;gt;&amp;quot;+m[1]+&amp;quot;&amp;lt;/sub&amp;gt;&amp;quot;) ;&lt;br /&gt;
        }&lt;br /&gt;
        return cl&lt;br /&gt;
    }&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Tipputa</name></author>
	</entry>
</feed>