rsyntaxtree 1.2.0 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (129) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -1
  3. data/.tags +84 -0
  4. data/Rakefile +14 -4
  5. data/bin/rsyntaxtree +4 -2
  6. data/docs/_examples/000.md +2 -1
  7. data/docs/_examples/001.md +2 -1
  8. data/docs/_examples/002.md +2 -1
  9. data/docs/_examples/003.md +2 -1
  10. data/docs/_examples/004.md +2 -1
  11. data/docs/_examples/005.md +2 -1
  12. data/docs/_examples/006.md +2 -1
  13. data/docs/_examples/007.md +2 -1
  14. data/docs/_examples/008.md +2 -1
  15. data/docs/_examples/009.md +2 -1
  16. data/docs/_examples/010.md +2 -1
  17. data/docs/_examples/011.md +2 -1
  18. data/docs/_examples/012.md +2 -1
  19. data/docs/_examples/013.md +2 -1
  20. data/docs/_examples/014.md +2 -1
  21. data/docs/_examples/015.md +2 -1
  22. data/docs/_examples/016.md +2 -1
  23. data/docs/_examples/017.md +2 -1
  24. data/docs/_examples/018.md +2 -1
  25. data/docs/_examples/019.md +2 -1
  26. data/docs/_examples/020.md +2 -1
  27. data/docs/_examples/021.md +2 -1
  28. data/docs/_examples/022.md +2 -1
  29. data/docs/_examples/023.md +2 -1
  30. data/docs/_examples/024.md +2 -1
  31. data/docs/_examples/025.md +2 -1
  32. data/docs/_examples/026.md +2 -1
  33. data/docs/_examples/027.md +2 -1
  34. data/docs/_examples/028.md +2 -1
  35. data/docs/_examples/029.md +2 -1
  36. data/docs/_examples/030.md +4 -3
  37. data/docs/_examples/031.md +2 -1
  38. data/docs/_examples/032.md +7 -5
  39. data/docs/_examples/033.md +16 -17
  40. data/docs/_examples/034.md +3 -2
  41. data/docs/_examples/035.md +35 -0
  42. data/docs/_examples/036.md +18 -0
  43. data/docs/_examples/037.md +18 -0
  44. data/docs/assets/img/000.png +0 -0
  45. data/docs/assets/img/001.png +0 -0
  46. data/docs/assets/img/002.png +0 -0
  47. data/docs/assets/img/003.png +0 -0
  48. data/docs/assets/img/004.png +0 -0
  49. data/docs/assets/img/005.png +0 -0
  50. data/docs/assets/img/006.png +0 -0
  51. data/docs/assets/img/007.png +0 -0
  52. data/docs/assets/img/008.png +0 -0
  53. data/docs/assets/img/009.png +0 -0
  54. data/docs/assets/img/010.png +0 -0
  55. data/docs/assets/img/011.png +0 -0
  56. data/docs/assets/img/012.png +0 -0
  57. data/docs/assets/img/013.png +0 -0
  58. data/docs/assets/img/014.png +0 -0
  59. data/docs/assets/img/015.png +0 -0
  60. data/docs/assets/img/016.png +0 -0
  61. data/docs/assets/img/017.png +0 -0
  62. data/docs/assets/img/018.png +0 -0
  63. data/docs/assets/img/019.png +0 -0
  64. data/docs/assets/img/020.png +0 -0
  65. data/docs/assets/img/021.png +0 -0
  66. data/docs/assets/img/022.png +0 -0
  67. data/docs/assets/img/023.png +0 -0
  68. data/docs/assets/img/024.png +0 -0
  69. data/docs/assets/img/025.png +0 -0
  70. data/docs/assets/img/026.png +0 -0
  71. data/docs/assets/img/027.png +0 -0
  72. data/docs/assets/img/028.png +0 -0
  73. data/docs/assets/img/029.png +0 -0
  74. data/docs/assets/img/030.png +0 -0
  75. data/docs/assets/img/031.png +0 -0
  76. data/docs/assets/img/032.png +0 -0
  77. data/docs/assets/img/033.png +0 -0
  78. data/docs/assets/img/034.png +0 -0
  79. data/docs/assets/img/035.png +0 -0
  80. data/docs/assets/img/036.png +0 -0
  81. data/docs/assets/img/037.png +0 -0
  82. data/docs/assets/svg/000.svg +44 -38
  83. data/docs/assets/svg/001.svg +24 -18
  84. data/docs/assets/svg/002.svg +36 -30
  85. data/docs/assets/svg/003.svg +28 -22
  86. data/docs/assets/svg/004.svg +37 -31
  87. data/docs/assets/svg/005.svg +19 -13
  88. data/docs/assets/svg/006.svg +23 -17
  89. data/docs/assets/svg/007.svg +30 -24
  90. data/docs/assets/svg/008.svg +34 -28
  91. data/docs/assets/svg/009.svg +31 -25
  92. data/docs/assets/svg/010.svg +57 -51
  93. data/docs/assets/svg/011.svg +26 -20
  94. data/docs/assets/svg/012.svg +29 -23
  95. data/docs/assets/svg/013.svg +124 -118
  96. data/docs/assets/svg/014.svg +95 -89
  97. data/docs/assets/svg/015.svg +37 -31
  98. data/docs/assets/svg/016.svg +200 -194
  99. data/docs/assets/svg/017.svg +40 -34
  100. data/docs/assets/svg/018.svg +42 -36
  101. data/docs/assets/svg/019.svg +184 -178
  102. data/docs/assets/svg/020.svg +64 -58
  103. data/docs/assets/svg/021.svg +41 -35
  104. data/docs/assets/svg/022.svg +69 -63
  105. data/docs/assets/svg/023.svg +40 -34
  106. data/docs/assets/svg/024.svg +22 -16
  107. data/docs/assets/svg/025.svg +124 -118
  108. data/docs/assets/svg/026.svg +16 -10
  109. data/docs/assets/svg/027.svg +46 -40
  110. data/docs/assets/svg/028.svg +26 -20
  111. data/docs/assets/svg/029.svg +94 -88
  112. data/docs/assets/svg/030.svg +51 -45
  113. data/docs/assets/svg/031.svg +14 -8
  114. data/docs/assets/svg/032.svg +68 -49
  115. data/docs/assets/svg/033.svg +62 -55
  116. data/docs/assets/svg/034.svg +66 -60
  117. data/docs/assets/svg/035.svg +82 -0
  118. data/docs/assets/svg/036.svg +50 -0
  119. data/docs/assets/svg/037.svg +88 -0
  120. data/docs/documentation.md +4 -4
  121. data/docs/documentation_ja.md +10 -6
  122. data/docs/examples.html +1 -1
  123. data/lib/rsyntaxtree/base_graph.rb +29 -14
  124. data/lib/rsyntaxtree/element.rb +6 -11
  125. data/lib/rsyntaxtree/svg_graph.rb +52 -45
  126. data/lib/rsyntaxtree/version.rb +1 -1
  127. data/lib/rsyntaxtree.rb +13 -3
  128. data/test/example_verify_test.rb +13 -3
  129. metadata +12 -3
