w-orm-mongodb 1.1.37 → 1.1.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -29,7 +29,7 @@
29
29
  <nav >
30
30
 
31
31
 
32
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="WOrmMongodb.html">WOrmMongodb</a><ul class='methods'><li data-type='method'><a href="WOrmMongodb.html#.del">del</a></li><li data-type='method'><a href="WOrmMongodb.html#.delAll">delAll</a></li><li data-type='method'><a href="WOrmMongodb.html#.delAllGfs">delAllGfs</a></li><li data-type='method'><a href="WOrmMongodb.html#.delGfs">delGfs</a></li><li data-type='method'><a href="WOrmMongodb.html#.insert">insert</a></li><li data-type='method'><a href="WOrmMongodb.html#.insertGfs">insertGfs</a></li><li data-type='method'><a href="WOrmMongodb.html#.save">save</a></li><li data-type='method'><a href="WOrmMongodb.html#.select">select</a></li><li data-type='method'><a href="WOrmMongodb.html#.selectGfs">selectGfs</a></li></ul></li></ul>
32
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="WOrmMongodb.html">WOrmMongodb</a><ul class='methods'><li data-type='method'><a href="WOrmMongodb.html#.del">del</a></li><li data-type='method'><a href="WOrmMongodb.html#.delAll">delAll</a></li><li data-type='method'><a href="WOrmMongodb.html#.delAllGfs">delAllGfs</a></li><li data-type='method'><a href="WOrmMongodb.html#.delGfs">delGfs</a></li><li data-type='method'><a href="WOrmMongodb.html#.insert">insert</a></li><li data-type='method'><a href="WOrmMongodb.html#.insertGfs">insertGfs</a></li><li data-type='method'><a href="WOrmMongodb.html#.save">save</a></li><li data-type='method'><a href="WOrmMongodb.html#.select">select</a></li><li data-type='method'><a href="WOrmMongodb.html#.selectByPk">selectByPk</a></li><li data-type='method'><a href="WOrmMongodb.html#.selectByPkGfs">selectByPkGfs</a></li></ul></li></ul>
33
33
 
34
34
  </nav>
35
35
 
@@ -74,13 +74,15 @@
74
74
  <dl class="details">
75
75
 
76
76
  <dt class="tag-description">Description:</dt>
77
- <dd class="tag-description"><ul class="dummy"><li><p>操作資料庫(MongoDB)</p></li></ul></dd>
77
+ <dd class="tag-description"><ul class="dummy"><li><p>操作資料庫(MongoDB)</p>
78
+ <p>本套件之主鍵欄位固定為id,尚未支援由呼叫端指定。
79
+ id為無業務語義之識別碼,故insert與save於輸入未帶有效id時自動補值;del不補值。</p></li></ul></dd>
78
80
 
79
81
 
80
82
 
81
83
  <dt class="tag-source">Source:</dt>
82
84
  <dd class="tag-source"><ul class="dummy"><li>
83
- <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line35">line 35</a>
85
+ <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line33">line 33</a>
84
86
  </li></ul></dd>
85
87
 
86
88
 
@@ -423,13 +425,15 @@
423
425
  <dl class="details">
424
426
 
425
427
  <dt class="tag-description">Description:</dt>
426
- <dd class="tag-description"><ul class="dummy"><li><p>刪除數據</p></li></ul></dd>
428
+ <dd class="tag-description"><ul class="dummy"><li><p>刪除數據
429
+ 註: n為id命中筆數;未帶有效id者視為本筆無法處理,不送查詢條件且以ok為0並附err回報;
430
+ 判斷本筆是否真的被刪除一律以nDeleted為準</p></li></ul></dd>
427
431
 
428
432
 
429
433
 
430
434
  <dt class="tag-source">Source:</dt>
431
435
  <dd class="tag-source"><ul class="dummy"><li>
432
- <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line311">line 311</a>
436
+ <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line648">line 648</a>
433
437
  </li></ul></dd>
434
438
 
435
439
 
@@ -547,7 +551,7 @@
547
551
 
548
552
 
549
553
  <div class="param-desc">
550
- <p>回傳Promise,resolve回傳刪除結果,reject回傳錯誤訊息</p>
554
+ <p>回傳Promise,resolve回傳與輸入等長之刪除結果陣列,reject回傳錯誤訊息</p>
551
555
  </div>
552
556
 
553
557
 
@@ -584,13 +588,14 @@
584
588
  <dl class="details">
585
589
 
586
590
  <dt class="tag-description">Description:</dt>
