diff --git a/.gitattributes b/.gitattributes
index 2ac14fca73..753d0280df 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -6216,6 +6216,7 @@ docs/xml/lazutils/lazloggerbase.xml svneol=native#text/plain
docs/xml/lazutils/lazloggerdummy.xml svneol=native#text/plain
docs/xml/lazutils/lazloggerprofiling.xml svneol=native#text/plain
docs/xml/lazutils/lazmethodlist.xml svneol=native#text/plain
+docs/xml/lazutils/lazstringutils.xml svneol=native#text/plain
docs/xml/lazutils/lazsysutils.xml svneol=native#text/plain
docs/xml/lazutils/lazunicode.xml svneol=native#text/plain
docs/xml/lazutils/lazutf16.xml svneol=native#text/plain
diff --git a/docs/xml/lazutils/easylazfreetype.xml b/docs/xml/lazutils/easylazfreetype.xml
index 20c95fce1f..ebd3d7e98c 100644
--- a/docs/xml/lazutils/easylazfreetype.xml
+++ b/docs/xml/lazutils/easylazfreetype.xml
@@ -1,25 +1,20 @@
-
+
-
-
-
-
+
-
-
-
-
+
+
@@ -40,82 +35,64 @@
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
@@ -156,19 +133,15 @@
-
-
-
-
+
+
-
-
-
-
+
+
@@ -244,10 +217,8 @@
-
-
-
-
+
+
@@ -263,63 +234,53 @@
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -330,12 +291,9 @@
-
-
-
-
-
-
+
+
+
@@ -351,12 +309,9 @@
-
-
-
-
-
-
+
+
+
@@ -367,12 +322,9 @@
-
-
-
-
-
-
+
+
+
@@ -383,12 +335,9 @@
-
-
-
-
-
-
+
+
+
@@ -399,12 +348,9 @@
-
-
-
-
-
-
+
+
+
@@ -415,12 +361,9 @@
-
-
-
-
-
-
+
+
+
@@ -431,12 +374,9 @@
-
-
-
-
-
-
+
+
+
@@ -452,12 +392,9 @@
-
-
-
-
-
-
+
+
+
@@ -473,12 +410,9 @@
-
-
-
-
-
-
+
+
+
@@ -489,12 +423,9 @@
-
-
-
-
-
-
+
+
+
@@ -505,57 +436,44 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
@@ -566,19 +484,15 @@
-
-
-
-
+
+
-
-
-
-
+
+
@@ -589,32 +503,24 @@
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -625,12 +531,9 @@
-
-
-
-
-
-
+
+
+
@@ -641,32 +544,24 @@
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -682,12 +577,9 @@
-
-
-
-
-
-
+
+
+
@@ -703,12 +595,9 @@
-
-
-
-
-
-
+
+
+
@@ -719,12 +608,9 @@
-
-
-
-
-
-
+
+
+
@@ -735,12 +621,9 @@
-
-
-
-
-
-
+
+
+
@@ -751,12 +634,9 @@
-
-
-
-
-
-
+
+
+
@@ -767,12 +647,9 @@
-
-
-
-
-
-
+
+
+
@@ -803,12 +680,9 @@
-
-
-
-
-
-
+
+
+
@@ -839,12 +713,9 @@
-
-
-
-
-
-
+
+
+
@@ -860,19 +731,15 @@
-
-
-
-
+
+
-
-
-
-
+
+
@@ -883,19 +750,15 @@
-
-
-
-
+
+
-
-
-
-
+
+
@@ -906,41 +769,31 @@
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -951,12 +804,9 @@
-
-
-
-
-
-
+
+
+
@@ -967,32 +817,24 @@
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -1008,12 +850,9 @@
-
-
-
-
-
-
+
+
+
@@ -1029,12 +868,9 @@
-
-
-
-
-
-
+
+
+
@@ -1045,12 +881,9 @@
-
-
-
-
-
-
+
+
+
@@ -1061,45 +894,33 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -1110,12 +931,9 @@
-
-
-
-
-
-
+
+
+
@@ -1131,23 +949,17 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -1158,12 +970,9 @@
-
-
-
-
-
-
+
+
+
@@ -1174,19 +983,15 @@
-
-
-
-
+
+
-
-
-
-
+
+
@@ -1197,19 +1002,15 @@
-
-
-
-
+
+
-
-
-
-
+
+
@@ -1220,23 +1021,17 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -1247,12 +1042,9 @@
-
-
-
-
-
-
+
+
+
@@ -1263,12 +1055,9 @@
-
-
-
-
-
-
+
+
+
@@ -1279,12 +1068,9 @@
-
-
-
-
-
-
+
+
+
@@ -1295,12 +1081,9 @@
-
-
-
-
-
-
+
+
+
@@ -1311,12 +1094,9 @@
-
-
-
-
-
-
+
+
+
@@ -1327,12 +1107,9 @@
-
-
-
-
-
-
+
+
+
@@ -1348,12 +1125,9 @@
-
-
-
-
-
-
+
+
+
@@ -1369,12 +1143,9 @@
-
-
-
-
-
-
+
+
+
@@ -1395,12 +1166,9 @@
-
-
-
-
-
-
+
+
+
@@ -1431,68 +1199,52 @@
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -1533,84 +1285,65 @@
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
@@ -1626,12 +1359,9 @@
-
-
-
-
-
-
+
+
+
@@ -1647,12 +1377,9 @@
-
-
-
-
-
-
+
+
+
@@ -1663,12 +1390,9 @@
-
-
-
-
-
-
+
+
+
@@ -1679,12 +1403,9 @@
-
-
-
-
-
-
+
+
+
@@ -1695,12 +1416,9 @@
-
-
-
-
-
-
+
+
+
@@ -1716,12 +1434,9 @@
-
-
-
-
-
-
+
+
+
@@ -1732,12 +1447,9 @@
-
-
-
-
-
-
+
+
+
@@ -1753,12 +1465,9 @@
-
-
-
-
-
-
+
+
+
@@ -1769,12 +1478,9 @@
-
-
-
-
-
-
+
+
+
@@ -1785,12 +1491,9 @@
-
-
-
-
-
-
+
+
+
@@ -1801,12 +1504,9 @@
-
-
-
-
-
-
+
+
+
@@ -1817,12 +1517,9 @@
-
-
-
-
-
-
+
+
+
@@ -1833,12 +1530,9 @@
-
-
-
-
-
-
+
+
+
@@ -1849,12 +1543,9 @@
-
-
-
-
-
-
+
+
+
@@ -1865,12 +1556,9 @@
-
-
-
-
-
-
+
+
+
@@ -1881,12 +1569,9 @@
-
-
-
-
-
-
+
+
+
@@ -1897,34 +1582,25 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -1935,12 +1611,9 @@
-
-
-
-
-
-
+
+
+
@@ -1951,12 +1624,9 @@
-
-
-
-
-
-
+
+
+
@@ -1977,12 +1647,9 @@
-
-
-
-
-
-
+
+
+
@@ -1993,164 +1660,125 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
@@ -2161,12 +1789,9 @@
-
-
-
-
-
-
+
+
+
@@ -2177,12 +1802,9 @@
-
-
-
-
-
-
+
+
+
@@ -2193,12 +1815,9 @@
-
-
-
-
-
-
+
+
+
@@ -2209,12 +1828,9 @@
-
-
-
-
-
-
+
+
+
@@ -2225,12 +1841,9 @@
-
-
-
-
-
-
+
+
+
@@ -2241,23 +1854,17 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -2268,52 +1875,39 @@
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -2344,12 +1938,9 @@
-
-
-
-
-
-
+
+
+
@@ -2365,12 +1956,9 @@
-
-
-
-
-
-
+
+
+
@@ -2386,12 +1974,9 @@
-
-
-
-
-
-
+
+
+
@@ -2407,12 +1992,9 @@
-
-
-
-
-
-
+
+
+
@@ -2433,46 +2015,36 @@
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
@@ -2483,19 +2055,15 @@
-
-
-
-
+
+
-
-
-
-
+
+
@@ -2506,37 +2074,29 @@
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
@@ -2547,84 +2107,65 @@
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
@@ -2635,12 +2176,9 @@
-
-
-
-
-
-
+
+
+
@@ -2651,12 +2189,9 @@
-
-
-
-
-
-
+
+
+
@@ -2677,12 +2212,9 @@
-
-
-
-
-
-
+
+
+
@@ -2698,12 +2230,9 @@
-
-
-
-
-
-
+
+
+
@@ -2749,57 +2278,44 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
@@ -2815,50 +2331,38 @@
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
@@ -2869,12 +2373,9 @@
-
-
-
-
-
-
+
+
+
@@ -2885,12 +2386,9 @@
-
-
-
-
-
-
+
+
+
@@ -2906,12 +2404,9 @@
-
-
-
-
-
-
+
+
+
@@ -2927,12 +2422,9 @@
-
-
-
-
-
-
+
+
+
@@ -2953,34 +2445,25 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -3006,12 +2489,9 @@
-
-
-
-
-
-
+
+
+
@@ -3027,39 +2507,30 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
@@ -3070,59 +2541,45 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
@@ -3148,12 +2605,9 @@
-
-
-
-
-
-
+
+
+
@@ -3169,12 +2623,9 @@
-
-
-
-
-
-
+
+
+
@@ -3200,12 +2651,9 @@
-
-
-
-
-
-
+
+
+
@@ -3221,12 +2669,9 @@
-
-
-
-
-
-
+
+
+
@@ -3237,12 +2682,9 @@
-
-
-
-
-
-
+
+
+
@@ -3263,12 +2705,9 @@
-
-
-
-
-
-
+
+
+
@@ -3289,12 +2728,9 @@
-
-
-
-
-
-
+
+
+
@@ -3325,12 +2761,9 @@
-
-
-
-
-
-
+
+
+
@@ -3356,12 +2789,9 @@
-
-
-
-
-
-
+
+
+
@@ -3377,41 +2807,31 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
@@ -3427,21 +2847,16 @@
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
@@ -3467,12 +2882,9 @@
-
-
-
-
-
-
+
+
+
@@ -3488,12 +2900,9 @@
-
-
-
-
-
-
+
+
+
@@ -3504,12 +2913,9 @@
-
-
-
-
-
-
+
+
+
@@ -3530,12 +2936,9 @@
-
-
-
-
-
-
+
+
+
@@ -3556,12 +2959,9 @@
-
-
-
-
-
-
+
+
+
@@ -3582,30 +2982,23 @@
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
@@ -3618,7 +3011,8 @@
-
+
+
diff --git a/docs/xml/lazutils/lazstringutils.xml b/docs/xml/lazutils/lazstringutils.xml
new file mode 100644
index 0000000000..66f46fc041
--- /dev/null
+++ b/docs/xml/lazutils/lazstringutils.xml
@@ -0,0 +1,514 @@
+
+
+
+
+
+
+ Contains routines used for string manipulation
+
+
+ LazStringUtils.pas contains routines used for string manipulation. It is part of the LazUtils package.
+
+
+ File added in LCL version 2.1.0.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Deprecated. Use LineBreaksToSystemLineBreaks instead.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Converts a string into a comment using the specified comment style
+
+
+ CommentText is a String function used to convert a string into a comment using the specified comment style.
+
+
+
+
+ Value conveerted into a comment
+
+
+ Comment type applied to the string
+
+
+ Comment with the specified style marker(s)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Converts the specified lines in TStrings to a string
+
+
+
+
+ TStrings instance examined in the method
+
+
+ First line includes in the text
+
+
+ Last line included in the text
+
+
+ Delimiter inserted between lines in the text
+
+
+ Indicates if empty lines are excluded from the text
+
+
+ Text representing the specified lines in the TStrings instance
+
+
+
+ Converts the contents in TStrings to a string
+
+
+
+
+ TStrings instance examined in the method
+
+
+ First line included in the string value
+
+
+ Last line included in the string value
+
+
+ Indicates if empty lines are excluded from the result
+
+
+
+ String representing the contents of the TStrings instance
+
+
+
+ Stores the specified string as lines in a TStrings instance
+
+
+
+
+ String with values stored in the method
+
+
+ TStrings instance where values are stored in the method
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/xml/lazutils/translations.xml b/docs/xml/lazutils/translations.xml
index 6123d8ae4a..9b820485f9 100644
--- a/docs/xml/lazutils/translations.xml
+++ b/docs/xml/lazutils/translations.xml
@@ -1,172 +1,159 @@
-
+
-
-
-
-
-
+
+ Contains classes and routines used to load/check/maintain translations from .po (portable object) files.
+
+
-
-
-
-
+
+
-
+ Lazarus resource string table in JSON format
-
+ FPC resource string table (prior to FPC 2.7.1)
-
+ FPC resource string table in JSON format (since FPC 2.7.1)
-
-
-
-
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
@@ -187,12 +174,9 @@
-
-
-
-
-
-
+
+
+
@@ -208,257 +192,109 @@
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
@@ -466,12 +302,8 @@
-
-
-
-
-
-
+
+
@@ -482,12 +314,8 @@
-
-
-
-
-
-
+
+
@@ -503,12 +331,8 @@
-
-
-
-
-
-
+
+
@@ -519,12 +343,9 @@
-
-
-
-
-
-
+
+
+
@@ -537,11 +358,6 @@
-
-
-
-
-
@@ -550,12 +366,9 @@
-
-
-
-
-
-
+
+
+
@@ -563,71 +376,11 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
@@ -648,21 +401,16 @@
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
@@ -688,23 +436,17 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
@@ -720,12 +462,9 @@
-
-
-
-
-
-
+
+
+
@@ -736,12 +475,9 @@
-
-
-
-
-
-
+
+
+
@@ -752,12 +488,9 @@
-
-
-
-
-
-
+
+
+
@@ -769,121 +502,106 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
-
-
-
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
+
-
-
-
-
-
-
+
+
-
-
-
+
-
-
+
-
-
-
-
-
-
+
+
-
-
-
+
-
-
-
-
-
-
-
+
+
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
-
-
@@ -891,128 +609,60 @@
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
+
-
-
-
-
+
+
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
+
+
-
-
-
-
@@ -1020,43 +670,22 @@
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
@@ -1064,77 +693,52 @@
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
+
+
-
-
-
-
-
-
+
+
+
@@ -1175,12 +779,9 @@
-
-
-
-
-
-
+
+
+
@@ -1216,12 +817,9 @@
-
-
-
-
-
-
+
+
+
@@ -1237,12 +835,9 @@
-
-
-
-
-
-
+
+
+
@@ -1263,12 +858,9 @@
-
-
-
-
-
-
+
+
+
@@ -1282,33 +874,33 @@
-
+
-
-
-
-
+
+
-
+
-
-
-
-
+
+
-
-
+
-
-
-
-
+
+
-
+
+
+
+
+
+
+
+