@@ -1,80 +1,86 @@
1
1
  <?xml version="1.0" standalone="no"?>
2
2
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
- <svg width="1353.4" height="1069.6" viewBox="-20, -20, 1373.4, 1089.6" version="1.1" xmlns="http://www.w3.org/2000/svg">
3
+ <svg width="1353.4" height="1192.8" viewBox="-20, -20, 1373.4, 1212.8" version="1.1" xmlns="http://www.w3.org/2000/svg">
4
4
  <defs>
5
5
  <marker id="arrow" markerUnits="strokeWidth" markerWidth="13.440000000000001" markerHeight="13.440000000000001" viewBox="0 0 13.440000000000001 13.440000000000001" refX="6.720000000000001" refY="0">
6
- <polyline fill="none" stroke="purple" stroke-width="1" points="0,13.440000000000001,6.720000000000001,0,13.440000000000001,13.440000000000001" />
6
+ <polyline fill="none" stroke="#CC79A7" stroke-width="1" points="0,13.440000000000001,6.720000000000001,0,13.440000000000001,13.440000000000001" />
7
7
  </marker>
8
- <marker id="arrowSolid" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="8.4" markerHeight="8.4" orient="auto-start-reverse">
9
- <path d="M 0 0 L 10 5 L 0 10 z" stroke="black"/>
8
+ <marker id="arrowForward" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="13.440000000000001" markerHeight="13.440000000000001" orient="auto-start-reverse">
9
+ <path d="M 0 0 L 10 5 L 0 10 z" fill="#D55E00"/>
10
+ </marker>
11
+ <marker id="arrowBackward" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="13.440000000000001" markerHeight="13.440000000000001" orient="auto">
12
+ <path d="M 0 0 L 10 5 L 0 10 z" fill="#D55E00"/>
13
+ </marker>
14
+ <marker id="arrowBothways" viewBox="0 0 30 10" refX="15" refY="5" markerWidth="40.32" markerHeight="40.32" orient="auto">
15
+ <path d="M 0 5 L 10 0 L 10 5 L 20 5 L 20 0 L 30 5 L 20 10 L 20 5 L 10 5 L 10 10 z" fill="#D55E00"/>
10
16
  </marker>