587
- <dd class="tag-description"><ul class="dummy"><li><p>刪除全部數據,需與del分開,避免未傳數據導致直接刪除全表</p></li></ul></dd>
591
+ <dd class="tag-description"><ul class="dummy"><li><p>刪除全部數據,需與del分開,避免未傳數據導致直接刪除全表
592
+ 註: n為實際刪除筆數,恆等於nDeleted;條件無命中時回傳0亦屬正常結果</p></li></ul></dd>
588
593
 
589
594
 
590
595
 
591
596
  <dt class="tag-source">Source:</dt>
592
597
  <dd class="tag-source"><ul class="dummy"><li>
593
- <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line386">line 386</a>
598
+ <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line760">line 760</a>
594
599
  </li></ul></dd>
595
600
 
596
601
 
@@ -762,13 +767,15 @@
762
767
  <dl class="details">
763
768
 
764
769
  <dt class="tag-description">Description:</dt>
765
- <dd class="tag-description"><ul class="dummy"><li><p>使用GridFS,刪除全部數據,需與del分開,避免未傳數據導致直接刪除全表</p></li></ul></dd>
770
+ <dd class="tag-description"><ul class="dummy"><li><p>使用GridFS,刪除全部數據,需與delGfs分開,避免未傳數據導致直接刪除全部
771
+ 註: n為實際刪除筆數,恆等於nDeleted;條件無命中時回傳0亦屬正常結果
772
+ 本函數不建立唯一索引,以免既有數據尚存重複id時無法清除</p></li></ul></dd>
766
773
 
767
774
 
768
775
 
769
776
  <dt class="tag-source">Source:</dt>
770
777
  <dd class="tag-source"><ul class="dummy"><li>
771
- <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line749">line 749</a>
778
+ <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line1183">line 1183</a>
772
779
  </li></ul></dd>
773
780
 
774
781
 
@@ -930,7 +937,7 @@
930
937
 
931
938
 
932
939
 
933
- <h4 class="name" id=".delGfs"><span class="type-signature type-signature-async, static">(async, static) </span>delGfs<span class="signature">(id)</span><span class="type-signature"> &rarr; {Promise}</span></h4>
940
+ <h4 class="name" id=".delGfs"><span class="type-signature type-signature-async, static">(async, static) </span>delGfs<span class="signature">(data)</span><span class="type-signature"> &rarr; {Promise}</span></h4>
934
941
 
935
942
 
936
943
 
@@ -940,13 +947,15 @@
940
947
  <dl class="details">
941
948
 
942
949
  <dt class="tag-description">Description:</dt>
943
- <dd class="tag-description"><ul class="dummy"><li><p>使用GridFS,刪除數據</p></li></ul></dd>
950
+ <dd class="tag-description"><ul class="dummy"><li><p>使用GridFS,刪除數據
951
+ 註: n為id命中筆數;未帶有效id者視為本筆無法處理,以ok為0並附err回報;
952
+ 判斷本筆是否真的被刪除一律以nDeleted為準</p></li></ul></dd>
944
953
 
945
954
 
946
955
 
947
956
  <dt class="tag-source">Source:</dt>
948
957
  <dd class="tag-source"><ul class="dummy"><li>
949
- <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line641">line 641</a>
958
+ <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line1055">line 1055</a>
950
959
  </li></ul></dd>
951
960
 
952
961
 
@@ -1018,13 +1027,16 @@
1018
1027
 
1019
1028
  <tr>
1020
1029
 
1021
- <td class="name"><code>id</code></td>
1030
+ <td class="name"><code>data</code></td>
1022
1031
 
1023
1032
 
1024
1033
  <td class="type">
1025
1034
 
1026
1035
 
1027
- <span class="param-type">String</span>
1036
+ <span class="param-type">Object</span>
1037
+ |
1038
+
1039
+ <span class="param-type">Array</span>
1028
1040
 
1029
1041
 
1030
1042
 
@@ -1035,7 +1047,7 @@
1035
1047
 
1036
1048
 
1037
1049
 
1038
- <td class="description last"><p>輸入刪除id字串</p></td>
1050
+ <td class="description last"><p>輸入數據物件或陣列,各數據物件須帶id</p></td>
1039
1051
  </tr>
1040
1052
 
1041
1053
 
@@ -1061,7 +1073,7 @@
1061
1073
 
1062
1074
 
1063
1075
  <div class="param-desc">
