diff --git a/README.md b/README.md index 5b78319..1b493f6 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # BLAS libraries benchmarks Andrzej Wójtowicz -Document generation date: 2016-06-03 15:36:31 +Document generation date: 2016-06-06 15:01:42 @@ -9,6 +9,7 @@ Document generation date: 2016-06-03 15:36:31 1. [Configuration](#configuration) 2. [Results per host](#results-per-host) + * [Intel Core i7-4790K + MSI GeForce GTX 980 Ti Lightning](#intel-core-i7-4790k--msi-geforce-gtx-980-ti) * [Intel Core i5-4590 + NVIDIA GeForce GT 430](#intel-core-i5-4590--nvidia-geforce-gt-430) * [Intel Core i5-4590 + NVIDIA GeForce GTX 750 Ti](#intel-core-i5-4590--nvidia-geforce-gtx-750-ti) * [Intel Core i5-3570](#intel-core-i5-3570) @@ -30,7 +31,7 @@ Document generation date: 2016-06-03 15:36:31 ## Configuration -**R software**: [Microsoft R Open](https://mran.microsoft.com/open/) (3.2.4). +**R software**: [Microsoft R Open](https://mran.microsoft.com/open/) (3.2.4) **Libraries**: @@ -46,15 +47,16 @@ Document generation date: 2016-06-03 15:36:31 |No.|CPU|GPU| |---|---|---| -|1.|[Intel Core i5-4590](http://ark.intel.com/products/80815/Intel-Core-i5-4590-Processor-6M-Cache-up-to-3_70-GHz)|[NVIDIA GeForce GT 430](http://www.geforce.com/hardware/desktop-gpus/geforce-gt-430/specifications)| -|2.|[Intel Core i5-4590](http://ark.intel.com/products/80815/Intel-Core-i5-4590-Processor-6M-Cache-up-to-3_70-GHz)|[NVIDIA GeForce GTX 750 Ti](http://www.geforce.com/hardware/desktop-gpus/geforce-gtx-750-ti/specifications)| -|3.|[Intel Core i5-3570](http://ark.intel.com/products/65702/Intel-Core-i5-3570-Processor-6M-Cache-up-to-3_80-GHz)| - | -|4.|[Intel Core i3-2120](http://ark.intel.com/products/53426/Intel-Core-i3-2120-Processor-3M-Cache-3_30-GHz)| - | -|5.|[Intel Core i3-3120M](http://ark.intel.com/products/71465/Intel-Core-i3-3120M-Processor-3M-Cache-2_50-GHz)| - | -|6.|[Intel Core i5-3317U](http://ark.intel.com/products/65707/Intel-Core-i5-3317U-Processor-3M-Cache-up-to-2_60-GHz)|[NVIDIA GeForce GT 630M](http://www.geforce.com/hardware/notebook-gpus/geforce-gt-630m/specifications)| -|7.|[Intel Pentium Dual-Core E5300](http://ark.intel.com/products/35300/Intel-Pentium-Processor-E5300-2M-Cache-2_60-GHz-800-MHz-FSB)| - | +|1.|[Intel Core i7-4790K](http://ark.intel.com/products/80807/Intel-Core-i7-4790K-Processor-8M-Cache-up-to-4_40-GHz)|[MSI GeForce GTX 980 Ti Lightning](https://us.msi.com/Graphics-card/GTX-980-Ti-LIGHTNING.html#hero-specification)| +|2.|[Intel Core i5-4590](http://ark.intel.com/products/80815/Intel-Core-i5-4590-Processor-6M-Cache-up-to-3_70-GHz)|[NVIDIA GeForce GT 430](http://www.geforce.com/hardware/desktop-gpus/geforce-gt-430/specifications)| +|3.|[Intel Core i5-4590](http://ark.intel.com/products/80815/Intel-Core-i5-4590-Processor-6M-Cache-up-to-3_70-GHz)|[NVIDIA GeForce GTX 750 Ti](http://www.geforce.com/hardware/desktop-gpus/geforce-gtx-750-ti/specifications)| +|4.|[Intel Core i5-3570](http://ark.intel.com/products/65702/Intel-Core-i5-3570-Processor-6M-Cache-up-to-3_80-GHz)| - | +|5.|[Intel Core i3-2120](http://ark.intel.com/products/53426/Intel-Core-i3-2120-Processor-3M-Cache-3_30-GHz)| - | +|6.|[Intel Core i3-3120M](http://ark.intel.com/products/71465/Intel-Core-i3-3120M-Processor-3M-Cache-2_50-GHz)| - | +|7.|[Intel Core i5-3317U](http://ark.intel.com/products/65707/Intel-Core-i5-3317U-Processor-3M-Cache-up-to-2_60-GHz)|[NVIDIA GeForce GT 630M](http://www.geforce.com/hardware/notebook-gpus/geforce-gt-630m/specifications)| +|8.|[Intel Pentium Dual-Core E5300](http://ark.intel.com/products/35300/Intel-Pentium-Processor-E5300-2M-Cache-2_60-GHz-800-MHz-FSB)| - | -**Benchmarks**: [Urbanek](http://r.research.att.com/benchmarks/R-benchmark-25.R), [Revolution](https://gist.github.com/andrie/24c9672f1ea39af89c66#file-rro-mkl-benchmark-r), [Gcbd](https://cran.r-project.org/web/packages/gcbd/vignettes/gcbd.pdf). +**Benchmarks**: [R-benchmark-25](http://r.research.att.com/benchmarks/R-benchmark-25.R), [Revolution](https://gist.github.com/andrie/24c9672f1ea39af89c66#file-rro-mkl-benchmark-r), [Gcbd](https://cran.r-project.org/web/packages/gcbd/vignettes/gcbd.pdf). @@ -62,11 +64,11 @@ Document generation date: 2016-06-03 15:36:31 # Results per host -## Intel Core i5-4590 + NVIDIA GeForce GT 430 +## Intel Core i7-4790K + MSI GeForce GTX 980 Ti Lightning -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -76,7 +78,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -84,7 +86,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -200,11 +202,11 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -## Intel Core i5-4590 + NVIDIA GeForce GTX 750 Ti +## Intel Core i5-4590 + NVIDIA GeForce GT 430 -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -214,7 +216,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -222,7 +224,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -338,11 +340,11 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -## Intel Core i5-3570 +## Intel Core i5-4590 + NVIDIA GeForce GTX 750 Ti -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -352,7 +354,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -360,7 +362,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -476,11 +478,11 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -## Intel Core i3-2120 +## Intel Core i5-3570 -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -490,7 +492,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -498,7 +500,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -614,11 +616,11 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -## Intel Core i3-3120M +## Intel Core i3-2120 -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -628,7 +630,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -636,7 +638,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -752,11 +754,11 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -## Intel Core i5-3317U + NVIDIA GeForce GT 630M +## Intel Core i3-3120M -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -766,7 +768,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -774,7 +776,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -890,11 +892,11 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -## Intel Pentium Dual-Core E5300 +## Intel Core i5-3317U + NVIDIA GeForce GT 630M -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -904,7 +906,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -912,9 +914,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix - -BLIS hangs in this test +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -1030,6 +1030,146 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to +## Intel Pentium Dual-Core E5300 + + + +### R-benchmark-25 + +#### 2800x2800 cross-product matrix + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b1_t1.png) + + + +#### Linear regr. over a 2000x2000 matrix + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b1_t2.png) + + + +#### Eigenvalues of a 600x600 random matrix + +BLIS hangs in this test + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b1_t3.png) + + + +#### Determinant of a 2500x2500 random matrix + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b1_t4.png) + + + +#### Cholesky decomposition of a 3000x3000 matrix + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b1_t5.png) + + + +#### Inverse of a 1600x1600 random matrix + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b1_t6.png) + + + +#### Escoufier's method on a 45x45 matrix + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b1_t7.png) + + + +### Revolution benchmark + +#### Matrix Multiply + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b2_t1.png) + + + +#### Cholesky Factorization + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b2_t2.png) + + + +#### Singular Value Deomposition + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b2_t3.png) + + + +#### Principal Components Analysis + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b2_t4.png) + + + +#### Linear Discriminant Analysis + +Time in seconds - 10 runs - lower is better + +![](gen/img/img_ph_h8_b2_t5.png) + + + +### Gcbd benchmark + +#### Matrix Multiply + +Time in seconds regarding matrix size - right panel on log scale - from 50 to 5 runs - lower is better + +![](gen/img/img_ph_h8_b3_t1.png)![](gen/img/img_ph_h8_b3_t1b.png) + + + +#### QR Decomposition + +Time in seconds regarding matrix size - right panel on log scale - from 50 to 5 runs - lower is better + +![](gen/img/img_ph_h8_b3_t2.png)![](gen/img/img_ph_h8_b3_t2b.png) + + + +#### Singular Value Deomposition + +Time in seconds regarding matrix size - right panel on log scale - from 50 to 5 runs - lower is better + +![](gen/img/img_ph_h8_b3_t3.png)![](gen/img/img_ph_h8_b3_t3b.png) + + + +#### Triangular Decomposition + +Time in seconds regarding matrix size - right panel on log scale - from 50 to 5 runs - lower is better + +![](gen/img/img_ph_h8_b3_t4.png)![](gen/img/img_ph_h8_b3_t4b.png) + + + # Results per library @@ -1037,7 +1177,7 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -1047,7 +1187,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -1055,7 +1195,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -1175,7 +1315,7 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -1185,7 +1325,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -1193,7 +1333,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -1313,7 +1453,7 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -1323,7 +1463,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -1331,7 +1471,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -1451,7 +1591,7 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -1461,7 +1601,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -1469,7 +1609,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -1589,7 +1729,7 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -1599,7 +1739,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -1607,7 +1747,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -1727,7 +1867,7 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -1737,7 +1877,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -1745,7 +1885,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better @@ -1865,7 +2005,7 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -1875,7 +2015,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -1883,7 +2023,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Intel Pentium Dual-Core E5300 hangs in this test @@ -2005,7 +2145,7 @@ Time in seconds regarding matrix size - right panel on log scale - from 50 to -### Urbanek benchmark +### R-benchmark-25 #### 2800x2800 cross-product matrix @@ -2015,7 +2155,7 @@ Time in seconds - 10 runs - lower is better -#### Linear regr. over a 3000x3000 matrix +#### Linear regr. over a 2000x2000 matrix Time in seconds - 10 runs - lower is better @@ -2023,7 +2163,7 @@ Time in seconds - 10 runs - lower is better -#### Eigenvalues of a 640x640 random matrix +#### Eigenvalues of a 600x600 random matrix Time in seconds - 10 runs - lower is better diff --git a/gen/data/benchmark.results.rds b/gen/data/benchmark.results.rds index a836bde..124b69d 100644 Binary files a/gen/data/benchmark.results.rds and b/gen/data/benchmark.results.rds differ diff --git a/gen/data/hosts.info.rds b/gen/data/hosts.info.rds index e6191ec..4548918 100644 Binary files a/gen/data/hosts.info.rds and b/gen/data/hosts.info.rds differ diff --git a/gen/img/img_ph_h1_b1_t1.png b/gen/img/img_ph_h1_b1_t1.png index 18333bd..aeb3347 100644 Binary files a/gen/img/img_ph_h1_b1_t1.png and b/gen/img/img_ph_h1_b1_t1.png differ diff --git a/gen/img/img_ph_h1_b1_t2.png b/gen/img/img_ph_h1_b1_t2.png index 20092af..013f2df 100644 Binary files a/gen/img/img_ph_h1_b1_t2.png and b/gen/img/img_ph_h1_b1_t2.png differ diff --git a/gen/img/img_ph_h1_b1_t3.png b/gen/img/img_ph_h1_b1_t3.png index 810cdf3..eb96c00 100644 Binary files a/gen/img/img_ph_h1_b1_t3.png and b/gen/img/img_ph_h1_b1_t3.png differ diff --git a/gen/img/img_ph_h1_b1_t4.png b/gen/img/img_ph_h1_b1_t4.png index 6583347..d97404b 100644 Binary files a/gen/img/img_ph_h1_b1_t4.png and b/gen/img/img_ph_h1_b1_t4.png differ diff --git a/gen/img/img_ph_h1_b1_t5.png b/gen/img/img_ph_h1_b1_t5.png index 4b88678..5ca48f6 100644 Binary files a/gen/img/img_ph_h1_b1_t5.png and b/gen/img/img_ph_h1_b1_t5.png differ diff --git a/gen/img/img_ph_h1_b1_t6.png b/gen/img/img_ph_h1_b1_t6.png index 1d0ccce..7ab7191 100644 Binary files a/gen/img/img_ph_h1_b1_t6.png and b/gen/img/img_ph_h1_b1_t6.png differ diff --git a/gen/img/img_ph_h1_b1_t7.png b/gen/img/img_ph_h1_b1_t7.png index 262e65b..87b983e 100644 Binary files a/gen/img/img_ph_h1_b1_t7.png and b/gen/img/img_ph_h1_b1_t7.png differ diff --git a/gen/img/img_ph_h1_b2_t1.png b/gen/img/img_ph_h1_b2_t1.png index d999259..27ed66c 100644 Binary files a/gen/img/img_ph_h1_b2_t1.png and b/gen/img/img_ph_h1_b2_t1.png differ diff --git a/gen/img/img_ph_h1_b2_t2.png b/gen/img/img_ph_h1_b2_t2.png index 23e16b4..c83e1f2 100644 Binary files a/gen/img/img_ph_h1_b2_t2.png and b/gen/img/img_ph_h1_b2_t2.png differ diff --git a/gen/img/img_ph_h1_b2_t3.png b/gen/img/img_ph_h1_b2_t3.png index c008b18..970d8a0 100644 Binary files a/gen/img/img_ph_h1_b2_t3.png and b/gen/img/img_ph_h1_b2_t3.png differ diff --git a/gen/img/img_ph_h1_b2_t4.png b/gen/img/img_ph_h1_b2_t4.png index a6cd916..00b3e1b 100644 Binary files a/gen/img/img_ph_h1_b2_t4.png and b/gen/img/img_ph_h1_b2_t4.png differ diff --git a/gen/img/img_ph_h1_b2_t5.png b/gen/img/img_ph_h1_b2_t5.png index 651d418..4a9f86c 100644 Binary files a/gen/img/img_ph_h1_b2_t5.png and b/gen/img/img_ph_h1_b2_t5.png differ diff --git a/gen/img/img_ph_h1_b3_t1.png b/gen/img/img_ph_h1_b3_t1.png index ae66014..8babce3 100644 Binary files a/gen/img/img_ph_h1_b3_t1.png and b/gen/img/img_ph_h1_b3_t1.png differ diff --git a/gen/img/img_ph_h1_b3_t1b.png b/gen/img/img_ph_h1_b3_t1b.png index 565bd4a..4c10f78 100644 Binary files a/gen/img/img_ph_h1_b3_t1b.png and b/gen/img/img_ph_h1_b3_t1b.png differ diff --git a/gen/img/img_ph_h1_b3_t2.png b/gen/img/img_ph_h1_b3_t2.png index d31fabb..cb6b670 100644 Binary files a/gen/img/img_ph_h1_b3_t2.png and b/gen/img/img_ph_h1_b3_t2.png differ diff --git a/gen/img/img_ph_h1_b3_t2b.png b/gen/img/img_ph_h1_b3_t2b.png index 34f6bc0..06a3d9d 100644 Binary files a/gen/img/img_ph_h1_b3_t2b.png and b/gen/img/img_ph_h1_b3_t2b.png differ diff --git a/gen/img/img_ph_h1_b3_t3.png b/gen/img/img_ph_h1_b3_t3.png index 78461c3..f621df9 100644 Binary files a/gen/img/img_ph_h1_b3_t3.png and b/gen/img/img_ph_h1_b3_t3.png differ diff --git a/gen/img/img_ph_h1_b3_t3b.png b/gen/img/img_ph_h1_b3_t3b.png index 09f0ae6..f97e310 100644 Binary files a/gen/img/img_ph_h1_b3_t3b.png and b/gen/img/img_ph_h1_b3_t3b.png differ diff --git a/gen/img/img_ph_h1_b3_t4.png b/gen/img/img_ph_h1_b3_t4.png index c258288..058d2b6 100644 Binary files a/gen/img/img_ph_h1_b3_t4.png and b/gen/img/img_ph_h1_b3_t4.png differ diff --git a/gen/img/img_ph_h1_b3_t4b.png b/gen/img/img_ph_h1_b3_t4b.png index cc26a10..df71301 100644 Binary files a/gen/img/img_ph_h1_b3_t4b.png and b/gen/img/img_ph_h1_b3_t4b.png differ diff --git a/gen/img/img_ph_h2_b1_t1.png b/gen/img/img_ph_h2_b1_t1.png index 9b44c49..18333bd 100644 Binary files a/gen/img/img_ph_h2_b1_t1.png and b/gen/img/img_ph_h2_b1_t1.png differ diff --git a/gen/img/img_ph_h2_b1_t2.png b/gen/img/img_ph_h2_b1_t2.png index de06de1..20092af 100644 Binary files a/gen/img/img_ph_h2_b1_t2.png and b/gen/img/img_ph_h2_b1_t2.png differ diff --git a/gen/img/img_ph_h2_b1_t3.png b/gen/img/img_ph_h2_b1_t3.png index 75636ae..810cdf3 100644 Binary files a/gen/img/img_ph_h2_b1_t3.png and b/gen/img/img_ph_h2_b1_t3.png differ diff --git a/gen/img/img_ph_h2_b1_t4.png b/gen/img/img_ph_h2_b1_t4.png index 790e094..6583347 100644 Binary files a/gen/img/img_ph_h2_b1_t4.png and b/gen/img/img_ph_h2_b1_t4.png differ diff --git a/gen/img/img_ph_h2_b1_t5.png b/gen/img/img_ph_h2_b1_t5.png index 0f083b4..4b88678 100644 Binary files a/gen/img/img_ph_h2_b1_t5.png and b/gen/img/img_ph_h2_b1_t5.png differ diff --git a/gen/img/img_ph_h2_b1_t6.png b/gen/img/img_ph_h2_b1_t6.png index 53a3d9b..1d0ccce 100644 Binary files a/gen/img/img_ph_h2_b1_t6.png and b/gen/img/img_ph_h2_b1_t6.png differ diff --git a/gen/img/img_ph_h2_b1_t7.png b/gen/img/img_ph_h2_b1_t7.png index 6969007..262e65b 100644 Binary files a/gen/img/img_ph_h2_b1_t7.png and b/gen/img/img_ph_h2_b1_t7.png differ diff --git a/gen/img/img_ph_h2_b2_t1.png b/gen/img/img_ph_h2_b2_t1.png index 5211822..d999259 100644 Binary files a/gen/img/img_ph_h2_b2_t1.png and b/gen/img/img_ph_h2_b2_t1.png differ diff --git a/gen/img/img_ph_h2_b2_t2.png b/gen/img/img_ph_h2_b2_t2.png index f717732..23e16b4 100644 Binary files a/gen/img/img_ph_h2_b2_t2.png and b/gen/img/img_ph_h2_b2_t2.png differ diff --git a/gen/img/img_ph_h2_b2_t3.png b/gen/img/img_ph_h2_b2_t3.png index 34ed838..c008b18 100644 Binary files a/gen/img/img_ph_h2_b2_t3.png and b/gen/img/img_ph_h2_b2_t3.png differ diff --git a/gen/img/img_ph_h2_b2_t4.png b/gen/img/img_ph_h2_b2_t4.png index 5bfb8b4..a6cd916 100644 Binary files a/gen/img/img_ph_h2_b2_t4.png and b/gen/img/img_ph_h2_b2_t4.png differ diff --git a/gen/img/img_ph_h2_b2_t5.png b/gen/img/img_ph_h2_b2_t5.png index 9659690..651d418 100644 Binary files a/gen/img/img_ph_h2_b2_t5.png and b/gen/img/img_ph_h2_b2_t5.png differ diff --git a/gen/img/img_ph_h2_b3_t1.png b/gen/img/img_ph_h2_b3_t1.png index 36ddbc2..ae66014 100644 Binary files a/gen/img/img_ph_h2_b3_t1.png and b/gen/img/img_ph_h2_b3_t1.png differ diff --git a/gen/img/img_ph_h2_b3_t1b.png b/gen/img/img_ph_h2_b3_t1b.png index 416a84a..565bd4a 100644 Binary files a/gen/img/img_ph_h2_b3_t1b.png and b/gen/img/img_ph_h2_b3_t1b.png differ diff --git a/gen/img/img_ph_h2_b3_t2.png b/gen/img/img_ph_h2_b3_t2.png index ad33fa8..d31fabb 100644 Binary files a/gen/img/img_ph_h2_b3_t2.png and b/gen/img/img_ph_h2_b3_t2.png differ diff --git a/gen/img/img_ph_h2_b3_t2b.png b/gen/img/img_ph_h2_b3_t2b.png index 9aa9064..34f6bc0 100644 Binary files a/gen/img/img_ph_h2_b3_t2b.png and b/gen/img/img_ph_h2_b3_t2b.png differ diff --git a/gen/img/img_ph_h2_b3_t3.png b/gen/img/img_ph_h2_b3_t3.png index 5c2e130..78461c3 100644 Binary files a/gen/img/img_ph_h2_b3_t3.png and b/gen/img/img_ph_h2_b3_t3.png differ diff --git a/gen/img/img_ph_h2_b3_t3b.png b/gen/img/img_ph_h2_b3_t3b.png index b4c6a9e..09f0ae6 100644 Binary files a/gen/img/img_ph_h2_b3_t3b.png and b/gen/img/img_ph_h2_b3_t3b.png differ diff --git a/gen/img/img_ph_h2_b3_t4.png b/gen/img/img_ph_h2_b3_t4.png index 7906064..c258288 100644 Binary files a/gen/img/img_ph_h2_b3_t4.png and b/gen/img/img_ph_h2_b3_t4.png differ diff --git a/gen/img/img_ph_h2_b3_t4b.png b/gen/img/img_ph_h2_b3_t4b.png index 4d6725c..cc26a10 100644 Binary files a/gen/img/img_ph_h2_b3_t4b.png and b/gen/img/img_ph_h2_b3_t4b.png differ diff --git a/gen/img/img_ph_h3_b1_t1.png b/gen/img/img_ph_h3_b1_t1.png index a1a2015..9b44c49 100644 Binary files a/gen/img/img_ph_h3_b1_t1.png and b/gen/img/img_ph_h3_b1_t1.png differ diff --git a/gen/img/img_ph_h3_b1_t2.png b/gen/img/img_ph_h3_b1_t2.png index ba2a84b..de06de1 100644 Binary files a/gen/img/img_ph_h3_b1_t2.png and b/gen/img/img_ph_h3_b1_t2.png differ diff --git a/gen/img/img_ph_h3_b1_t3.png b/gen/img/img_ph_h3_b1_t3.png index a6099a7..75636ae 100644 Binary files a/gen/img/img_ph_h3_b1_t3.png and b/gen/img/img_ph_h3_b1_t3.png differ diff --git a/gen/img/img_ph_h3_b1_t4.png b/gen/img/img_ph_h3_b1_t4.png index b641671..790e094 100644 Binary files a/gen/img/img_ph_h3_b1_t4.png and b/gen/img/img_ph_h3_b1_t4.png differ diff --git a/gen/img/img_ph_h3_b1_t5.png b/gen/img/img_ph_h3_b1_t5.png index 59be9ed..0f083b4 100644 Binary files a/gen/img/img_ph_h3_b1_t5.png and b/gen/img/img_ph_h3_b1_t5.png differ diff --git a/gen/img/img_ph_h3_b1_t6.png b/gen/img/img_ph_h3_b1_t6.png index 68f0d5b..53a3d9b 100644 Binary files a/gen/img/img_ph_h3_b1_t6.png and b/gen/img/img_ph_h3_b1_t6.png differ diff --git a/gen/img/img_ph_h3_b1_t7.png b/gen/img/img_ph_h3_b1_t7.png index dac4517..6969007 100644 Binary files a/gen/img/img_ph_h3_b1_t7.png and b/gen/img/img_ph_h3_b1_t7.png differ diff --git a/gen/img/img_ph_h3_b2_t1.png b/gen/img/img_ph_h3_b2_t1.png index 99a7362..5211822 100644 Binary files a/gen/img/img_ph_h3_b2_t1.png and b/gen/img/img_ph_h3_b2_t1.png differ diff --git a/gen/img/img_ph_h3_b2_t2.png b/gen/img/img_ph_h3_b2_t2.png index df3b707..f717732 100644 Binary files a/gen/img/img_ph_h3_b2_t2.png and b/gen/img/img_ph_h3_b2_t2.png differ diff --git a/gen/img/img_ph_h3_b2_t3.png b/gen/img/img_ph_h3_b2_t3.png index 68d2a64..34ed838 100644 Binary files a/gen/img/img_ph_h3_b2_t3.png and b/gen/img/img_ph_h3_b2_t3.png differ diff --git a/gen/img/img_ph_h3_b2_t4.png b/gen/img/img_ph_h3_b2_t4.png index 05fc95d..5bfb8b4 100644 Binary files a/gen/img/img_ph_h3_b2_t4.png and b/gen/img/img_ph_h3_b2_t4.png differ diff --git a/gen/img/img_ph_h3_b2_t5.png b/gen/img/img_ph_h3_b2_t5.png index 1435596..9659690 100644 Binary files a/gen/img/img_ph_h3_b2_t5.png and b/gen/img/img_ph_h3_b2_t5.png differ diff --git a/gen/img/img_ph_h3_b3_t1.png b/gen/img/img_ph_h3_b3_t1.png index 3082022..36ddbc2 100644 Binary files a/gen/img/img_ph_h3_b3_t1.png and b/gen/img/img_ph_h3_b3_t1.png differ diff --git a/gen/img/img_ph_h3_b3_t1b.png b/gen/img/img_ph_h3_b3_t1b.png index b78aa86..416a84a 100644 Binary files a/gen/img/img_ph_h3_b3_t1b.png and b/gen/img/img_ph_h3_b3_t1b.png differ diff --git a/gen/img/img_ph_h3_b3_t2.png b/gen/img/img_ph_h3_b3_t2.png index 9edfe85..ad33fa8 100644 Binary files a/gen/img/img_ph_h3_b3_t2.png and b/gen/img/img_ph_h3_b3_t2.png differ diff --git a/gen/img/img_ph_h3_b3_t2b.png b/gen/img/img_ph_h3_b3_t2b.png index 7139837..9aa9064 100644 Binary files a/gen/img/img_ph_h3_b3_t2b.png and b/gen/img/img_ph_h3_b3_t2b.png differ diff --git a/gen/img/img_ph_h3_b3_t3.png b/gen/img/img_ph_h3_b3_t3.png index 5398b00..5c2e130 100644 Binary files a/gen/img/img_ph_h3_b3_t3.png and b/gen/img/img_ph_h3_b3_t3.png differ diff --git a/gen/img/img_ph_h3_b3_t3b.png b/gen/img/img_ph_h3_b3_t3b.png index 6e84dfe..b4c6a9e 100644 Binary files a/gen/img/img_ph_h3_b3_t3b.png and b/gen/img/img_ph_h3_b3_t3b.png differ diff --git a/gen/img/img_ph_h3_b3_t4.png b/gen/img/img_ph_h3_b3_t4.png index ddc0598..7906064 100644 Binary files a/gen/img/img_ph_h3_b3_t4.png and b/gen/img/img_ph_h3_b3_t4.png differ diff --git a/gen/img/img_ph_h3_b3_t4b.png b/gen/img/img_ph_h3_b3_t4b.png index 5b6c255..4d6725c 100644 Binary files a/gen/img/img_ph_h3_b3_t4b.png and b/gen/img/img_ph_h3_b3_t4b.png differ diff --git a/gen/img/img_ph_h4_b1_t1.png b/gen/img/img_ph_h4_b1_t1.png index 155c4c1..a1a2015 100644 Binary files a/gen/img/img_ph_h4_b1_t1.png and b/gen/img/img_ph_h4_b1_t1.png differ diff --git a/gen/img/img_ph_h4_b1_t2.png b/gen/img/img_ph_h4_b1_t2.png index 012b195..ba2a84b 100644 Binary files a/gen/img/img_ph_h4_b1_t2.png and b/gen/img/img_ph_h4_b1_t2.png differ diff --git a/gen/img/img_ph_h4_b1_t3.png b/gen/img/img_ph_h4_b1_t3.png index fb7b571..a6099a7 100644 Binary files a/gen/img/img_ph_h4_b1_t3.png and b/gen/img/img_ph_h4_b1_t3.png differ diff --git a/gen/img/img_ph_h4_b1_t4.png b/gen/img/img_ph_h4_b1_t4.png index e008a42..b641671 100644 Binary files a/gen/img/img_ph_h4_b1_t4.png and b/gen/img/img_ph_h4_b1_t4.png differ diff --git a/gen/img/img_ph_h4_b1_t5.png b/gen/img/img_ph_h4_b1_t5.png index 52108e3..59be9ed 100644 Binary files a/gen/img/img_ph_h4_b1_t5.png and b/gen/img/img_ph_h4_b1_t5.png differ diff --git a/gen/img/img_ph_h4_b1_t6.png b/gen/img/img_ph_h4_b1_t6.png index 4420c26..68f0d5b 100644 Binary files a/gen/img/img_ph_h4_b1_t6.png and b/gen/img/img_ph_h4_b1_t6.png differ diff --git a/gen/img/img_ph_h4_b1_t7.png b/gen/img/img_ph_h4_b1_t7.png index a06ed72..dac4517 100644 Binary files a/gen/img/img_ph_h4_b1_t7.png and b/gen/img/img_ph_h4_b1_t7.png differ diff --git a/gen/img/img_ph_h4_b2_t1.png b/gen/img/img_ph_h4_b2_t1.png index ba5ef4d..99a7362 100644 Binary files a/gen/img/img_ph_h4_b2_t1.png and b/gen/img/img_ph_h4_b2_t1.png differ diff --git a/gen/img/img_ph_h4_b2_t2.png b/gen/img/img_ph_h4_b2_t2.png index 922c929..df3b707 100644 Binary files a/gen/img/img_ph_h4_b2_t2.png and b/gen/img/img_ph_h4_b2_t2.png differ diff --git a/gen/img/img_ph_h4_b2_t3.png b/gen/img/img_ph_h4_b2_t3.png index c3f3004..68d2a64 100644 Binary files a/gen/img/img_ph_h4_b2_t3.png and b/gen/img/img_ph_h4_b2_t3.png differ diff --git a/gen/img/img_ph_h4_b2_t4.png b/gen/img/img_ph_h4_b2_t4.png index ea5adbb..05fc95d 100644 Binary files a/gen/img/img_ph_h4_b2_t4.png and b/gen/img/img_ph_h4_b2_t4.png differ diff --git a/gen/img/img_ph_h4_b2_t5.png b/gen/img/img_ph_h4_b2_t5.png index 62c3d08..1435596 100644 Binary files a/gen/img/img_ph_h4_b2_t5.png and b/gen/img/img_ph_h4_b2_t5.png differ diff --git a/gen/img/img_ph_h4_b3_t1.png b/gen/img/img_ph_h4_b3_t1.png index e8ff03c..3082022 100644 Binary files a/gen/img/img_ph_h4_b3_t1.png and b/gen/img/img_ph_h4_b3_t1.png differ diff --git a/gen/img/img_ph_h4_b3_t1b.png b/gen/img/img_ph_h4_b3_t1b.png index 0f63b7c..b78aa86 100644 Binary files a/gen/img/img_ph_h4_b3_t1b.png and b/gen/img/img_ph_h4_b3_t1b.png differ diff --git a/gen/img/img_ph_h4_b3_t2.png b/gen/img/img_ph_h4_b3_t2.png index 2c8ce1b..9edfe85 100644 Binary files a/gen/img/img_ph_h4_b3_t2.png and b/gen/img/img_ph_h4_b3_t2.png differ diff --git a/gen/img/img_ph_h4_b3_t2b.png b/gen/img/img_ph_h4_b3_t2b.png index bca8517..7139837 100644 Binary files a/gen/img/img_ph_h4_b3_t2b.png and b/gen/img/img_ph_h4_b3_t2b.png differ diff --git a/gen/img/img_ph_h4_b3_t3.png b/gen/img/img_ph_h4_b3_t3.png index 03be8bd..5398b00 100644 Binary files a/gen/img/img_ph_h4_b3_t3.png and b/gen/img/img_ph_h4_b3_t3.png differ diff --git a/gen/img/img_ph_h4_b3_t3b.png b/gen/img/img_ph_h4_b3_t3b.png index 5da27c3..6e84dfe 100644 Binary files a/gen/img/img_ph_h4_b3_t3b.png and b/gen/img/img_ph_h4_b3_t3b.png differ diff --git a/gen/img/img_ph_h4_b3_t4.png b/gen/img/img_ph_h4_b3_t4.png index 092c2c3..ddc0598 100644 Binary files a/gen/img/img_ph_h4_b3_t4.png and b/gen/img/img_ph_h4_b3_t4.png differ diff --git a/gen/img/img_ph_h4_b3_t4b.png b/gen/img/img_ph_h4_b3_t4b.png index a851b61..5b6c255 100644 Binary files a/gen/img/img_ph_h4_b3_t4b.png and b/gen/img/img_ph_h4_b3_t4b.png differ diff --git a/gen/img/img_ph_h5_b1_t1.png b/gen/img/img_ph_h5_b1_t1.png index 2eb952d..155c4c1 100644 Binary files a/gen/img/img_ph_h5_b1_t1.png and b/gen/img/img_ph_h5_b1_t1.png differ diff --git a/gen/img/img_ph_h5_b1_t2.png b/gen/img/img_ph_h5_b1_t2.png index fcfce5d..012b195 100644 Binary files a/gen/img/img_ph_h5_b1_t2.png and b/gen/img/img_ph_h5_b1_t2.png differ diff --git a/gen/img/img_ph_h5_b1_t3.png b/gen/img/img_ph_h5_b1_t3.png index 28cdeb0..fb7b571 100644 Binary files a/gen/img/img_ph_h5_b1_t3.png and b/gen/img/img_ph_h5_b1_t3.png differ diff --git a/gen/img/img_ph_h5_b1_t4.png b/gen/img/img_ph_h5_b1_t4.png index 57488e3..e008a42 100644 Binary files a/gen/img/img_ph_h5_b1_t4.png and b/gen/img/img_ph_h5_b1_t4.png differ diff --git a/gen/img/img_ph_h5_b1_t5.png b/gen/img/img_ph_h5_b1_t5.png index 35bac2b..52108e3 100644 Binary files a/gen/img/img_ph_h5_b1_t5.png and b/gen/img/img_ph_h5_b1_t5.png differ diff --git a/gen/img/img_ph_h5_b1_t6.png b/gen/img/img_ph_h5_b1_t6.png index bffbc2d..4420c26 100644 Binary files a/gen/img/img_ph_h5_b1_t6.png and b/gen/img/img_ph_h5_b1_t6.png differ diff --git a/gen/img/img_ph_h5_b1_t7.png b/gen/img/img_ph_h5_b1_t7.png index 1c3dc7e..a06ed72 100644 Binary files a/gen/img/img_ph_h5_b1_t7.png and b/gen/img/img_ph_h5_b1_t7.png differ diff --git a/gen/img/img_ph_h5_b2_t1.png b/gen/img/img_ph_h5_b2_t1.png index 286d5c5..ba5ef4d 100644 Binary files a/gen/img/img_ph_h5_b2_t1.png and b/gen/img/img_ph_h5_b2_t1.png differ diff --git a/gen/img/img_ph_h5_b2_t2.png b/gen/img/img_ph_h5_b2_t2.png index 7f0ac5e..922c929 100644 Binary files a/gen/img/img_ph_h5_b2_t2.png and b/gen/img/img_ph_h5_b2_t2.png differ diff --git a/gen/img/img_ph_h5_b2_t3.png b/gen/img/img_ph_h5_b2_t3.png index 4d6b6a3..c3f3004 100644 Binary files a/gen/img/img_ph_h5_b2_t3.png and b/gen/img/img_ph_h5_b2_t3.png differ diff --git a/gen/img/img_ph_h5_b2_t4.png b/gen/img/img_ph_h5_b2_t4.png index da56509..ea5adbb 100644 Binary files a/gen/img/img_ph_h5_b2_t4.png and b/gen/img/img_ph_h5_b2_t4.png differ diff --git a/gen/img/img_ph_h5_b2_t5.png b/gen/img/img_ph_h5_b2_t5.png index 79769c2..62c3d08 100644 Binary files a/gen/img/img_ph_h5_b2_t5.png and b/gen/img/img_ph_h5_b2_t5.png differ diff --git a/gen/img/img_ph_h5_b3_t1.png b/gen/img/img_ph_h5_b3_t1.png index defd299..e8ff03c 100644 Binary files a/gen/img/img_ph_h5_b3_t1.png and b/gen/img/img_ph_h5_b3_t1.png differ diff --git a/gen/img/img_ph_h5_b3_t1b.png b/gen/img/img_ph_h5_b3_t1b.png index e1cf4b1..0f63b7c 100644 Binary files a/gen/img/img_ph_h5_b3_t1b.png and b/gen/img/img_ph_h5_b3_t1b.png differ diff --git a/gen/img/img_ph_h5_b3_t2.png b/gen/img/img_ph_h5_b3_t2.png index bbfcc03..2c8ce1b 100644 Binary files a/gen/img/img_ph_h5_b3_t2.png and b/gen/img/img_ph_h5_b3_t2.png differ diff --git a/gen/img/img_ph_h5_b3_t2b.png b/gen/img/img_ph_h5_b3_t2b.png index fac5971..bca8517 100644 Binary files a/gen/img/img_ph_h5_b3_t2b.png and b/gen/img/img_ph_h5_b3_t2b.png differ diff --git a/gen/img/img_ph_h5_b3_t3.png b/gen/img/img_ph_h5_b3_t3.png index 55beff4..03be8bd 100644 Binary files a/gen/img/img_ph_h5_b3_t3.png and b/gen/img/img_ph_h5_b3_t3.png differ diff --git a/gen/img/img_ph_h5_b3_t3b.png b/gen/img/img_ph_h5_b3_t3b.png index 15a17d5..5da27c3 100644 Binary files a/gen/img/img_ph_h5_b3_t3b.png and b/gen/img/img_ph_h5_b3_t3b.png differ diff --git a/gen/img/img_ph_h5_b3_t4.png b/gen/img/img_ph_h5_b3_t4.png index b0c40a4..092c2c3 100644 Binary files a/gen/img/img_ph_h5_b3_t4.png and b/gen/img/img_ph_h5_b3_t4.png differ diff --git a/gen/img/img_ph_h5_b3_t4b.png b/gen/img/img_ph_h5_b3_t4b.png index a249323..a851b61 100644 Binary files a/gen/img/img_ph_h5_b3_t4b.png and b/gen/img/img_ph_h5_b3_t4b.png differ diff --git a/gen/img/img_ph_h6_b1_t1.png b/gen/img/img_ph_h6_b1_t1.png index 0c7e6f1..2eb952d 100644 Binary files a/gen/img/img_ph_h6_b1_t1.png and b/gen/img/img_ph_h6_b1_t1.png differ diff --git a/gen/img/img_ph_h6_b1_t2.png b/gen/img/img_ph_h6_b1_t2.png index 14f1685..fcfce5d 100644 Binary files a/gen/img/img_ph_h6_b1_t2.png and b/gen/img/img_ph_h6_b1_t2.png differ diff --git a/gen/img/img_ph_h6_b1_t3.png b/gen/img/img_ph_h6_b1_t3.png index 9034f7d..28cdeb0 100644 Binary files a/gen/img/img_ph_h6_b1_t3.png and b/gen/img/img_ph_h6_b1_t3.png differ diff --git a/gen/img/img_ph_h6_b1_t4.png b/gen/img/img_ph_h6_b1_t4.png index 2203c57..57488e3 100644 Binary files a/gen/img/img_ph_h6_b1_t4.png and b/gen/img/img_ph_h6_b1_t4.png differ diff --git a/gen/img/img_ph_h6_b1_t5.png b/gen/img/img_ph_h6_b1_t5.png index 94ba4b7..35bac2b 100644 Binary files a/gen/img/img_ph_h6_b1_t5.png and b/gen/img/img_ph_h6_b1_t5.png differ diff --git a/gen/img/img_ph_h6_b1_t6.png b/gen/img/img_ph_h6_b1_t6.png index 5ce4543..bffbc2d 100644 Binary files a/gen/img/img_ph_h6_b1_t6.png and b/gen/img/img_ph_h6_b1_t6.png differ diff --git a/gen/img/img_ph_h6_b1_t7.png b/gen/img/img_ph_h6_b1_t7.png index d93623d..1c3dc7e 100644 Binary files a/gen/img/img_ph_h6_b1_t7.png and b/gen/img/img_ph_h6_b1_t7.png differ diff --git a/gen/img/img_ph_h6_b2_t1.png b/gen/img/img_ph_h6_b2_t1.png index d755b3e..286d5c5 100644 Binary files a/gen/img/img_ph_h6_b2_t1.png and b/gen/img/img_ph_h6_b2_t1.png differ diff --git a/gen/img/img_ph_h6_b2_t2.png b/gen/img/img_ph_h6_b2_t2.png index 51d1e11..7f0ac5e 100644 Binary files a/gen/img/img_ph_h6_b2_t2.png and b/gen/img/img_ph_h6_b2_t2.png differ diff --git a/gen/img/img_ph_h6_b2_t3.png b/gen/img/img_ph_h6_b2_t3.png index ffb5b87..4d6b6a3 100644 Binary files a/gen/img/img_ph_h6_b2_t3.png and b/gen/img/img_ph_h6_b2_t3.png differ diff --git a/gen/img/img_ph_h6_b2_t4.png b/gen/img/img_ph_h6_b2_t4.png index 9aa3c0e..da56509 100644 Binary files a/gen/img/img_ph_h6_b2_t4.png and b/gen/img/img_ph_h6_b2_t4.png differ diff --git a/gen/img/img_ph_h6_b2_t5.png b/gen/img/img_ph_h6_b2_t5.png index 5d01467..79769c2 100644 Binary files a/gen/img/img_ph_h6_b2_t5.png and b/gen/img/img_ph_h6_b2_t5.png differ diff --git a/gen/img/img_ph_h6_b3_t1.png b/gen/img/img_ph_h6_b3_t1.png index 9ea79b9..defd299 100644 Binary files a/gen/img/img_ph_h6_b3_t1.png and b/gen/img/img_ph_h6_b3_t1.png differ diff --git a/gen/img/img_ph_h6_b3_t1b.png b/gen/img/img_ph_h6_b3_t1b.png index 61073f6..e1cf4b1 100644 Binary files a/gen/img/img_ph_h6_b3_t1b.png and b/gen/img/img_ph_h6_b3_t1b.png differ diff --git a/gen/img/img_ph_h6_b3_t2.png b/gen/img/img_ph_h6_b3_t2.png index 958c3c3..bbfcc03 100644 Binary files a/gen/img/img_ph_h6_b3_t2.png and b/gen/img/img_ph_h6_b3_t2.png differ diff --git a/gen/img/img_ph_h6_b3_t2b.png b/gen/img/img_ph_h6_b3_t2b.png index fdcc924..fac5971 100644 Binary files a/gen/img/img_ph_h6_b3_t2b.png and b/gen/img/img_ph_h6_b3_t2b.png differ diff --git a/gen/img/img_ph_h6_b3_t3.png b/gen/img/img_ph_h6_b3_t3.png index 444e58d..55beff4 100644 Binary files a/gen/img/img_ph_h6_b3_t3.png and b/gen/img/img_ph_h6_b3_t3.png differ diff --git a/gen/img/img_ph_h6_b3_t3b.png b/gen/img/img_ph_h6_b3_t3b.png index 731f6a9..15a17d5 100644 Binary files a/gen/img/img_ph_h6_b3_t3b.png and b/gen/img/img_ph_h6_b3_t3b.png differ diff --git a/gen/img/img_ph_h6_b3_t4.png b/gen/img/img_ph_h6_b3_t4.png index a17a9c5..b0c40a4 100644 Binary files a/gen/img/img_ph_h6_b3_t4.png and b/gen/img/img_ph_h6_b3_t4.png differ diff --git a/gen/img/img_ph_h6_b3_t4b.png b/gen/img/img_ph_h6_b3_t4b.png index 6e3c1d6..a249323 100644 Binary files a/gen/img/img_ph_h6_b3_t4b.png and b/gen/img/img_ph_h6_b3_t4b.png differ diff --git a/gen/img/img_ph_h7_b1_t1.png b/gen/img/img_ph_h7_b1_t1.png index 6999788..0c7e6f1 100644 Binary files a/gen/img/img_ph_h7_b1_t1.png and b/gen/img/img_ph_h7_b1_t1.png differ diff --git a/gen/img/img_ph_h7_b1_t2.png b/gen/img/img_ph_h7_b1_t2.png index c7c3809..14f1685 100644 Binary files a/gen/img/img_ph_h7_b1_t2.png and b/gen/img/img_ph_h7_b1_t2.png differ diff --git a/gen/img/img_ph_h7_b1_t3.png b/gen/img/img_ph_h7_b1_t3.png index 42fabe6..9034f7d 100644 Binary files a/gen/img/img_ph_h7_b1_t3.png and b/gen/img/img_ph_h7_b1_t3.png differ diff --git a/gen/img/img_ph_h7_b1_t4.png b/gen/img/img_ph_h7_b1_t4.png index c9ee108..2203c57 100644 Binary files a/gen/img/img_ph_h7_b1_t4.png and b/gen/img/img_ph_h7_b1_t4.png differ diff --git a/gen/img/img_ph_h7_b1_t5.png b/gen/img/img_ph_h7_b1_t5.png index 3b59020..94ba4b7 100644 Binary files a/gen/img/img_ph_h7_b1_t5.png and b/gen/img/img_ph_h7_b1_t5.png differ diff --git a/gen/img/img_ph_h7_b1_t6.png b/gen/img/img_ph_h7_b1_t6.png index 1cd308c..5ce4543 100644 Binary files a/gen/img/img_ph_h7_b1_t6.png and b/gen/img/img_ph_h7_b1_t6.png differ diff --git a/gen/img/img_ph_h7_b1_t7.png b/gen/img/img_ph_h7_b1_t7.png index ccef455..d93623d 100644 Binary files a/gen/img/img_ph_h7_b1_t7.png and b/gen/img/img_ph_h7_b1_t7.png differ diff --git a/gen/img/img_ph_h7_b2_t1.png b/gen/img/img_ph_h7_b2_t1.png index eaf5eaa..d755b3e 100644 Binary files a/gen/img/img_ph_h7_b2_t1.png and b/gen/img/img_ph_h7_b2_t1.png differ diff --git a/gen/img/img_ph_h7_b2_t2.png b/gen/img/img_ph_h7_b2_t2.png index 424a384..51d1e11 100644 Binary files a/gen/img/img_ph_h7_b2_t2.png and b/gen/img/img_ph_h7_b2_t2.png differ diff --git a/gen/img/img_ph_h7_b2_t3.png b/gen/img/img_ph_h7_b2_t3.png index 196868f..ffb5b87 100644 Binary files a/gen/img/img_ph_h7_b2_t3.png and b/gen/img/img_ph_h7_b2_t3.png differ diff --git a/gen/img/img_ph_h7_b2_t4.png b/gen/img/img_ph_h7_b2_t4.png index c8527ad..9aa3c0e 100644 Binary files a/gen/img/img_ph_h7_b2_t4.png and b/gen/img/img_ph_h7_b2_t4.png differ diff --git a/gen/img/img_ph_h7_b2_t5.png b/gen/img/img_ph_h7_b2_t5.png index d6f3be1..5d01467 100644 Binary files a/gen/img/img_ph_h7_b2_t5.png and b/gen/img/img_ph_h7_b2_t5.png differ diff --git a/gen/img/img_ph_h7_b3_t1.png b/gen/img/img_ph_h7_b3_t1.png index 90c266e..9ea79b9 100644 Binary files a/gen/img/img_ph_h7_b3_t1.png and b/gen/img/img_ph_h7_b3_t1.png differ diff --git a/gen/img/img_ph_h7_b3_t1b.png b/gen/img/img_ph_h7_b3_t1b.png index 0db2c4d..61073f6 100644 Binary files a/gen/img/img_ph_h7_b3_t1b.png and b/gen/img/img_ph_h7_b3_t1b.png differ diff --git a/gen/img/img_ph_h7_b3_t2.png b/gen/img/img_ph_h7_b3_t2.png index 7ad2ab6..958c3c3 100644 Binary files a/gen/img/img_ph_h7_b3_t2.png and b/gen/img/img_ph_h7_b3_t2.png differ diff --git a/gen/img/img_ph_h7_b3_t2b.png b/gen/img/img_ph_h7_b3_t2b.png index 9d0920e..fdcc924 100644 Binary files a/gen/img/img_ph_h7_b3_t2b.png and b/gen/img/img_ph_h7_b3_t2b.png differ diff --git a/gen/img/img_ph_h7_b3_t3.png b/gen/img/img_ph_h7_b3_t3.png index 32ac5ba..444e58d 100644 Binary files a/gen/img/img_ph_h7_b3_t3.png and b/gen/img/img_ph_h7_b3_t3.png differ diff --git a/gen/img/img_ph_h7_b3_t3b.png b/gen/img/img_ph_h7_b3_t3b.png index 7a73641..731f6a9 100644 Binary files a/gen/img/img_ph_h7_b3_t3b.png and b/gen/img/img_ph_h7_b3_t3b.png differ diff --git a/gen/img/img_ph_h7_b3_t4.png b/gen/img/img_ph_h7_b3_t4.png index 7595f2a..a17a9c5 100644 Binary files a/gen/img/img_ph_h7_b3_t4.png and b/gen/img/img_ph_h7_b3_t4.png differ diff --git a/gen/img/img_ph_h7_b3_t4b.png b/gen/img/img_ph_h7_b3_t4b.png index 59acb8e..6e3c1d6 100644 Binary files a/gen/img/img_ph_h7_b3_t4b.png and b/gen/img/img_ph_h7_b3_t4b.png differ diff --git a/gen/img/img_ph_h8_b1_t1.png b/gen/img/img_ph_h8_b1_t1.png new file mode 100644 index 0000000..6999788 Binary files /dev/null and b/gen/img/img_ph_h8_b1_t1.png differ diff --git a/gen/img/img_ph_h8_b1_t2.png b/gen/img/img_ph_h8_b1_t2.png new file mode 100644 index 0000000..c7c3809 Binary files /dev/null and b/gen/img/img_ph_h8_b1_t2.png differ diff --git a/gen/img/img_ph_h8_b1_t3.png b/gen/img/img_ph_h8_b1_t3.png new file mode 100644 index 0000000..42fabe6 Binary files /dev/null and b/gen/img/img_ph_h8_b1_t3.png differ diff --git a/gen/img/img_ph_h8_b1_t4.png b/gen/img/img_ph_h8_b1_t4.png new file mode 100644 index 0000000..c9ee108 Binary files /dev/null and b/gen/img/img_ph_h8_b1_t4.png differ diff --git a/gen/img/img_ph_h8_b1_t5.png b/gen/img/img_ph_h8_b1_t5.png new file mode 100644 index 0000000..3b59020 Binary files /dev/null and b/gen/img/img_ph_h8_b1_t5.png differ diff --git a/gen/img/img_ph_h8_b1_t6.png b/gen/img/img_ph_h8_b1_t6.png new file mode 100644 index 0000000..1cd308c Binary files /dev/null and b/gen/img/img_ph_h8_b1_t6.png differ diff --git a/gen/img/img_ph_h8_b1_t7.png b/gen/img/img_ph_h8_b1_t7.png new file mode 100644 index 0000000..ccef455 Binary files /dev/null and b/gen/img/img_ph_h8_b1_t7.png differ diff --git a/gen/img/img_ph_h8_b2_t1.png b/gen/img/img_ph_h8_b2_t1.png new file mode 100644 index 0000000..eaf5eaa Binary files /dev/null and b/gen/img/img_ph_h8_b2_t1.png differ diff --git a/gen/img/img_ph_h8_b2_t2.png b/gen/img/img_ph_h8_b2_t2.png new file mode 100644 index 0000000..424a384 Binary files /dev/null and b/gen/img/img_ph_h8_b2_t2.png differ diff --git a/gen/img/img_ph_h8_b2_t3.png b/gen/img/img_ph_h8_b2_t3.png new file mode 100644 index 0000000..196868f Binary files /dev/null and b/gen/img/img_ph_h8_b2_t3.png differ diff --git a/gen/img/img_ph_h8_b2_t4.png b/gen/img/img_ph_h8_b2_t4.png new file mode 100644 index 0000000..c8527ad Binary files /dev/null and b/gen/img/img_ph_h8_b2_t4.png differ diff --git a/gen/img/img_ph_h8_b2_t5.png b/gen/img/img_ph_h8_b2_t5.png new file mode 100644 index 0000000..d6f3be1 Binary files /dev/null and b/gen/img/img_ph_h8_b2_t5.png differ diff --git a/gen/img/img_ph_h8_b3_t1.png b/gen/img/img_ph_h8_b3_t1.png new file mode 100644 index 0000000..90c266e Binary files /dev/null and b/gen/img/img_ph_h8_b3_t1.png differ diff --git a/gen/img/img_ph_h8_b3_t1b.png b/gen/img/img_ph_h8_b3_t1b.png new file mode 100644 index 0000000..0db2c4d Binary files /dev/null and b/gen/img/img_ph_h8_b3_t1b.png differ diff --git a/gen/img/img_ph_h8_b3_t2.png b/gen/img/img_ph_h8_b3_t2.png new file mode 100644 index 0000000..7ad2ab6 Binary files /dev/null and b/gen/img/img_ph_h8_b3_t2.png differ diff --git a/gen/img/img_ph_h8_b3_t2b.png b/gen/img/img_ph_h8_b3_t2b.png new file mode 100644 index 0000000..9d0920e Binary files /dev/null and b/gen/img/img_ph_h8_b3_t2b.png differ diff --git a/gen/img/img_ph_h8_b3_t3.png b/gen/img/img_ph_h8_b3_t3.png new file mode 100644 index 0000000..32ac5ba Binary files /dev/null and b/gen/img/img_ph_h8_b3_t3.png differ diff --git a/gen/img/img_ph_h8_b3_t3b.png b/gen/img/img_ph_h8_b3_t3b.png new file mode 100644 index 0000000..7a73641 Binary files /dev/null and b/gen/img/img_ph_h8_b3_t3b.png differ diff --git a/gen/img/img_ph_h8_b3_t4.png b/gen/img/img_ph_h8_b3_t4.png new file mode 100644 index 0000000..7595f2a Binary files /dev/null and b/gen/img/img_ph_h8_b3_t4.png differ diff --git a/gen/img/img_ph_h8_b3_t4b.png b/gen/img/img_ph_h8_b3_t4b.png new file mode 100644 index 0000000..59acb8e Binary files /dev/null and b/gen/img/img_ph_h8_b3_t4b.png differ diff --git a/gen/img/img_pl_l1_b1_t1.png b/gen/img/img_pl_l1_b1_t1.png index 6ede0e0..7d07b4f 100644 Binary files a/gen/img/img_pl_l1_b1_t1.png and b/gen/img/img_pl_l1_b1_t1.png differ diff --git a/gen/img/img_pl_l1_b1_t2.png b/gen/img/img_pl_l1_b1_t2.png index 76c5977..91079a0 100644 Binary files a/gen/img/img_pl_l1_b1_t2.png and b/gen/img/img_pl_l1_b1_t2.png differ diff --git a/gen/img/img_pl_l1_b1_t3.png b/gen/img/img_pl_l1_b1_t3.png index 761c1f7..105783e 100644 Binary files a/gen/img/img_pl_l1_b1_t3.png and b/gen/img/img_pl_l1_b1_t3.png differ diff --git a/gen/img/img_pl_l1_b1_t4.png b/gen/img/img_pl_l1_b1_t4.png index b296c4b..54fd9fe 100644 Binary files a/gen/img/img_pl_l1_b1_t4.png and b/gen/img/img_pl_l1_b1_t4.png differ diff --git a/gen/img/img_pl_l1_b1_t5.png b/gen/img/img_pl_l1_b1_t5.png index 6db2cf4..1f1a272 100644 Binary files a/gen/img/img_pl_l1_b1_t5.png and b/gen/img/img_pl_l1_b1_t5.png differ diff --git a/gen/img/img_pl_l1_b1_t6.png b/gen/img/img_pl_l1_b1_t6.png index 22039de..93a8a71 100644 Binary files a/gen/img/img_pl_l1_b1_t6.png and b/gen/img/img_pl_l1_b1_t6.png differ diff --git a/gen/img/img_pl_l1_b1_t7.png b/gen/img/img_pl_l1_b1_t7.png index 08e2d4a..0198c90 100644 Binary files a/gen/img/img_pl_l1_b1_t7.png and b/gen/img/img_pl_l1_b1_t7.png differ diff --git a/gen/img/img_pl_l1_b2_t1.png b/gen/img/img_pl_l1_b2_t1.png index c253e4d..d8dbe40 100644 Binary files a/gen/img/img_pl_l1_b2_t1.png and b/gen/img/img_pl_l1_b2_t1.png differ diff --git a/gen/img/img_pl_l1_b2_t2.png b/gen/img/img_pl_l1_b2_t2.png index b20a679..33c4c49 100644 Binary files a/gen/img/img_pl_l1_b2_t2.png and b/gen/img/img_pl_l1_b2_t2.png differ diff --git a/gen/img/img_pl_l1_b2_t3.png b/gen/img/img_pl_l1_b2_t3.png index 6e848d4..9517716 100644 Binary files a/gen/img/img_pl_l1_b2_t3.png and b/gen/img/img_pl_l1_b2_t3.png differ diff --git a/gen/img/img_pl_l1_b2_t4.png b/gen/img/img_pl_l1_b2_t4.png index 50948bf..d12a58f 100644 Binary files a/gen/img/img_pl_l1_b2_t4.png and b/gen/img/img_pl_l1_b2_t4.png differ diff --git a/gen/img/img_pl_l1_b2_t5.png b/gen/img/img_pl_l1_b2_t5.png index 4674aaa..f08ddc0 100644 Binary files a/gen/img/img_pl_l1_b2_t5.png and b/gen/img/img_pl_l1_b2_t5.png differ diff --git a/gen/img/img_pl_l1_b3_t1.png b/gen/img/img_pl_l1_b3_t1.png index eacf0b9..f1f1627 100644 Binary files a/gen/img/img_pl_l1_b3_t1.png and b/gen/img/img_pl_l1_b3_t1.png differ diff --git a/gen/img/img_pl_l1_b3_t1b.png b/gen/img/img_pl_l1_b3_t1b.png index 1d421bf..3a8274d 100644 Binary files a/gen/img/img_pl_l1_b3_t1b.png and b/gen/img/img_pl_l1_b3_t1b.png differ diff --git a/gen/img/img_pl_l1_b3_t2.png b/gen/img/img_pl_l1_b3_t2.png index 69a9fbc..820bce0 100644 Binary files a/gen/img/img_pl_l1_b3_t2.png and b/gen/img/img_pl_l1_b3_t2.png differ diff --git a/gen/img/img_pl_l1_b3_t2b.png b/gen/img/img_pl_l1_b3_t2b.png index a8b1cb0..21f245f 100644 Binary files a/gen/img/img_pl_l1_b3_t2b.png and b/gen/img/img_pl_l1_b3_t2b.png differ diff --git a/gen/img/img_pl_l1_b3_t3.png b/gen/img/img_pl_l1_b3_t3.png index 6d08f1c..28f3e88 100644 Binary files a/gen/img/img_pl_l1_b3_t3.png and b/gen/img/img_pl_l1_b3_t3.png differ diff --git a/gen/img/img_pl_l1_b3_t3b.png b/gen/img/img_pl_l1_b3_t3b.png index afe9cb8..2d4efb7 100644 Binary files a/gen/img/img_pl_l1_b3_t3b.png and b/gen/img/img_pl_l1_b3_t3b.png differ diff --git a/gen/img/img_pl_l1_b3_t4.png b/gen/img/img_pl_l1_b3_t4.png index 032dc94..596492e 100644 Binary files a/gen/img/img_pl_l1_b3_t4.png and b/gen/img/img_pl_l1_b3_t4.png differ diff --git a/gen/img/img_pl_l1_b3_t4b.png b/gen/img/img_pl_l1_b3_t4b.png index 7349cff..f9a9918 100644 Binary files a/gen/img/img_pl_l1_b3_t4b.png and b/gen/img/img_pl_l1_b3_t4b.png differ diff --git a/gen/img/img_pl_l2_b1_t1.png b/gen/img/img_pl_l2_b1_t1.png index 65ce08b..5ae608c 100644 Binary files a/gen/img/img_pl_l2_b1_t1.png and b/gen/img/img_pl_l2_b1_t1.png differ diff --git a/gen/img/img_pl_l2_b1_t2.png b/gen/img/img_pl_l2_b1_t2.png index 4507e95..9a29c61 100644 Binary files a/gen/img/img_pl_l2_b1_t2.png and b/gen/img/img_pl_l2_b1_t2.png differ diff --git a/gen/img/img_pl_l2_b1_t3.png b/gen/img/img_pl_l2_b1_t3.png index 9948b08..fcbed4d 100644 Binary files a/gen/img/img_pl_l2_b1_t3.png and b/gen/img/img_pl_l2_b1_t3.png differ diff --git a/gen/img/img_pl_l2_b1_t4.png b/gen/img/img_pl_l2_b1_t4.png index 8bcdb87..fb1deb1 100644 Binary files a/gen/img/img_pl_l2_b1_t4.png and b/gen/img/img_pl_l2_b1_t4.png differ diff --git a/gen/img/img_pl_l2_b1_t5.png b/gen/img/img_pl_l2_b1_t5.png index da553a1..b25715a 100644 Binary files a/gen/img/img_pl_l2_b1_t5.png and b/gen/img/img_pl_l2_b1_t5.png differ diff --git a/gen/img/img_pl_l2_b1_t6.png b/gen/img/img_pl_l2_b1_t6.png index cc14087..a909262 100644 Binary files a/gen/img/img_pl_l2_b1_t6.png and b/gen/img/img_pl_l2_b1_t6.png differ diff --git a/gen/img/img_pl_l2_b1_t7.png b/gen/img/img_pl_l2_b1_t7.png index 7e5595a..35b4fd8 100644 Binary files a/gen/img/img_pl_l2_b1_t7.png and b/gen/img/img_pl_l2_b1_t7.png differ diff --git a/gen/img/img_pl_l2_b2_t1.png b/gen/img/img_pl_l2_b2_t1.png index 5a0d2d4..29e4657 100644 Binary files a/gen/img/img_pl_l2_b2_t1.png and b/gen/img/img_pl_l2_b2_t1.png differ diff --git a/gen/img/img_pl_l2_b2_t2.png b/gen/img/img_pl_l2_b2_t2.png index 0e864de..4ba2f27 100644 Binary files a/gen/img/img_pl_l2_b2_t2.png and b/gen/img/img_pl_l2_b2_t2.png differ diff --git a/gen/img/img_pl_l2_b2_t3.png b/gen/img/img_pl_l2_b2_t3.png index c39a6f2..b211a82 100644 Binary files a/gen/img/img_pl_l2_b2_t3.png and b/gen/img/img_pl_l2_b2_t3.png differ diff --git a/gen/img/img_pl_l2_b2_t4.png b/gen/img/img_pl_l2_b2_t4.png index 7bf73ec..e86500e 100644 Binary files a/gen/img/img_pl_l2_b2_t4.png and b/gen/img/img_pl_l2_b2_t4.png differ diff --git a/gen/img/img_pl_l2_b2_t5.png b/gen/img/img_pl_l2_b2_t5.png index 4c6c97b..c7882d7 100644 Binary files a/gen/img/img_pl_l2_b2_t5.png and b/gen/img/img_pl_l2_b2_t5.png differ diff --git a/gen/img/img_pl_l2_b3_t1.png b/gen/img/img_pl_l2_b3_t1.png index 0183b4b..1fdb44a 100644 Binary files a/gen/img/img_pl_l2_b3_t1.png and b/gen/img/img_pl_l2_b3_t1.png differ diff --git a/gen/img/img_pl_l2_b3_t1b.png b/gen/img/img_pl_l2_b3_t1b.png index be141cf..6c40b58 100644 Binary files a/gen/img/img_pl_l2_b3_t1b.png and b/gen/img/img_pl_l2_b3_t1b.png differ diff --git a/gen/img/img_pl_l2_b3_t2.png b/gen/img/img_pl_l2_b3_t2.png index 2efbff3..37544f7 100644 Binary files a/gen/img/img_pl_l2_b3_t2.png and b/gen/img/img_pl_l2_b3_t2.png differ diff --git a/gen/img/img_pl_l2_b3_t2b.png b/gen/img/img_pl_l2_b3_t2b.png index 53da820..72ab681 100644 Binary files a/gen/img/img_pl_l2_b3_t2b.png and b/gen/img/img_pl_l2_b3_t2b.png differ diff --git a/gen/img/img_pl_l2_b3_t3.png b/gen/img/img_pl_l2_b3_t3.png index 8d7a9f6..d9f1276 100644 Binary files a/gen/img/img_pl_l2_b3_t3.png and b/gen/img/img_pl_l2_b3_t3.png differ diff --git a/gen/img/img_pl_l2_b3_t3b.png b/gen/img/img_pl_l2_b3_t3b.png index fe7d582..03a9786 100644 Binary files a/gen/img/img_pl_l2_b3_t3b.png and b/gen/img/img_pl_l2_b3_t3b.png differ diff --git a/gen/img/img_pl_l2_b3_t4.png b/gen/img/img_pl_l2_b3_t4.png index c58a5e9..b681021 100644 Binary files a/gen/img/img_pl_l2_b3_t4.png and b/gen/img/img_pl_l2_b3_t4.png differ diff --git a/gen/img/img_pl_l2_b3_t4b.png b/gen/img/img_pl_l2_b3_t4b.png index 4323684..f823131 100644 Binary files a/gen/img/img_pl_l2_b3_t4b.png and b/gen/img/img_pl_l2_b3_t4b.png differ diff --git a/gen/img/img_pl_l3_b1_t1.png b/gen/img/img_pl_l3_b1_t1.png index 6ffeaf6..aeb7888 100644 Binary files a/gen/img/img_pl_l3_b1_t1.png and b/gen/img/img_pl_l3_b1_t1.png differ diff --git a/gen/img/img_pl_l3_b1_t2.png b/gen/img/img_pl_l3_b1_t2.png index b40d864..aa16630 100644 Binary files a/gen/img/img_pl_l3_b1_t2.png and b/gen/img/img_pl_l3_b1_t2.png differ diff --git a/gen/img/img_pl_l3_b1_t3.png b/gen/img/img_pl_l3_b1_t3.png index e1bc6aa..51f4001 100644 Binary files a/gen/img/img_pl_l3_b1_t3.png and b/gen/img/img_pl_l3_b1_t3.png differ diff --git a/gen/img/img_pl_l3_b1_t4.png b/gen/img/img_pl_l3_b1_t4.png index 2bc2f92..55b69d0 100644 Binary files a/gen/img/img_pl_l3_b1_t4.png and b/gen/img/img_pl_l3_b1_t4.png differ diff --git a/gen/img/img_pl_l3_b1_t5.png b/gen/img/img_pl_l3_b1_t5.png index e1d7651..fda8c85 100644 Binary files a/gen/img/img_pl_l3_b1_t5.png and b/gen/img/img_pl_l3_b1_t5.png differ diff --git a/gen/img/img_pl_l3_b1_t6.png b/gen/img/img_pl_l3_b1_t6.png index 5986583..4f8de62 100644 Binary files a/gen/img/img_pl_l3_b1_t6.png and b/gen/img/img_pl_l3_b1_t6.png differ diff --git a/gen/img/img_pl_l3_b1_t7.png b/gen/img/img_pl_l3_b1_t7.png index 27afe7f..08aa2ba 100644 Binary files a/gen/img/img_pl_l3_b1_t7.png and b/gen/img/img_pl_l3_b1_t7.png differ diff --git a/gen/img/img_pl_l3_b2_t1.png b/gen/img/img_pl_l3_b2_t1.png index 556f157..6c5b96d 100644 Binary files a/gen/img/img_pl_l3_b2_t1.png and b/gen/img/img_pl_l3_b2_t1.png differ diff --git a/gen/img/img_pl_l3_b2_t2.png b/gen/img/img_pl_l3_b2_t2.png index 3dcde2b..66c600e 100644 Binary files a/gen/img/img_pl_l3_b2_t2.png and b/gen/img/img_pl_l3_b2_t2.png differ diff --git a/gen/img/img_pl_l3_b2_t3.png b/gen/img/img_pl_l3_b2_t3.png index ff0d20c..b4d2b22 100644 Binary files a/gen/img/img_pl_l3_b2_t3.png and b/gen/img/img_pl_l3_b2_t3.png differ diff --git a/gen/img/img_pl_l3_b2_t4.png b/gen/img/img_pl_l3_b2_t4.png index 8b29750..a2bb16f 100644 Binary files a/gen/img/img_pl_l3_b2_t4.png and b/gen/img/img_pl_l3_b2_t4.png differ diff --git a/gen/img/img_pl_l3_b2_t5.png b/gen/img/img_pl_l3_b2_t5.png index 0362e5b..a8ea2ce 100644 Binary files a/gen/img/img_pl_l3_b2_t5.png and b/gen/img/img_pl_l3_b2_t5.png differ diff --git a/gen/img/img_pl_l3_b3_t1.png b/gen/img/img_pl_l3_b3_t1.png index 1c2266a..aa19384 100644 Binary files a/gen/img/img_pl_l3_b3_t1.png and b/gen/img/img_pl_l3_b3_t1.png differ diff --git a/gen/img/img_pl_l3_b3_t1b.png b/gen/img/img_pl_l3_b3_t1b.png index 39c480a..05cae2b 100644 Binary files a/gen/img/img_pl_l3_b3_t1b.png and b/gen/img/img_pl_l3_b3_t1b.png differ diff --git a/gen/img/img_pl_l3_b3_t2.png b/gen/img/img_pl_l3_b3_t2.png index fc8ecd2..b47234f 100644 Binary files a/gen/img/img_pl_l3_b3_t2.png and b/gen/img/img_pl_l3_b3_t2.png differ diff --git a/gen/img/img_pl_l3_b3_t2b.png b/gen/img/img_pl_l3_b3_t2b.png index 80fd418..7498065 100644 Binary files a/gen/img/img_pl_l3_b3_t2b.png and b/gen/img/img_pl_l3_b3_t2b.png differ diff --git a/gen/img/img_pl_l3_b3_t3.png b/gen/img/img_pl_l3_b3_t3.png index 397cdf2..d46d745 100644 Binary files a/gen/img/img_pl_l3_b3_t3.png and b/gen/img/img_pl_l3_b3_t3.png differ diff --git a/gen/img/img_pl_l3_b3_t3b.png b/gen/img/img_pl_l3_b3_t3b.png index e7a99d1..e644e95 100644 Binary files a/gen/img/img_pl_l3_b3_t3b.png and b/gen/img/img_pl_l3_b3_t3b.png differ diff --git a/gen/img/img_pl_l3_b3_t4.png b/gen/img/img_pl_l3_b3_t4.png index ff93934..c77bef0 100644 Binary files a/gen/img/img_pl_l3_b3_t4.png and b/gen/img/img_pl_l3_b3_t4.png differ diff --git a/gen/img/img_pl_l3_b3_t4b.png b/gen/img/img_pl_l3_b3_t4b.png index ea68371..ca89ef0 100644 Binary files a/gen/img/img_pl_l3_b3_t4b.png and b/gen/img/img_pl_l3_b3_t4b.png differ diff --git a/gen/img/img_pl_l4_b1_t1.png b/gen/img/img_pl_l4_b1_t1.png index 6b3ce1e..4cdf50c 100644 Binary files a/gen/img/img_pl_l4_b1_t1.png and b/gen/img/img_pl_l4_b1_t1.png differ diff --git a/gen/img/img_pl_l4_b1_t2.png b/gen/img/img_pl_l4_b1_t2.png index 0951667..ed6c82c 100644 Binary files a/gen/img/img_pl_l4_b1_t2.png and b/gen/img/img_pl_l4_b1_t2.png differ diff --git a/gen/img/img_pl_l4_b1_t3.png b/gen/img/img_pl_l4_b1_t3.png index c4fd870..3a07887 100644 Binary files a/gen/img/img_pl_l4_b1_t3.png and b/gen/img/img_pl_l4_b1_t3.png differ diff --git a/gen/img/img_pl_l4_b1_t4.png b/gen/img/img_pl_l4_b1_t4.png index ebf8016..2084fd5 100644 Binary files a/gen/img/img_pl_l4_b1_t4.png and b/gen/img/img_pl_l4_b1_t4.png differ diff --git a/gen/img/img_pl_l4_b1_t5.png b/gen/img/img_pl_l4_b1_t5.png index fe39a22..e2615b3 100644 Binary files a/gen/img/img_pl_l4_b1_t5.png and b/gen/img/img_pl_l4_b1_t5.png differ diff --git a/gen/img/img_pl_l4_b1_t6.png b/gen/img/img_pl_l4_b1_t6.png index 034e6bd..3aa9212 100644 Binary files a/gen/img/img_pl_l4_b1_t6.png and b/gen/img/img_pl_l4_b1_t6.png differ diff --git a/gen/img/img_pl_l4_b1_t7.png b/gen/img/img_pl_l4_b1_t7.png index b4ac357..d496edd 100644 Binary files a/gen/img/img_pl_l4_b1_t7.png and b/gen/img/img_pl_l4_b1_t7.png differ diff --git a/gen/img/img_pl_l4_b2_t1.png b/gen/img/img_pl_l4_b2_t1.png index 8567757..e577f5b 100644 Binary files a/gen/img/img_pl_l4_b2_t1.png and b/gen/img/img_pl_l4_b2_t1.png differ diff --git a/gen/img/img_pl_l4_b2_t2.png b/gen/img/img_pl_l4_b2_t2.png index a99e151..6ae5bdb 100644 Binary files a/gen/img/img_pl_l4_b2_t2.png and b/gen/img/img_pl_l4_b2_t2.png differ diff --git a/gen/img/img_pl_l4_b2_t3.png b/gen/img/img_pl_l4_b2_t3.png index f129c1a..9a7ae74 100644 Binary files a/gen/img/img_pl_l4_b2_t3.png and b/gen/img/img_pl_l4_b2_t3.png differ diff --git a/gen/img/img_pl_l4_b2_t4.png b/gen/img/img_pl_l4_b2_t4.png index 56b32d1..9148377 100644 Binary files a/gen/img/img_pl_l4_b2_t4.png and b/gen/img/img_pl_l4_b2_t4.png differ diff --git a/gen/img/img_pl_l4_b2_t5.png b/gen/img/img_pl_l4_b2_t5.png index 329eb3d..be20401 100644 Binary files a/gen/img/img_pl_l4_b2_t5.png and b/gen/img/img_pl_l4_b2_t5.png differ diff --git a/gen/img/img_pl_l4_b3_t1.png b/gen/img/img_pl_l4_b3_t1.png index 69ed45b..20ba429 100644 Binary files a/gen/img/img_pl_l4_b3_t1.png and b/gen/img/img_pl_l4_b3_t1.png differ diff --git a/gen/img/img_pl_l4_b3_t1b.png b/gen/img/img_pl_l4_b3_t1b.png index d6b1172..46c2101 100644 Binary files a/gen/img/img_pl_l4_b3_t1b.png and b/gen/img/img_pl_l4_b3_t1b.png differ diff --git a/gen/img/img_pl_l4_b3_t2.png b/gen/img/img_pl_l4_b3_t2.png index ad6d060..f5b4cd4 100644 Binary files a/gen/img/img_pl_l4_b3_t2.png and b/gen/img/img_pl_l4_b3_t2.png differ diff --git a/gen/img/img_pl_l4_b3_t2b.png b/gen/img/img_pl_l4_b3_t2b.png index 397eaf5..935bd44 100644 Binary files a/gen/img/img_pl_l4_b3_t2b.png and b/gen/img/img_pl_l4_b3_t2b.png differ diff --git a/gen/img/img_pl_l4_b3_t3.png b/gen/img/img_pl_l4_b3_t3.png index 80f70d6..d84b7c5 100644 Binary files a/gen/img/img_pl_l4_b3_t3.png and b/gen/img/img_pl_l4_b3_t3.png differ diff --git a/gen/img/img_pl_l4_b3_t3b.png b/gen/img/img_pl_l4_b3_t3b.png index a3464a9..46d172e 100644 Binary files a/gen/img/img_pl_l4_b3_t3b.png and b/gen/img/img_pl_l4_b3_t3b.png differ diff --git a/gen/img/img_pl_l4_b3_t4.png b/gen/img/img_pl_l4_b3_t4.png index ad76fc6..21b1a81 100644 Binary files a/gen/img/img_pl_l4_b3_t4.png and b/gen/img/img_pl_l4_b3_t4.png differ diff --git a/gen/img/img_pl_l4_b3_t4b.png b/gen/img/img_pl_l4_b3_t4b.png index 6656c53..1ab9e25 100644 Binary files a/gen/img/img_pl_l4_b3_t4b.png and b/gen/img/img_pl_l4_b3_t4b.png differ diff --git a/gen/img/img_pl_l5_b1_t1.png b/gen/img/img_pl_l5_b1_t1.png index d82afcb..de7d156 100644 Binary files a/gen/img/img_pl_l5_b1_t1.png and b/gen/img/img_pl_l5_b1_t1.png differ diff --git a/gen/img/img_pl_l5_b1_t2.png b/gen/img/img_pl_l5_b1_t2.png index b8f21d2..6f6f7b4 100644 Binary files a/gen/img/img_pl_l5_b1_t2.png and b/gen/img/img_pl_l5_b1_t2.png differ diff --git a/gen/img/img_pl_l5_b1_t3.png b/gen/img/img_pl_l5_b1_t3.png index b30729f..b866482 100644 Binary files a/gen/img/img_pl_l5_b1_t3.png and b/gen/img/img_pl_l5_b1_t3.png differ diff --git a/gen/img/img_pl_l5_b1_t4.png b/gen/img/img_pl_l5_b1_t4.png index 83497bc..e7a36e6 100644 Binary files a/gen/img/img_pl_l5_b1_t4.png and b/gen/img/img_pl_l5_b1_t4.png differ diff --git a/gen/img/img_pl_l5_b1_t5.png b/gen/img/img_pl_l5_b1_t5.png index d5959bf..80d48b4 100644 Binary files a/gen/img/img_pl_l5_b1_t5.png and b/gen/img/img_pl_l5_b1_t5.png differ diff --git a/gen/img/img_pl_l5_b1_t6.png b/gen/img/img_pl_l5_b1_t6.png index 4e2cfd9..6bad887 100644 Binary files a/gen/img/img_pl_l5_b1_t6.png and b/gen/img/img_pl_l5_b1_t6.png differ diff --git a/gen/img/img_pl_l5_b1_t7.png b/gen/img/img_pl_l5_b1_t7.png index 3a6c25e..d73af3e 100644 Binary files a/gen/img/img_pl_l5_b1_t7.png and b/gen/img/img_pl_l5_b1_t7.png differ diff --git a/gen/img/img_pl_l5_b2_t1.png b/gen/img/img_pl_l5_b2_t1.png index 72fd40f..4d79ee5 100644 Binary files a/gen/img/img_pl_l5_b2_t1.png and b/gen/img/img_pl_l5_b2_t1.png differ diff --git a/gen/img/img_pl_l5_b2_t2.png b/gen/img/img_pl_l5_b2_t2.png index c677fbb..3ad0436 100644 Binary files a/gen/img/img_pl_l5_b2_t2.png and b/gen/img/img_pl_l5_b2_t2.png differ diff --git a/gen/img/img_pl_l5_b2_t3.png b/gen/img/img_pl_l5_b2_t3.png index 3c6757d..bf68de8 100644 Binary files a/gen/img/img_pl_l5_b2_t3.png and b/gen/img/img_pl_l5_b2_t3.png differ diff --git a/gen/img/img_pl_l5_b2_t4.png b/gen/img/img_pl_l5_b2_t4.png index 813ed1b..5292d11 100644 Binary files a/gen/img/img_pl_l5_b2_t4.png and b/gen/img/img_pl_l5_b2_t4.png differ diff --git a/gen/img/img_pl_l5_b2_t5.png b/gen/img/img_pl_l5_b2_t5.png index 1d7c085..4e60122 100644 Binary files a/gen/img/img_pl_l5_b2_t5.png and b/gen/img/img_pl_l5_b2_t5.png differ diff --git a/gen/img/img_pl_l5_b3_t1.png b/gen/img/img_pl_l5_b3_t1.png index b1b1b54..82b8b65 100644 Binary files a/gen/img/img_pl_l5_b3_t1.png and b/gen/img/img_pl_l5_b3_t1.png differ diff --git a/gen/img/img_pl_l5_b3_t1b.png b/gen/img/img_pl_l5_b3_t1b.png index 165de17..336e98c 100644 Binary files a/gen/img/img_pl_l5_b3_t1b.png and b/gen/img/img_pl_l5_b3_t1b.png differ diff --git a/gen/img/img_pl_l5_b3_t2.png b/gen/img/img_pl_l5_b3_t2.png index dfd9f7b..1e3d694 100644 Binary files a/gen/img/img_pl_l5_b3_t2.png and b/gen/img/img_pl_l5_b3_t2.png differ diff --git a/gen/img/img_pl_l5_b3_t2b.png b/gen/img/img_pl_l5_b3_t2b.png index 515da7c..6ffa1a2 100644 Binary files a/gen/img/img_pl_l5_b3_t2b.png and b/gen/img/img_pl_l5_b3_t2b.png differ diff --git a/gen/img/img_pl_l5_b3_t3.png b/gen/img/img_pl_l5_b3_t3.png index f3ea9f3..23aa94c 100644 Binary files a/gen/img/img_pl_l5_b3_t3.png and b/gen/img/img_pl_l5_b3_t3.png differ diff --git a/gen/img/img_pl_l5_b3_t3b.png b/gen/img/img_pl_l5_b3_t3b.png index 2183057..bb264ae 100644 Binary files a/gen/img/img_pl_l5_b3_t3b.png and b/gen/img/img_pl_l5_b3_t3b.png differ diff --git a/gen/img/img_pl_l5_b3_t4.png b/gen/img/img_pl_l5_b3_t4.png index 9fff85c..327926d 100644 Binary files a/gen/img/img_pl_l5_b3_t4.png and b/gen/img/img_pl_l5_b3_t4.png differ diff --git a/gen/img/img_pl_l5_b3_t4b.png b/gen/img/img_pl_l5_b3_t4b.png index fea3140..2f809e1 100644 Binary files a/gen/img/img_pl_l5_b3_t4b.png and b/gen/img/img_pl_l5_b3_t4b.png differ diff --git a/gen/img/img_pl_l6_b1_t1.png b/gen/img/img_pl_l6_b1_t1.png index 89104b6..0fa6f08 100644 Binary files a/gen/img/img_pl_l6_b1_t1.png and b/gen/img/img_pl_l6_b1_t1.png differ diff --git a/gen/img/img_pl_l6_b1_t2.png b/gen/img/img_pl_l6_b1_t2.png index 4a81915..5630a6a 100644 Binary files a/gen/img/img_pl_l6_b1_t2.png and b/gen/img/img_pl_l6_b1_t2.png differ diff --git a/gen/img/img_pl_l6_b1_t3.png b/gen/img/img_pl_l6_b1_t3.png index d9f7f9e..fbf3b2f 100644 Binary files a/gen/img/img_pl_l6_b1_t3.png and b/gen/img/img_pl_l6_b1_t3.png differ diff --git a/gen/img/img_pl_l6_b1_t4.png b/gen/img/img_pl_l6_b1_t4.png index 4d236f8..c9f8276 100644 Binary files a/gen/img/img_pl_l6_b1_t4.png and b/gen/img/img_pl_l6_b1_t4.png differ diff --git a/gen/img/img_pl_l6_b1_t5.png b/gen/img/img_pl_l6_b1_t5.png index 7ac2a8c..26bd4ff 100644 Binary files a/gen/img/img_pl_l6_b1_t5.png and b/gen/img/img_pl_l6_b1_t5.png differ diff --git a/gen/img/img_pl_l6_b1_t6.png b/gen/img/img_pl_l6_b1_t6.png index fb19d41..7756542 100644 Binary files a/gen/img/img_pl_l6_b1_t6.png and b/gen/img/img_pl_l6_b1_t6.png differ diff --git a/gen/img/img_pl_l6_b1_t7.png b/gen/img/img_pl_l6_b1_t7.png index 7d71101..907faac 100644 Binary files a/gen/img/img_pl_l6_b1_t7.png and b/gen/img/img_pl_l6_b1_t7.png differ diff --git a/gen/img/img_pl_l6_b2_t1.png b/gen/img/img_pl_l6_b2_t1.png index 6ea6b08..a679524 100644 Binary files a/gen/img/img_pl_l6_b2_t1.png and b/gen/img/img_pl_l6_b2_t1.png differ diff --git a/gen/img/img_pl_l6_b2_t2.png b/gen/img/img_pl_l6_b2_t2.png index c979ef4..5e6dffd 100644 Binary files a/gen/img/img_pl_l6_b2_t2.png and b/gen/img/img_pl_l6_b2_t2.png differ diff --git a/gen/img/img_pl_l6_b2_t3.png b/gen/img/img_pl_l6_b2_t3.png index fe9de16..9d51ae6 100644 Binary files a/gen/img/img_pl_l6_b2_t3.png and b/gen/img/img_pl_l6_b2_t3.png differ diff --git a/gen/img/img_pl_l6_b2_t4.png b/gen/img/img_pl_l6_b2_t4.png index da0ae2e..293fbc6 100644 Binary files a/gen/img/img_pl_l6_b2_t4.png and b/gen/img/img_pl_l6_b2_t4.png differ diff --git a/gen/img/img_pl_l6_b2_t5.png b/gen/img/img_pl_l6_b2_t5.png index f135c0f..aef1b26 100644 Binary files a/gen/img/img_pl_l6_b2_t5.png and b/gen/img/img_pl_l6_b2_t5.png differ diff --git a/gen/img/img_pl_l6_b3_t1.png b/gen/img/img_pl_l6_b3_t1.png index 4e051bd..1442cdc 100644 Binary files a/gen/img/img_pl_l6_b3_t1.png and b/gen/img/img_pl_l6_b3_t1.png differ diff --git a/gen/img/img_pl_l6_b3_t1b.png b/gen/img/img_pl_l6_b3_t1b.png index 4c03e3b..4f4ac76 100644 Binary files a/gen/img/img_pl_l6_b3_t1b.png and b/gen/img/img_pl_l6_b3_t1b.png differ diff --git a/gen/img/img_pl_l6_b3_t2.png b/gen/img/img_pl_l6_b3_t2.png index 2de1f57..af95043 100644 Binary files a/gen/img/img_pl_l6_b3_t2.png and b/gen/img/img_pl_l6_b3_t2.png differ diff --git a/gen/img/img_pl_l6_b3_t2b.png b/gen/img/img_pl_l6_b3_t2b.png index 30fd955..1042475 100644 Binary files a/gen/img/img_pl_l6_b3_t2b.png and b/gen/img/img_pl_l6_b3_t2b.png differ diff --git a/gen/img/img_pl_l6_b3_t3.png b/gen/img/img_pl_l6_b3_t3.png index de45c5e..e8c6a3a 100644 Binary files a/gen/img/img_pl_l6_b3_t3.png and b/gen/img/img_pl_l6_b3_t3.png differ diff --git a/gen/img/img_pl_l6_b3_t3b.png b/gen/img/img_pl_l6_b3_t3b.png index fcac814..4b55dc2 100644 Binary files a/gen/img/img_pl_l6_b3_t3b.png and b/gen/img/img_pl_l6_b3_t3b.png differ diff --git a/gen/img/img_pl_l6_b3_t4.png b/gen/img/img_pl_l6_b3_t4.png index b6820bb..a0cee6e 100644 Binary files a/gen/img/img_pl_l6_b3_t4.png and b/gen/img/img_pl_l6_b3_t4.png differ diff --git a/gen/img/img_pl_l6_b3_t4b.png b/gen/img/img_pl_l6_b3_t4b.png index 5e8e009..8cc0610 100644 Binary files a/gen/img/img_pl_l6_b3_t4b.png and b/gen/img/img_pl_l6_b3_t4b.png differ diff --git a/gen/img/img_pl_l7_b1_t1.png b/gen/img/img_pl_l7_b1_t1.png index bc83ee3..c6e5e45 100644 Binary files a/gen/img/img_pl_l7_b1_t1.png and b/gen/img/img_pl_l7_b1_t1.png differ diff --git a/gen/img/img_pl_l7_b1_t2.png b/gen/img/img_pl_l7_b1_t2.png index 82b0cc6..404aa1c 100644 Binary files a/gen/img/img_pl_l7_b1_t2.png and b/gen/img/img_pl_l7_b1_t2.png differ diff --git a/gen/img/img_pl_l7_b1_t3.png b/gen/img/img_pl_l7_b1_t3.png index cd6916f..d98f9bd 100644 Binary files a/gen/img/img_pl_l7_b1_t3.png and b/gen/img/img_pl_l7_b1_t3.png differ diff --git a/gen/img/img_pl_l7_b1_t4.png b/gen/img/img_pl_l7_b1_t4.png index 1653b4c..68e64e8 100644 Binary files a/gen/img/img_pl_l7_b1_t4.png and b/gen/img/img_pl_l7_b1_t4.png differ diff --git a/gen/img/img_pl_l7_b1_t5.png b/gen/img/img_pl_l7_b1_t5.png index da959bb..9ed7e5b 100644 Binary files a/gen/img/img_pl_l7_b1_t5.png and b/gen/img/img_pl_l7_b1_t5.png differ diff --git a/gen/img/img_pl_l7_b1_t6.png b/gen/img/img_pl_l7_b1_t6.png index f59863b..6d6cf36 100644 Binary files a/gen/img/img_pl_l7_b1_t6.png and b/gen/img/img_pl_l7_b1_t6.png differ diff --git a/gen/img/img_pl_l7_b1_t7.png b/gen/img/img_pl_l7_b1_t7.png index 20a282f..7b7831c 100644 Binary files a/gen/img/img_pl_l7_b1_t7.png and b/gen/img/img_pl_l7_b1_t7.png differ diff --git a/gen/img/img_pl_l7_b2_t1.png b/gen/img/img_pl_l7_b2_t1.png index 89e32cf..d7518a3 100644 Binary files a/gen/img/img_pl_l7_b2_t1.png and b/gen/img/img_pl_l7_b2_t1.png differ diff --git a/gen/img/img_pl_l7_b2_t2.png b/gen/img/img_pl_l7_b2_t2.png index 293df8b..36266e9 100644 Binary files a/gen/img/img_pl_l7_b2_t2.png and b/gen/img/img_pl_l7_b2_t2.png differ diff --git a/gen/img/img_pl_l7_b2_t3.png b/gen/img/img_pl_l7_b2_t3.png index 5085ce4..e6d6937 100644 Binary files a/gen/img/img_pl_l7_b2_t3.png and b/gen/img/img_pl_l7_b2_t3.png differ diff --git a/gen/img/img_pl_l7_b2_t4.png b/gen/img/img_pl_l7_b2_t4.png index 8881f76..10cec0b 100644 Binary files a/gen/img/img_pl_l7_b2_t4.png and b/gen/img/img_pl_l7_b2_t4.png differ diff --git a/gen/img/img_pl_l7_b2_t5.png b/gen/img/img_pl_l7_b2_t5.png index 41870c9..3c591ab 100644 Binary files a/gen/img/img_pl_l7_b2_t5.png and b/gen/img/img_pl_l7_b2_t5.png differ diff --git a/gen/img/img_pl_l7_b3_t1.png b/gen/img/img_pl_l7_b3_t1.png index 4c9b7ab..0eb337b 100644 Binary files a/gen/img/img_pl_l7_b3_t1.png and b/gen/img/img_pl_l7_b3_t1.png differ diff --git a/gen/img/img_pl_l7_b3_t1b.png b/gen/img/img_pl_l7_b3_t1b.png index 0142c41..fa3fd08 100644 Binary files a/gen/img/img_pl_l7_b3_t1b.png and b/gen/img/img_pl_l7_b3_t1b.png differ diff --git a/gen/img/img_pl_l7_b3_t2.png b/gen/img/img_pl_l7_b3_t2.png index f355255..bc0aec1 100644 Binary files a/gen/img/img_pl_l7_b3_t2.png and b/gen/img/img_pl_l7_b3_t2.png differ diff --git a/gen/img/img_pl_l7_b3_t2b.png b/gen/img/img_pl_l7_b3_t2b.png index 227f572..756b1e8 100644 Binary files a/gen/img/img_pl_l7_b3_t2b.png and b/gen/img/img_pl_l7_b3_t2b.png differ diff --git a/gen/img/img_pl_l7_b3_t3.png b/gen/img/img_pl_l7_b3_t3.png index 8809504..1250b57 100644 Binary files a/gen/img/img_pl_l7_b3_t3.png and b/gen/img/img_pl_l7_b3_t3.png differ diff --git a/gen/img/img_pl_l7_b3_t3b.png b/gen/img/img_pl_l7_b3_t3b.png index 31a7a03..22afb9c 100644 Binary files a/gen/img/img_pl_l7_b3_t3b.png and b/gen/img/img_pl_l7_b3_t3b.png differ diff --git a/gen/img/img_pl_l7_b3_t4.png b/gen/img/img_pl_l7_b3_t4.png index 7e99fb1..ad84c82 100644 Binary files a/gen/img/img_pl_l7_b3_t4.png and b/gen/img/img_pl_l7_b3_t4.png differ diff --git a/gen/img/img_pl_l7_b3_t4b.png b/gen/img/img_pl_l7_b3_t4b.png index b8ed4ab..c3b6511 100644 Binary files a/gen/img/img_pl_l7_b3_t4b.png and b/gen/img/img_pl_l7_b3_t4b.png differ diff --git a/gen/img/img_pl_l8_b1_t1.png b/gen/img/img_pl_l8_b1_t1.png index 71f2ccb..74faca1 100644 Binary files a/gen/img/img_pl_l8_b1_t1.png and b/gen/img/img_pl_l8_b1_t1.png differ diff --git a/gen/img/img_pl_l8_b1_t2.png b/gen/img/img_pl_l8_b1_t2.png index a9853c0..a90a9da 100644 Binary files a/gen/img/img_pl_l8_b1_t2.png and b/gen/img/img_pl_l8_b1_t2.png differ diff --git a/gen/img/img_pl_l8_b1_t3.png b/gen/img/img_pl_l8_b1_t3.png index c2b79c6..21d405a 100644 Binary files a/gen/img/img_pl_l8_b1_t3.png and b/gen/img/img_pl_l8_b1_t3.png differ diff --git a/gen/img/img_pl_l8_b1_t4.png b/gen/img/img_pl_l8_b1_t4.png index 6d13f84..3293686 100644 Binary files a/gen/img/img_pl_l8_b1_t4.png and b/gen/img/img_pl_l8_b1_t4.png differ diff --git a/gen/img/img_pl_l8_b1_t5.png b/gen/img/img_pl_l8_b1_t5.png index 48a6759..e38c9ff 100644 Binary files a/gen/img/img_pl_l8_b1_t5.png and b/gen/img/img_pl_l8_b1_t5.png differ diff --git a/gen/img/img_pl_l8_b1_t6.png b/gen/img/img_pl_l8_b1_t6.png index 1f2cc90..7281ea5 100644 Binary files a/gen/img/img_pl_l8_b1_t6.png and b/gen/img/img_pl_l8_b1_t6.png differ diff --git a/gen/img/img_pl_l8_b1_t7.png b/gen/img/img_pl_l8_b1_t7.png index 924163c..ce81a9a 100644 Binary files a/gen/img/img_pl_l8_b1_t7.png and b/gen/img/img_pl_l8_b1_t7.png differ diff --git a/gen/img/img_pl_l8_b2_t1.png b/gen/img/img_pl_l8_b2_t1.png index f3fb049..855ed55 100644 Binary files a/gen/img/img_pl_l8_b2_t1.png and b/gen/img/img_pl_l8_b2_t1.png differ diff --git a/gen/img/img_pl_l8_b2_t2.png b/gen/img/img_pl_l8_b2_t2.png index b18378e..69a8cb6 100644 Binary files a/gen/img/img_pl_l8_b2_t2.png and b/gen/img/img_pl_l8_b2_t2.png differ diff --git a/gen/img/img_pl_l8_b2_t3.png b/gen/img/img_pl_l8_b2_t3.png index 9169291..5ae720b 100644 Binary files a/gen/img/img_pl_l8_b2_t3.png and b/gen/img/img_pl_l8_b2_t3.png differ diff --git a/gen/img/img_pl_l8_b2_t4.png b/gen/img/img_pl_l8_b2_t4.png index 20e832a..378a506 100644 Binary files a/gen/img/img_pl_l8_b2_t4.png and b/gen/img/img_pl_l8_b2_t4.png differ diff --git a/gen/img/img_pl_l8_b2_t5.png b/gen/img/img_pl_l8_b2_t5.png index 647d1e4..168aa0c 100644 Binary files a/gen/img/img_pl_l8_b2_t5.png and b/gen/img/img_pl_l8_b2_t5.png differ diff --git a/gen/img/img_pl_l8_b3_t1.png b/gen/img/img_pl_l8_b3_t1.png index c6ea812..b130c81 100644 Binary files a/gen/img/img_pl_l8_b3_t1.png and b/gen/img/img_pl_l8_b3_t1.png differ diff --git a/gen/img/img_pl_l8_b3_t1b.png b/gen/img/img_pl_l8_b3_t1b.png index 5950144..9367fd5 100644 Binary files a/gen/img/img_pl_l8_b3_t1b.png and b/gen/img/img_pl_l8_b3_t1b.png differ diff --git a/gen/img/img_pl_l8_b3_t2.png b/gen/img/img_pl_l8_b3_t2.png index a47eb5c..5fcf2fe 100644 Binary files a/gen/img/img_pl_l8_b3_t2.png and b/gen/img/img_pl_l8_b3_t2.png differ diff --git a/gen/img/img_pl_l8_b3_t2b.png b/gen/img/img_pl_l8_b3_t2b.png index 18bc22e..f7315ee 100644 Binary files a/gen/img/img_pl_l8_b3_t2b.png and b/gen/img/img_pl_l8_b3_t2b.png differ diff --git a/gen/img/img_pl_l8_b3_t3.png b/gen/img/img_pl_l8_b3_t3.png index 1ab9dab..8b13cbf 100644 Binary files a/gen/img/img_pl_l8_b3_t3.png and b/gen/img/img_pl_l8_b3_t3.png differ diff --git a/gen/img/img_pl_l8_b3_t3b.png b/gen/img/img_pl_l8_b3_t3b.png index 9f3a4a2..21c3e2a 100644 Binary files a/gen/img/img_pl_l8_b3_t3b.png and b/gen/img/img_pl_l8_b3_t3b.png differ diff --git a/gen/img/img_pl_l8_b3_t4.png b/gen/img/img_pl_l8_b3_t4.png index a681069..07f1244 100644 Binary files a/gen/img/img_pl_l8_b3_t4.png and b/gen/img/img_pl_l8_b3_t4.png differ diff --git a/gen/img/img_pl_l8_b3_t4b.png b/gen/img/img_pl_l8_b3_t4b.png index f604f0c..6d09105 100644 Binary files a/gen/img/img_pl_l8_b3_t4b.png and b/gen/img/img_pl_l8_b3_t4b.png differ diff --git a/results.Rmd b/results.Rmd index 8e8f0c1..73dd199 100644 --- a/results.Rmd +++ b/results.Rmd @@ -9,9 +9,9 @@ output: Document generation date: `r Sys.time()` ```{r checkpoint, echo=FALSE, warning=FALSE, message=FALSE} -#(checkpoint) -#checkpoint("2016-04-01", scanForPackages=FALSE, verbose=FALSE) -.libPaths("C:\\Users\\Andrzej\\Documents\\.checkpoint\\2016-04-01\\lib\\x86_64-w64-mingw32\\3.2.3") +library(checkpoint) +checkpoint("2016-04-01", scanForPackages=FALSE, verbose=FALSE) + library(reshape2) library(dplyr) library(ggplot2) @@ -22,6 +22,7 @@ library(RColorBrewer) 1. [Configuration](#configuration) 2. [Results per host](#results-per-host) + * [Intel Core i7-4790K + MSI GeForce GTX 980 Ti Lightning](#intel-core-i7-4790k--msi-geforce-gtx-980-ti) * [Intel Core i5-4590 + NVIDIA GeForce GT 430](#intel-core-i5-4590--nvidia-geforce-gt-430) * [Intel Core i5-4590 + NVIDIA GeForce GTX 750 Ti](#intel-core-i5-4590--nvidia-geforce-gtx-750-ti) * [Intel Core i5-3570](#intel-core-i5-3570) @@ -43,7 +44,7 @@ library(RColorBrewer) ## Configuration -**R software**: [Microsoft R Open](https://mran.microsoft.com/open/) (3.2.4). +**R software**: [Microsoft R Open](https://mran.microsoft.com/open/) (3.2.4) **Libraries**: @@ -59,15 +60,16 @@ library(RColorBrewer) |No.|CPU|GPU| |---|---|---| -|1.|[Intel Core i5-4590](http://ark.intel.com/products/80815/Intel-Core-i5-4590-Processor-6M-Cache-up-to-3_70-GHz)|[NVIDIA GeForce GT 430](http://www.geforce.com/hardware/desktop-gpus/geforce-gt-430/specifications)| -|2.|[Intel Core i5-4590](http://ark.intel.com/products/80815/Intel-Core-i5-4590-Processor-6M-Cache-up-to-3_70-GHz)|[NVIDIA GeForce GTX 750 Ti](http://www.geforce.com/hardware/desktop-gpus/geforce-gtx-750-ti/specifications)| -|3.|[Intel Core i5-3570](http://ark.intel.com/products/65702/Intel-Core-i5-3570-Processor-6M-Cache-up-to-3_80-GHz)| - | -|4.|[Intel Core i3-2120](http://ark.intel.com/products/53426/Intel-Core-i3-2120-Processor-3M-Cache-3_30-GHz)| - | -|5.|[Intel Core i3-3120M](http://ark.intel.com/products/71465/Intel-Core-i3-3120M-Processor-3M-Cache-2_50-GHz)| - | -|6.|[Intel Core i5-3317U](http://ark.intel.com/products/65707/Intel-Core-i5-3317U-Processor-3M-Cache-up-to-2_60-GHz)|[NVIDIA GeForce GT 630M](http://www.geforce.com/hardware/notebook-gpus/geforce-gt-630m/specifications)| -|7.|[Intel Pentium Dual-Core E5300](http://ark.intel.com/products/35300/Intel-Pentium-Processor-E5300-2M-Cache-2_60-GHz-800-MHz-FSB)| - | +|1.|[Intel Core i7-4790K](http://ark.intel.com/products/80807/Intel-Core-i7-4790K-Processor-8M-Cache-up-to-4_40-GHz)|[MSI GeForce GTX 980 Ti Lightning](https://us.msi.com/Graphics-card/GTX-980-Ti-LIGHTNING.html#hero-specification)| +|2.|[Intel Core i5-4590](http://ark.intel.com/products/80815/Intel-Core-i5-4590-Processor-6M-Cache-up-to-3_70-GHz)|[NVIDIA GeForce GT 430](http://www.geforce.com/hardware/desktop-gpus/geforce-gt-430/specifications)| +|3.|[Intel Core i5-4590](http://ark.intel.com/products/80815/Intel-Core-i5-4590-Processor-6M-Cache-up-to-3_70-GHz)|[NVIDIA GeForce GTX 750 Ti](http://www.geforce.com/hardware/desktop-gpus/geforce-gtx-750-ti/specifications)| +|4.|[Intel Core i5-3570](http://ark.intel.com/products/65702/Intel-Core-i5-3570-Processor-6M-Cache-up-to-3_80-GHz)| - | +|5.|[Intel Core i3-2120](http://ark.intel.com/products/53426/Intel-Core-i3-2120-Processor-3M-Cache-3_30-GHz)| - | +|6.|[Intel Core i3-3120M](http://ark.intel.com/products/71465/Intel-Core-i3-3120M-Processor-3M-Cache-2_50-GHz)| - | +|7.|[Intel Core i5-3317U](http://ark.intel.com/products/65707/Intel-Core-i5-3317U-Processor-3M-Cache-up-to-2_60-GHz)|[NVIDIA GeForce GT 630M](http://www.geforce.com/hardware/notebook-gpus/geforce-gt-630m/specifications)| +|8.|[Intel Pentium Dual-Core E5300](http://ark.intel.com/products/35300/Intel-Pentium-Processor-E5300-2M-Cache-2_60-GHz-800-MHz-FSB)| - | -**Benchmarks**: [Urbanek](http://r.research.att.com/benchmarks/R-benchmark-25.R), [Revolution](https://gist.github.com/andrie/24c9672f1ea39af89c66#file-rro-mkl-benchmark-r), [Gcbd](https://cran.r-project.org/web/packages/gcbd/vignettes/gcbd.pdf). +**Benchmarks**: [R-benchmark-25](http://r.research.att.com/benchmarks/R-benchmark-25.R), [Revolution](https://gist.github.com/andrie/24c9672f1ea39af89c66#file-rro-mkl-benchmark-r), [Gcbd](https://cran.r-project.org/web/packages/gcbd/vignettes/gcbd.pdf). ```{r config, echo=FALSE} @@ -121,7 +123,7 @@ for (hostname in HOSTNAMES) data.frame(Host= hostname, CPU = gsub("\\(.*?\\)", "", dr[1]), GPU = ifelse(length(dr)==3, - gsub("(NVIDIA).*\\[(.*)\\]", "\\1 \\2", dr[3]), NA))) + gsub("(NVIDIA|MSI).*\\[(.*)\\]", "\\1 \\2", dr[3]), NA))) } else { warning(paste("File", fp, "does not exist")) } @@ -205,7 +207,11 @@ for (host in hosts.info$Host) for (benchmark in BENCHMARKS) { - cat(paste0("### ", paste(toupper(substring(benchmark, 1,1)), substring(benchmark, 2),sep="", collapse=" "), " benchmark\n\n")) + cat(paste0("### ", + ifelse(benchmark=="urbanek", "R-benchmark-25", # fix to common name + paste(toupper(substring(benchmark, 1,1)), + substring(benchmark, 2), " benchmark", sep="", collapse=" ")), + "\n\n")) testnames = benchmark.results %>% filter(Benchmark == benchmark) %>% @@ -252,7 +258,15 @@ for (host in hosts.info$Host) else if(x=="cuBLAS") "D" else "C"})) - cat(paste0("#### ", gsub(" \\(.*\\)", "", test)), "\n\n") + cat(paste0("#### ", # fix urbanek errors in names + gsub(" \\(.*\\)", "", + gsub("Linear regr. over a 3000x3000 matrix", + "Linear regr. over a 2000x2000 matrix", + gsub("Eigenvalues of a 640x640", + "Eigenvalues of a 600x600", test)) + ) + ), + "\n\n") if (any(data.to.plot$Time == Inf)) { @@ -409,7 +423,11 @@ for (lib in LIBRARIES) for (benchmark in BENCHMARKS) { - cat(paste0("### ", paste(toupper(substring(benchmark, 1,1)), substring(benchmark, 2),sep="", collapse=" "), " benchmark\n\n")) + cat(paste0("### ", + ifelse(benchmark=="urbanek", "R-benchmark-25", # fix to common name + paste(toupper(substring(benchmark, 1,1)), + substring(benchmark, 2), " benchmark", sep="", collapse=" ")), + "\n\n")) testnames = benchmark.results %>% filter(Benchmark == benchmark) %>% @@ -443,7 +461,15 @@ for (lib in LIBRARIES) data.to.plot = data.to.plot %>% rowwise() %>% mutate(CPUGPU=hosts.info[which(hosts.info$Host==Host), ifelse(lib!="cublas", "CPU", "GPU")]) - cat(paste0("#### ", gsub(" \\(.*\\)", "", test)), "\n\n") + cat(paste0("#### ", # fix urbanek errors in names + gsub(" \\(.*\\)", "", + gsub("Linear regr. over a 3000x3000 matrix", + "Linear regr. over a 2000x2000 matrix", + gsub("Eigenvalues of a 640x640", + "Eigenvalues of a 600x600", test)) + ) + ), + "\n\n") if (any(data.to.plot$Time == Inf)) { @@ -463,9 +489,9 @@ for (lib in LIBRARIES) " runs - lower is better\n\n")) - myColors = c("#5AAC45", "#636363", "#636363", "#E6191A", "#636363", "#636363") + myColors = c("#5AAC45", "#636363", "#636363", "#636363", "#E6191A", "#636363", "#636363") if (lib=="cublas") - myColors = c("#E6191A", "#5AAC45", "#636363")#, "#636363", "#5AAC45", "#636363") + myColors = c("#5AAC45", "#E6191A", "#636363", "#636363")#, "#5AAC45", "#636363") colScale = scale_fill_manual(name = "Color", values = myColors) @@ -503,7 +529,7 @@ for (lib in LIBRARIES) } else { - rbColors = c("#F40000","#FF8000","#0094FF","#7F00FF","#E900FF","#00DD0E") + rbColors = c("#F40000","#FF8000","#0094FF","#7F00FF","#E900FF","#00DD0E","#B35807") png(image.path, width=400, height=350, type="cairo") print(ggplot(data.to.plot, @@ -528,7 +554,7 @@ for (lib in LIBRARIES) scale_y_continuous(expand = c(0, 0)) + geom_hline(yintercept = 0, color="grey") + geom_vline(xintercept = 0.4, color="grey") + - scale_shape_manual(values=c(25,24,22,21,23,25)) + + scale_shape_manual(values=c(25,24,22,21,23,25,24)) + scale_color_manual(values=rbColors) + scale_fill_manual(values=rbColors) @@ -558,7 +584,7 @@ for (lib in LIBRARIES) breaks=c(100, 200, 400, 800, 1600, 3200, 5000), limits=c(100, 5500)) + scale_y_log10() + - scale_shape_manual(values=c(25,24,22,21,23,25)) + + scale_shape_manual(values=c(25,24,22,21,23,25,24)) + geom_hline(yintercept = 0, color="grey") + geom_vline(xintercept = min(data.to.plot$Size), color="grey") + scale_color_manual(values=rbColors) +