11
17
  <pattern id="hatchBlack" x="10" y="10" width="10" height="10" patternUnits="userSpaceOnUse" patternTransform="rotate(45)">
12
18
  <line x1="0" y="0" x2="0" y2="10" stroke="black" stroke-width="4"></line>
13
19
  </pattern>
14
20
  <pattern id="hatchForNode" x="10" y="10" width="10" height="10" patternUnits="userSpaceOnUse" patternTransform="rotate(45)">
15
- <line x1="0" y="0" x2="0" y2="10" stroke="blue" stroke-width="4"></line>
21
+ <line x1="0" y="0" x2="0" y2="10" stroke="#0072B2" stroke-width="4"></line>
16
22
  </pattern>
17
23
  <pattern id="hatchForLeaf" x="10" y="10" width="10" height="10" patternUnits="userSpaceOnUse" patternTransform="rotate(45)">
18
- <line x1="0" y="0" x2="0" y2="10" stroke="green" stroke-width="4"></line>
24
+ <line x1="0" y="0" x2="0" y2="10" stroke="#009E73" stroke-width="4"></line>
19
25
  </pattern>
20
26
  </defs>
21
- <rect x="-20" y="-20" width="1373.4" height="1089.6" stroke="none" fill="white" />"
22
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='637.5625000000001' y='132.0'><tspan x='637.5625000000001' y='132.0' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">A</tspan>
27
+ <rect x="-20" y="-20" width="1373.4" height="1212.8" stroke="none" fill="white" />"
28
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='637.5625000000001' y='132.0'><tspan x='637.5625000000001' y='132.0' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">A</tspan>
23
29
  </text>
24
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='287.57500000000005' y='431.2'><tspan x='287.57500000000005' y='431.2' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">B</tspan>
30
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='287.57500000000005' y='431.2'><tspan x='287.57500000000005' y='431.2' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">B</tspan>
25
31
  </text>
26
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='121.30000000000007' y='730.4'><tspan x='121.30000000000007' y='730.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">D</tspan>
32
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='121.30000000000007' y='774.4'><tspan x='121.30000000000007' y='774.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">D</tspan>
27
33
  </text>
28
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='33.60000000000002' y='1029.6'><tspan x='33.60000000000002' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">H</tspan>
34
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='33.60000000000002' y='1117.6'><tspan x='33.60000000000002' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">H</tspan>
29
35
  </text>
30
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='219.0' y='1029.6'><tspan x='219.0' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">I</tspan>
36
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='219.0' y='1117.6'><tspan x='219.0' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">I</tspan>
31
37
  </text>
32
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='452.35' y='730.4'><tspan x='452.35' y='730.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">E</tspan>
38
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='452.35' y='774.4'><tspan x='452.35' y='774.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">E</tspan>
33
39
  </text>