1064
- <p>回傳Promise,resolve回傳刪除結果,reject回傳錯誤訊息</p>
1076
+ <p>回傳Promise,resolve回傳與輸入等長之刪除結果陣列,reject回傳錯誤訊息</p>
1065
1077
  </div>
1066
1078
 
1067
1079
 
@@ -1098,13 +1110,15 @@
1098
1110
  <dl class="details">
1099
1111
 
1100
1112
  <dt class="tag-description">Description:</dt>
1101
- <dd class="tag-description"><ul class="dummy"><li><p>插入數據,插入同樣數據會自動產生不同_id,故insert前需自行判斷有無重複</p></li></ul></dd>
1113
+ <dd class="tag-description"><ul class="dummy"><li><p>插入數據,僅於id不存在時寫入,已存在者跳過且不覆寫
1114
+ 由MongoDB於唯一索引上原子完成[檢查id未存在]與[寫入],併發時同一id僅有一次成功
1115
+ 註: n為輸入筆數,nInserted為實際插入筆數,全數已存在而nInserted為0屬正常結果</p></li></ul></dd>
1102
1116
 
1103
1117
 
1104
1118
 
1105
1119
  <dt class="tag-source">Source:</dt>
1106
1120
  <dd class="tag-source"><ul class="dummy"><li>
1107
- <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line119">line 119</a>
1121
+ <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line346">line 346</a>
1108
1122
  </li></ul></dd>
1109
1123
 
1110
1124
 
@@ -1249,7 +1263,7 @@
1249
1263
 
1250
1264
 
1251
1265
 
1252
- <h4 class="name" id=".insertGfs"><span class="type-signature type-signature-async, static">(async, static) </span>insertGfs<span class="signature">(u8a)</span><span class="type-signature"> &rarr; {Promise}</span></h4>
1266
+ <h4 class="name" id=".insertGfs"><span class="type-signature type-signature-async, static">(async, static) </span>insertGfs<span class="signature">(data)</span><span class="type-signature"> &rarr; {Promise}</span></h4>
1253
1267
 
1254
1268
 
1255
1269
 
@@ -1259,13 +1273,15 @@
1259
1273
  <dl class="details">
1260
1274
 
1261
1275
  <dt class="tag-description">Description:</dt>
1262
- <dd class="tag-description"><ul class="dummy"><li><p>使用GridFS,插入數據,需為Uint8Array格式</p></li></ul></dd>
1276
+ <dd class="tag-description"><ul class="dummy"><li><p>使用GridFS,插入數據,僅於id不存在時寫入,已存在者跳過且不覆寫
1277
+ 數據物件形狀為{ id, u8a },id未給時自動產生,u8a須為Uint8Array
1278
+ 註: n為輸入筆數,nInserted為實際插入筆數,全數已存在而nInserted為0屬正常結果</p></li></ul></dd>
1263
1279
 
1264
1280
 
1265
1281
 
1266
1282
  <dt class="tag-source">Source:</dt>
1267
1283
  <dd class="tag-source"><ul class="dummy"><li>
1268
- <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line440">line 440</a>
1284
+ <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line818">line 818</a>
1269
1285
  </li></ul></dd>
1270
1286
 
1271
1287
 
@@ -1337,13 +1353,16 @@
1337
1353
 
1338
1354
  <tr>
1339
1355
 
1340
- <td class="name"><code>u8a</code></td>
1356
+ <td class="name"><code>data</code></td>
1341
1357
 
1342
1358
 
1343
1359
  <td class="type">
1344
1360
 
1345
1361
 
1346
- <span class="param-type">Uint8Array</span>
1362
+ <span class="param-type">Object</span>
1363
+ |
1364
+
1365
+ <span class="param-type">Array</span>
1347
1366
 
1348
1367
 
1349
1368
 
@@ -1354,7 +1373,7 @@
1354
1373
 
1355
1374
 
1356
1375
 
1357
- <td class="description last"></td>
1376
+ <td class="description last"><p>輸入數據物件或陣列,各數據物件形狀為{ id, u8a }</p></td>
1358
1377
  </tr>
1359
1378
 
1360
1379
 
@@ -1417,13 +1436,15 @@
1417
1436
  <dl class="details">
1418
1437
 
1419
1438
  <dt class="tag-description">Description:</dt>