34
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='376.40000000000003' y='1029.6'><tspan x='376.40000000000003' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">J</tspan>
40
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='376.40000000000003' y='1117.6'><tspan x='376.40000000000003' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">J</tspan>
35
41
  </text>
36
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='533.8000000000001' y='1029.6'><tspan x='533.8000000000001' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">K</tspan>
42
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='533.8000000000001' y='1117.6'><tspan x='533.8000000000001' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">K</tspan>
37
43
  </text>
38
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='993.0500000000002' y='431.2'><tspan x='993.0500000000002' y='431.2' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">C</tspan>
44
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='993.0500000000002' y='431.2'><tspan x='993.0500000000002' y='431.2' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">C</tspan>
39
45
  </text>
40
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='807.4000000000001' y='730.4'><tspan x='807.4000000000001' y='730.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">F</tspan>
46
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='807.4000000000001' y='774.4'><tspan x='807.4000000000001' y='774.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">F</tspan>
41
47
  </text>
42
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='714.2' y='1029.6'><tspan x='714.2' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">L</tspan>
48
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='714.2' y='1117.6'><tspan x='714.2' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">L</tspan>
43
49
  </text>
44
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='888.6000000000001' y='1029.6'><tspan x='888.6000000000001' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">M</tspan>
50
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='888.6000000000001' y='1117.6'><tspan x='888.6000000000001' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">M</tspan>
45
51
  </text>
46
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='1175.7000000000003' y='730.4'><tspan x='1175.7000000000003' y='730.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">G</tspan>
52
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='1175.7000000000003' y='774.4'><tspan x='1175.7000000000003' y='774.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">G</tspan>
47
53
  </text>
48
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='1083.0' y='1029.6'><tspan x='1083.0' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">N</tspan>
54
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='1083.0' y='1117.6'><tspan x='1083.0' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">N</tspan>
49
55
  </text>
50
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='1266.4' y='1029.6'><tspan x='1266.4' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">O</tspan>
56
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='1266.4' y='1117.6'><tspan x='1266.4' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">O</tspan>
51
57
  </text>
52
58
  <polyline style='stroke:black; stroke-width:2; fill:none;'
53
59
  points='308.57500000000005 321.2 308.57500000000005 254.1 660.5625000000001 254.1 660.5625000000001 187.0' />
54
60
  <polyline style='stroke:black; stroke-width:2; fill:none;'
55
61
  points='1012.5500000000002 321.2 1012.5500000000002 254.1 660.5625000000001 254.1 660.5625000000001 187.0' />
56
62
  <polyline style='stroke:black; stroke-width:2; fill:none;'
57
- points='144.80000000000007 620.4 144.80000000000007 553.3 308.57500000000005 553.3 308.57500000000005 486.2' />
63
+ points='144.80000000000007 664.4 144.80000000000007 575.3 308.57500000000005 575.3 308.57500000000005 486.2' />
58
64
  <polyline style='stroke:black; stroke-width:2; fill:none;'
59
- points='472.35 620.4 472.35 553.3 308.57500000000005 553.3 308.57500000000005 486.2' />
65
+ points='472.35 664.4 472.35 575.3 308.57500000000005 575.3 308.57500000000005 486.2' />
60
66
  <polyline style='stroke:black; stroke-width:2; fill:none;'
61
- points='59.10000000000002 919.6 59.10000000000002 852.5 144.80000000000007 852.5 144.80000000000007 785.4' />
67
+ points='59.10000000000002 1007.5999999999999 59.10000000000002 918.5 144.80000000000007 918.5 144.80000000000007 829.4' />
62
68
  <polyline style='stroke:black; stroke-width:2; fill:none;'
63
- points='230.5 919.6 230.5 852.5 144.80000000000007 852.5 144.80000000000007 785.4' />
69
+ points='230.5 1007.5999999999999 230.5 918.5 144.80000000000007 918.5 144.80000000000007 829.4' />
64
70
  <polyline style='stroke:black; stroke-width:2; fill:none;'