1420
- <dd class="tag-description"><ul class="dummy"><li><p>儲存數據</p></li></ul></dd>
1439
+ <dd class="tag-description"><ul class="dummy"><li><p>儲存數據,以id為準更新既有數據,未給之欄位會保留;id不存在且option.autoInsert為true時改為插入
1440
+ 註: n為id命中筆數,命中或經插入而產生皆為1;[內容相同]之判定基準為將待儲存物件合併進現值後結果與現值相同,
1441
+ 相同者不寫入而nModified為0;本筆失敗不中斷整批,該筆以ok為0並附err回報</p></li></ul></dd>
1421
1442
 
1422
1443
 
1423
1444
 
1424
1445
  <dt class="tag-source">Source:</dt>
1425
1446
  <dd class="tag-source"><ul class="dummy"><li>
1426
- <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line211">line 211</a>
1447
+ <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line568">line 568</a>
1427
1448
  </li></ul></dd>
1428
1449
 
1429
1450
 
@@ -1667,7 +1688,7 @@
1667
1688
 
1668
1689
 
1669
1690
  <div class="param-desc">
1670
- <p>回傳Promise,resolve回傳儲存結果,reject回傳錯誤訊息</p>
1691
+ <p>回傳Promise,resolve回傳與輸入等長之儲存結果陣列,reject回傳錯誤訊息</p>
1671
1692
  </div>
1672
1693
 
1673
1694
 
@@ -1710,7 +1731,7 @@
1710
1731
 
1711
1732
  <dt class="tag-source">Source:</dt>
1712
1733
  <dd class="tag-source"><ul class="dummy"><li>
1713
- <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line65">line 65</a>
1734
+ <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line236">line 236</a>
1714
1735
  </li></ul></dd>
1715
1736
 
1716
1737
 
@@ -1845,7 +1866,167 @@
1845
1866
 
1846
1867
 
1847
1868
  <div class="param-desc">
1848
- <p>回傳Promise,resolve回傳數據,reject回傳錯誤訊息</p>
1869
+ <p>回傳Promise,resolve回傳數據陣列,無符合數據回傳空陣列,reject回傳錯誤訊息</p>
1870
+ </div>
1871
+
1872
+
1873
+
1874
+ <dl class="param-type">
1875
+ <dt>
1876
+ Type
1877
+ </dt>
1878
+ <dd>
1879
+
1880
+ <span class="param-type">Promise</span>
1881
+
1882
+
1883
+
1884
+ </dd>
1885
+ </dl>
1886
+
1887
+
1888
+
1889
+
1890
+
1891
+
1892
+
1893
+
1894
+
1895
+
1896
+ <h4 class="name" id=".selectByPk"><span class="type-signature type-signature-async, static">(async, static) </span>selectByPk<span class="signature">(pk)</span><span class="type-signature"> &rarr; {Promise}</span></h4>
1897
+
1898
+
1899
+
1900
+
1901
+
1902
+
1903
+ <dl class="details">
1904
+
1905
+ <dt class="tag-description">Description:</dt>
1906
+ <dd class="tag-description"><ul class="dummy"><li><p>由主鍵查詢單筆數據,因由MongoDB查找且僅回傳單筆,不需如select提取全部符合數據再處理,故數據量大時效能較佳
1907
+ 註: 本套件之主鍵欄位固定為id,尚未支援由呼叫端指定
1908
+ 註: 本函數不得有副作用,故不建立唯一索引</p></li></ul></dd>
1909
+
1910
+
1911
+
1912
+ <dt class="tag-source">Source:</dt>
1913
+ <dd class="tag-source"><ul class="dummy"><li>
1914
+ <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line288">line 288</a>
1915
+ </li></ul></dd>
1916
+
1917
+
1918
+
1919
+
1920
+
1921
+
1922
+
1923
+
1924
+
1925
+
1926
+
1927
+
1928
+
1929
+
1930
+
1931
+
1932
+
1933
+
1934
+
1935
+
1936
+
1937
+
1938
+
1939
+
1940
+
1941
+
1942
+
1943
+
1944
+
1945
+
1946
+
1947
+ </dl>
1948
+
1949
+
1950
+
1951
+
1952
+
1953
+
1954
+
1955
+
1956
+
1957
+
1958
+
1959
+
1960
+
1961
+ <h5 class="h5-parameters">Parameters:</h5>
1962
+
1963
+
1964
+ <table class="params">
1965
+ <thead>
1966
+ <tr>
1967
+
1968
+ <th>Name</th>
1969
+
1970
+
1971
+ <th>Type</th>
1972
+
1973
+
1974
+
1975
+
1976
+
1977
+ <th class="last">Description</th>
1978
+ </tr>
1979
+ </thead>
1980
+
1981
+ <tbody>
1982
+
1983
+
1984
+ <tr>
1985
+
1986
+ <td class="name"><code>pk</code></td>
1987
+
1988
+
1989
+ <td class="type">
1990
+
1991
+
1992
+ <span class="param-type">String</span>
1993
+
1994
+
1995
+
1996
+
1997
+ </td>
1998
+
1999
+
2000
+
2001
+
2002
+
2003
+ <td class="description last"><p>輸入主鍵值字串,即數據之id</p></td>
2004
+ </tr>
2005
+
2006
+
2007
+ </tbody>
2008
+ </table>
2009
+
2010
+
2011
+
2012
+
2013
+
2014
+
2015
+
2016
+
2017
+
2018
+
2019
+
2020
+
2021
+
2022
+
2023
+
2024
+
2025
+ <h5 class="h5-returns">Returns:</h5>
2026
+
2027
+
2028
+ <div class="param-desc">
2029
+ <p>回傳Promise,resolve回傳數據物件,若無此主鍵或主鍵值無效則回傳null,reject回傳錯誤訊息</p>
1849
2030
  </div>