65
- points='387.90000000000003 919.6 387.90000000000003 852.5 472.35 852.5 472.35 785.4' />
71
+ points='387.90000000000003 1007.5999999999999 387.90000000000003 918.5 472.35 918.5 472.35 829.4' />
66
72
  <polyline style='stroke:black; stroke-width:2; fill:none;'
67
- points='556.8000000000001 919.6 556.8000000000001 852.5 472.35 852.5 472.35 785.4' />
73
+ points='556.8000000000001 1007.5999999999999 556.8000000000001 918.5 472.35 918.5 472.35 829.4' />
68
74
  <polyline style='stroke:black; stroke-width:2; fill:none;'
69
- points='826.4000000000001 620.4 826.4000000000001 553.3 1012.5500000000002 553.3 1012.5500000000002 486.2' />
75
+ points='826.4000000000001 664.4 826.4000000000001 575.3 1012.5500000000002 575.3 1012.5500000000002 486.2' />
70
76
  <polyline style='stroke:black; stroke-width:2; fill:none;'
71
- points='1198.7000000000003 620.4 1198.7000000000003 553.3 1012.5500000000002 553.3 1012.5500000000002 486.2' />
77
+ points='1198.7000000000003 664.4 1198.7000000000003 575.3 1012.5500000000002 575.3 1012.5500000000002 486.2' />
72
78
  <polyline style='stroke:black; stroke-width:2; fill:none;'
73
- points='734.2 919.6 734.2 852.5 826.4000000000001 852.5 826.4000000000001 785.4' />
79
+ points='734.2 1007.5999999999999 734.2 918.5 826.4000000000001 918.5 826.4000000000001 829.4' />
74
80
  <polyline style='stroke:black; stroke-width:2; fill:none;'
75
- points='918.6000000000001 919.6 918.6000000000001 852.5 826.4000000000001 852.5 826.4000000000001 785.4' />
81
+ points='918.6000000000001 1007.5999999999999 918.6000000000001 918.5 826.4000000000001 918.5 826.4000000000001 829.4' />
76
82
  <polyline style='stroke:black; stroke-width:2; fill:none;'
77
- points='1107.5 919.6 1107.5 852.5 1198.7000000000003 852.5 1198.7000000000003 785.4' />
83
+ points='1107.5 1007.5999999999999 1107.5 918.5 1198.7000000000003 918.5 1198.7000000000003 829.4' />
78
84
  <polyline style='stroke:black; stroke-width:2; fill:none;'
79
- points='1289.9 919.6 1289.9 852.5 1198.7000000000003 852.5 1198.7000000000003 785.4' />
85
+ points='1289.9 1007.5999999999999 1289.9 918.5 1198.7000000000003 918.5 1198.7000000000003 829.4' />
80
86
  </svg>
@@ -1,69 +1,75 @@
1
1
  <?xml version="1.0" standalone="no"?>
2
2
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
- <svg width="2166.6" height="1668.0000000000002" viewBox="-20, -20, 2186.6, 1688.0000000000002" version="1.1" xmlns="http://www.w3.org/2000/svg">
3
+ <svg width="2166.6" height="1879.2" viewBox="-20, -20, 2186.6, 1899.2" version="1.1" xmlns="http://www.w3.org/2000/svg">
4
4
  <defs>
5
5
  <marker id="arrow" markerUnits="strokeWidth" markerWidth="13.440000000000001" markerHeight="13.440000000000001" viewBox="0 0 13.440000000000001 13.440000000000001" refX="6.720000000000001" refY="0">
6
- <polyline fill="none" stroke="purple" stroke-width="1" points="0,13.440000000000001,6.720000000000001,0,13.440000000000001,13.440000000000001" />
6
+ <polyline fill="none" stroke="#CC79A7" stroke-width="1" points="0,13.440000000000001,6.720000000000001,0,13.440000000000001,13.440000000000001" />
7
7
  </marker>
8
- <marker id="arrowSolid" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="8.4" markerHeight="8.4" orient="auto-start-reverse">
9
- <path d="M 0 0 L 10 5 L 0 10 z" stroke="black"/>
8
+ <marker id="arrowForward" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="13.440000000000001" markerHeight="13.440000000000001" orient="auto-start-reverse">
9
+ <path d="M 0 0 L 10 5 L 0 10 z" fill="#D55E00"/>
10
+ </marker>
11
+ <marker id="arrowBackward" viewBox="0 0 10 10" refX="5" refY="5" markerWidth="13.440000000000001" markerHeight="13.440000000000001" orient="auto">
12
+ <path d="M 0 0 L 10 5 L 0 10 z" fill="#D55E00"/>
13
+ </marker>
14
+ <marker id="arrowBothways" viewBox="0 0 30 10" refX="15" refY="5" markerWidth="40.32" markerHeight="40.32" orient="auto">
15
+ <path d="M 0 5 L 10 0 L 10 5 L 20 5 L 20 0 L 30 5 L 20 10 L 20 5 L 10 5 L 10 10 z" fill="#D55E00"/>
10
16
  </marker>
11
17
  <pattern id="hatchBlack" x="10" y="10" width="10" height="10" patternUnits="userSpaceOnUse" patternTransform="rotate(45)">
12
18
  <line x1="0" y="0" x2="0" y2="10" stroke="black" stroke-width="4"></line>
13
19
  </pattern>
14
20
  <pattern id="hatchForNode" x="10" y="10" width="10" height="10" patternUnits="userSpaceOnUse" patternTransform="rotate(45)">
15
- <line x1="0" y="0" x2="0" y2="10" stroke="blue" stroke-width="4"></line>
21
+ <line x1="0" y="0" x2="0" y2="10" stroke="#0072B2" stroke-width="4"></line>
16
22
  </pattern>
17
23
  <pattern id="hatchForLeaf" x="10" y="10" width="10" height="10" patternUnits="userSpaceOnUse" patternTransform="rotate(45)">
18
- <line x1="0" y="0" x2="0" y2="10" stroke="green" stroke-width="4"></line>
24
+ <line x1="0" y="0" x2="0" y2="10" stroke="#009E73" stroke-width="4"></line>
19
25
  </pattern>
20
26
  </defs>
21
- <rect x="-20" y="-20" width="2186.6" height="1688.0000000000002" stroke="none" fill="white" />"
22
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='476.5937499999999' y='132.0'><tspan x='476.5937499999999' y='132.0' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">S</tspan>
27
+ <rect x="-20" y="-20" width="2186.6" height="1899.2" stroke="none" fill="white" />"
28
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='476.5937499999999' y='132.0'><tspan x='476.5937499999999' y='132.0' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">S</tspan>
23
29
  </text>
24
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='33.60000000000002' y='431.2'><tspan x='33.60000000000002' y='431.2' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">NP</tspan>
30
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='33.60000000000002' y='431.2'><tspan x='33.60000000000002' y='431.2' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">NP</tspan>
25
31
  </text>
26
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='66.10000000000002' y='730.4'><tspan x='66.10000000000002' y='730.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">I</tspan>
32
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='66.10000000000002' y='774.4'><tspan x='66.10000000000002' y='774.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">I</tspan>
27
33
  </text>
28
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='852.0874999999999' y='431.2'><tspan x='852.0874999999999' y='431.2' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">PdP</tspan>
34
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='852.0874999999999' y='431.2'><tspan x='852.0874999999999' y='431.2' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">PdP</tspan>
29
35
  </text>
30
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='467.44999999999993' y='730.4'><tspan x='467.44999999999993' y='730.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">VP</tspan>
36
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='467.44999999999993' y='774.4'><tspan x='467.44999999999993' y='774.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">VP</tspan>
31
37
  </text>
32
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='317.9999999999999' y='1029.6'><tspan x='317.9999999999999' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">V</tspan>
38
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='317.9999999999999' y='1117.6'><tspan x='317.9999999999999' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">V</tspan>
33
39
  </text>