1850
2031
 
1851
2032
 
@@ -1872,7 +2053,7 @@
1872
2053
 
1873
2054
 
1874
2055
 
1875
- <h4 class="name" id=".selectGfs"><span class="type-signature type-signature-async, static">(async, static) </span>selectGfs<span class="signature">(id)</span><span class="type-signature"> &rarr; {Promise}</span></h4>
2056
+ <h4 class="name" id=".selectByPkGfs"><span class="type-signature type-signature-async, static">(async, static) </span>selectByPkGfs<span class="signature">(pk)</span><span class="type-signature"> &rarr; {Promise}</span></h4>
1876
2057
 
1877
2058
 
1878
2059
 
@@ -1882,13 +2063,16 @@
1882
2063
  <dl class="details">
1883
2064
 
1884
2065
  <dt class="tag-description">Description:</dt>
1885
- <dd class="tag-description"><ul class="dummy"><li><p>使用GridFS,查詢數據</p></li></ul></dd>
2066
+ <dd class="tag-description"><ul class="dummy"><li><p>使用GridFS,由主鍵查詢單筆數據
2067
+ 註: 查無數據或主鍵值無效時回傳null,判定基準與selectByPk一致
2068
+ 註: 本套件之主鍵欄位固定為id,尚未支援由呼叫端指定
2069
+ 本函數不得有副作用,故不建立唯一索引</p></li></ul></dd>
1886
2070
 
1887
2071
 
1888
2072
 
1889
2073
  <dt class="tag-source">Source:</dt>
1890
2074
  <dd class="tag-source"><ul class="dummy"><li>
1891
- <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line528">line 528</a>
2075
+ <a href="WOrmMongodb.mjs.html">WOrmMongodb.mjs</a>, <a href="WOrmMongodb.mjs.html#line925">line 925</a>
1892
2076
  </li></ul></dd>
1893
2077
 
1894
2078
 
@@ -1960,7 +2144,7 @@
1960
2144
 
1961
2145
  <tr>
1962
2146
 
1963
- <td class="name"><code>id</code></td>
2147
+ <td class="name"><code>pk</code></td>
1964
2148
 
1965
2149
 
1966
2150
  <td class="type">
@@ -1977,7 +2161,7 @@
1977
2161
 
1978
2162
 
1979
2163
 
1980
- <td class="description last"><p>輸入查詢id字串</p></td>
2164
+ <td class="description last"><p>輸入主鍵值字串,即數據之id</p></td>
1981
2165
  </tr>
1982
2166
 
1983
2167
 
@@ -2003,7 +2187,7 @@
2003
2187
 
2004
2188
 
2005
2189
  <div class="param-desc">
2006
- <p>回傳Promise,resolve回傳數據,reject回傳錯誤訊息</p>
2190
+ <p>回傳Promise,resolve回傳數據物件{ id, u8a },若無此主鍵或主鍵值無效則回傳null,reject回傳錯誤訊息</p>
2007
2191
  </div>
2008
2192
 
2009
2193
 
@@ -2045,7 +2229,7 @@
2045
2229
  <br class="clear">
2046
2230
 
2047
2231
  <footer>
2048
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Sat Aug 08 2026 14:31:31 GMT+0800 (台北標準時間) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
2232
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Sun Aug 16 2026 23:36:47 GMT+0800 (台北標準時間) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
2049
2233
  </footer>
2050
2234
 
2051
2235
  <script>prettyPrint();</script>