34
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='255.9999999999999' y='1328.8000000000002'><tspan x='255.9999999999999' y='1328.8000000000002' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">knew</tspan>
40
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='255.9999999999999' y='1460.8'><tspan x='255.9999999999999' y='1460.8' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">knew</tspan>
35
41
  </text>
36
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='632.8999999999999' y='1029.6'><tspan x='632.8999999999999' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">NP</tspan>
42
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='632.8999999999999' y='1117.6'><tspan x='632.8999999999999' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">NP</tspan>
37
43
  </text>
38
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='558.3999999999999' y='1328.8000000000002'><tspan x='558.3999999999999' y='1328.8000000000002' style="font-weight: bold; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Harvey</tspan>
44
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='558.3999999999999' y='1460.8'><tspan x='558.3999999999999' y='1460.8' style="font-weight: bold; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Harvey</tspan>
39
45
  </text>
40
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='1252.225' y='730.4'><tspan x='1252.225' y='730.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Adv</tspan>
46
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='1252.225' y='774.4'><tspan x='1252.225' y='774.4' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Adv</tspan>
41
47
  </text>
42
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='929.8' y='1029.6'><tspan x='929.8' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">when</tspan>
48
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='929.8' y='1117.6'><tspan x='929.8' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">when</tspan>
43
49
  </text>
44
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='1592.6499999999996' y='1029.6'><tspan x='1592.6499999999996' y='1029.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">S</tspan>
50
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='1592.6499999999996' y='1117.6'><tspan x='1592.6499999999996' y='1117.6' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">S</tspan>
45
51
  </text>
46
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='1309.6999999999998' y='1328.8000000000002'><tspan x='1309.6999999999998' y='1328.8000000000002' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">NP</tspan>
52
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='1309.6999999999998' y='1460.8'><tspan x='1309.6999999999998' y='1460.8' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">NP</tspan>
47
53
  </text>
48
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='1235.1999999999998' y='1628.0000000000002'><tspan x='1235.1999999999998' y='1628.0000000000002' style="font-weight: bold; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Harvey</tspan>
54
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='1235.1999999999998' y='1804.0'><tspan x='1235.1999999999998' y='1804.0' style="font-weight: bold; " text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">Harvey</tspan>
49
55
  </text>
50
- <text white-space='pre' alignment-baseline='text-top' style='fill: blue; font-size: 64px;' x='1808.1' y='1328.8000000000002'><tspan x='1808.1' y='1328.8000000000002' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">PdP</tspan>
56
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #0072B2; font-size: 64px;' x='1808.1' y='1460.8'><tspan x='1808.1' y='1460.8' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">PdP</tspan>
51
57
  </text>
52
- <text white-space='pre' alignment-baseline='text-top' style='fill: green; font-size: 64px;' x='1606.6' y='1628.0000000000002'><tspan x='1606.6' y='1628.0000000000002' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">was<tspan style='fill:none;'>■</tspan>a<tspan style='fill:none;'>■</tspan>little<tspan style='fill:none;'>■</tspan>boy</tspan>
58
+ <text white-space='pre' alignment-baseline='text-top' style='fill: #009E73; font-size: 64px;' x='1606.6' y='1804.0'><tspan x='1606.6' y='1804.0' style="" text-decoration="" font-family="'Noto Serif', 'Noto Serif JP', OpenMoji, 'OpenMoji Color', 'OpenMoji Black', serif">was<tspan style='fill:none;'>■</tspan>a<tspan style='fill:none;'>■</tspan>little<tspan style='fill:none;'>■</tspan>boy</tspan>
53
59
  </text>
54
60
  <line style='stroke:black; stroke-width:2;' x1='77.60000000000002' y1='321.2' x2='494.0937499999999' y2='187.0' />
55
61
  <line style='stroke:black; stroke-width:2;' x1='910.5874999999999' y1='321.2' x2='494.0937499999999' y2='187.0' />
56
- <line style='stroke:black; stroke-width:2;' x1='77.60000000000002' y1='620.4' x2='77.60000000000002' y2='486.2' />
57
- <line style='stroke:black; stroke-width:2;' x1='508.44999999999993' y1='620.4' x2='910.5874999999999' y2='486.2' />
58
- <line style='stroke:black; stroke-width:2;' x1='1312.725' y1='620.4' x2='910.5874999999999' y2='486.2' />
59
- <line style='stroke:black; stroke-width:2;' x1='339.9999999999999' y1='919.6' x2='508.44999999999993' y2='785.4' />
60
- <line style='stroke:black; stroke-width:2;' x1='676.8999999999999' y1='919.6' x2='508.44999999999993' y2='785.4' />
61
- <line style='stroke:black; stroke-width:2;' x1='339.9999999999999' y1='1218.8000000000002' x2='339.9999999999999' y2='1084.6' />
62
- <line style='stroke:black; stroke-width:2;' x1='676.8999999999999' y1='1218.8000000000002' x2='676.8999999999999' y2='1084.6' />
63
- <line style='stroke:black; stroke-width:2;' x1='1015.3' y1='919.6' x2='1312.725' y2='785.4' />
64
- <line style='stroke:black; stroke-width:2;' x1='1610.1499999999996' y1='919.6' x2='1312.725' y2='785.4' />
65
- <line style='stroke:black; stroke-width:2;' x1='1353.6999999999998' y1='1218.8000000000002' x2='1610.1499999999996' y2='1084.6' />
66
- <line style='stroke:black; stroke-width:2;' x1='1866.6' y1='1218.8000000000002' x2='1610.1499999999996' y2='1084.6' />
67
- <line style='stroke:black; stroke-width:2;' x1='1353.6999999999998' y1='1518.0000000000002' x2='1353.6999999999998' y2='1383.8000000000002' />
68
- <polygon style='fill: none; stroke: black; stroke-width:2;' points='1606.6 1518.0000000000002 2126.6 1518.0000000000002 1866.6 1383.8000000000002' />
62
+ <line style='stroke:black; stroke-width:2;' x1='77.60000000000002' y1='664.4' x2='77.60000000000002' y2='486.2' />
63
+ <line style='stroke:black; stroke-width:2;' x1='508.44999999999993' y1='664.4' x2='910.5874999999999' y2='486.2' />
64
+ <line style='stroke:black; stroke-width:2;' x1='1312.725' y1='664.4' x2='910.5874999999999' y2='486.2' />
65
+ <line style='stroke:black; stroke-width:2;' x1='339.9999999999999' y1='1007.5999999999999' x2='508.44999999999993' y2='829.4' />
66
+ <line style='stroke:black; stroke-width:2;' x1='676.8999999999999' y1='1007.5999999999999' x2='508.44999999999993' y2='829.4' />
67
+ <line style='stroke:black; stroke-width:2;' x1='339.9999999999999' y1='1350.8' x2='339.9999999999999' y2='1172.6' />
68
+ <line style='stroke:black; stroke-width:2;' x1='676.8999999999999' y1='1350.8' x2='676.8999999999999' y2='1172.6' />
69
+ <line style='stroke:black; stroke-width:2;' x1='1015.3' y1='1007.5999999999999' x2='1312.725' y2='829.4' />
70
+ <line style='stroke:black; stroke-width:2;' x1='1610.1499999999996' y1='1007.5999999999999' x2='1312.725' y2='829.4' />
71
+ <line style='stroke:black; stroke-width:2;' x1='1353.6999999999998' y1='1350.8' x2='1610.1499999999996' y2='1172.6' />
72
+ <line style='stroke:black; stroke-width:2;' x1='1866.6' y1='1350.8' x2='1610.1499999999996' y2='1172.6' />
73
+ <line style='stroke:black; stroke-width:2;' x1='1353.6999999999998' y1='1694.0' x2='1353.6999999999998' y2='1515.8' />
74
+ <polygon style='fill: none; stroke: black; stroke-width:2;' points='1606.6 1694.0 2126.6 1694.0 1866.6 1515.8' />
69
75
  </svg>