Completed
Pull Request — release-2.1 (#4095)
by Rick
14:01 queued 05:55
created
Sources/DbPackages-postgresql.php 2 patches
Braces   +110 added lines, -86 removed lines patch added patch discarded remove patch
@@ -13,8 +13,9 @@  discard block
 block discarded – undo
13 13
  * @version 2.1 Beta 3
14 14
  */
15 15
 
16
-if (!defined('SMF'))
16
+if (!defined('SMF')) {
17 17
 	die('No direct access...');
18
+}
18 19
 
19 20
 /**
20 21
  * Add the file functions to the $smcFunc array.
@@ -52,8 +53,9 @@  discard block
 block discarded – undo
52 53
 		'messages', 'moderators', 'package_servers', 'permission_profiles', 'permissions', 'personal_messages',
53 54
 		'pm_recipients', 'poll_choices', 'polls', 'scheduled_tasks', 'sessions', 'settings', 'smileys',
54 55
 		'themes', 'topics');
55
-	foreach ($reservedTables as $k => $table_name)
56
-		$reservedTables[$k] = strtolower($db_prefix . $table_name);
56
+	foreach ($reservedTables as $k => $table_name) {
57
+			$reservedTables[$k] = strtolower($db_prefix . $table_name);
58
+	}
57 59
 
58 60
 	// We in turn may need the extra stuff.
59 61
 	db_extend('extra');
@@ -102,8 +104,9 @@  discard block
 block discarded – undo
102 104
 	$table_name = str_replace('{db_prefix}', $db_prefix, $table_name);
103 105
 
104 106
 	// First - no way do we touch SMF tables.
105
-	if (in_array(strtolower($table_name), $reservedTables))
106
-		return false;
107
+	if (in_array(strtolower($table_name), $reservedTables)) {
108
+			return false;
109
+	}
107 110
 
108 111
 	// Log that we'll want to remove this on uninstall.
109 112
 	$db_package_log[] = array('remove_table', $table_name);
@@ -113,10 +116,11 @@  discard block
 block discarded – undo
113 116
 	if (in_array($full_table_name, $tables))
114 117
 	{
115 118
 		// This is a sad day... drop the table? If not, return false (error) by default.
116
-		if ($if_exists == 'overwrite')
117
-			$smcFunc['db_drop_table']($table_name);
118
-		else
119
-			return $if_exists == 'ignore';
119
+		if ($if_exists == 'overwrite') {
120
+					$smcFunc['db_drop_table']($table_name);
121
+		} else {
122
+					return $if_exists == 'ignore';
123
+		}
120 124
 	}
121 125
 
122 126
 	// If we've got this far - good news - no table exists. We can build our own!
@@ -134,17 +138,18 @@  discard block
 block discarded – undo
134 138
 				)
135 139
 			);
136 140
 			$default = 'default nextval(\'' . $table_name . '_seq\')';
141
+		} elseif (isset($column['default']) && $column['default'] !== null) {
142
+					$default = 'default \'' . $smcFunc['db_escape_string']($column['default']) . '\'';
143
+		} else {
144
+					$default = '';
137 145
 		}
138
-		elseif (isset($column['default']) && $column['default'] !== null)
139
-			$default = 'default \'' . $smcFunc['db_escape_string']($column['default']) . '\'';
140
-		else
141
-			$default = '';
142 146
 
143 147
 		// Sort out the size...
144 148
 		$column['size'] = isset($column['size']) && is_numeric($column['size']) ? $column['size'] : null;
145 149
 		list ($type, $size) = $smcFunc['db_calculate_type']($column['type'], $column['size']);
146
-		if ($size !== null)
147
-			$type = $type . '(' . $size . ')';
150
+		if ($size !== null) {
151
+					$type = $type . '(' . $size . ')';
152
+		}
148 153
 
149 154
 		// Now just put it together!
150 155
 		$table_query .= "\n\t\"" . $column['name'] . '" ' . $type . ' ' . (!empty($column['null']) ? '' : 'NOT NULL') . ' ' . $default . ',';
@@ -157,19 +162,21 @@  discard block
 block discarded – undo
157 162
 		$columns = implode(',', $index['columns']);
158 163
 
159 164
 		// Primary goes in the table...
160
-		if (isset($index['type']) && $index['type'] == 'primary')
161
-			$table_query .= "\n\t" . 'PRIMARY KEY (' . implode(',', $index['columns']) . '),';
162
-		else
165
+		if (isset($index['type']) && $index['type'] == 'primary') {
166
+					$table_query .= "\n\t" . 'PRIMARY KEY (' . implode(',', $index['columns']) . '),';
167
+		} else
163 168
 		{
164
-			if (empty($index['name']))
165
-				$index['name'] = implode('_', $index['columns']);
169
+			if (empty($index['name'])) {
170
+							$index['name'] = implode('_', $index['columns']);
171
+			}
166 172
 			$index_queries[] = 'CREATE ' . (isset($index['type']) && $index['type'] == 'unique' ? 'UNIQUE' : '') . ' INDEX ' . $table_name . '_' . $index['name'] . ' ON ' . $table_name . ' (' . $columns . ')';
167 173
 		}
168 174
 	}
169 175
 
170 176
 	// No trailing commas!
171
-	if (substr($table_query, -1) == ',')
172
-		$table_query = substr($table_query, 0, -1);
177
+	if (substr($table_query, -1) == ',') {
178
+			$table_query = substr($table_query, 0, -1);
179
+	}
173 180
 
174 181
 	$table_query .= ')';
175 182
 
@@ -180,12 +187,13 @@  discard block
 block discarded – undo
180 187
 		)
181 188
 	);
182 189
 	// And the indexes...
183
-	foreach ($index_queries as $query)
184
-		$smcFunc['db_query']('', $query,
190
+	foreach ($index_queries as $query) {
191
+			$smcFunc['db_query']('', $query,
185 192
 		array(
186 193
 			'security_override' => true,
187 194
 		)
188 195
 	);
196
+	}
189 197
 
190 198
 	// Go, go power rangers!
191 199
 	$smcFunc['db_transaction']('commit');
@@ -213,8 +221,9 @@  discard block
 block discarded – undo
213 221
 	$table_name = str_replace('{db_prefix}', $db_prefix, $table_name);
214 222
 
215 223
 	// God no - dropping one of these = bad.
216
-	if (in_array(strtolower($table_name), $reservedTables))
217
-		return false;
224
+	if (in_array(strtolower($table_name), $reservedTables)) {
225
+			return false;
226
+	}
218 227
 
219 228
 	// Does it exist?
220 229
 	if (in_array($full_table_name, $smcFunc['db_list_tables']()))
@@ -272,21 +281,24 @@  discard block
 block discarded – undo
272 281
 
273 282
 	// Does it exist - if so don't add it again!
274 283
 	$columns = $smcFunc['db_list_columns']($table_name, false);
275
-	foreach ($columns as $column)
276
-		if ($column == $column_info['name'])
284
+	foreach ($columns as $column) {
285
+			if ($column == $column_info['name'])
277 286
 		{
278 287
 			// If we're going to overwrite then use change column.
279 288
 			if ($if_exists == 'update')
280 289
 				return $smcFunc['db_change_column']($table_name, $column_info['name'], $column_info);
281
-			else
282
-				return false;
290
+	}
291
+			else {
292
+							return false;
293
+			}
283 294
 		}
284 295
 
285 296
 	// Get the specifics...
286 297
 	$column_info['size'] = isset($column_info['size']) && is_numeric($column_info['size']) ? $column_info['size'] : null;
287 298
 	list ($type, $size) = $smcFunc['db_calculate_type']($column_info['type'], $column_info['size']);
288
-	if ($size !== null)
289
-		$type = $type . '(' . $size . ')';
299
+	if ($size !== null) {
300
+			$type = $type . '(' . $size . ')';
301
+	}
290 302
 
291 303
 	// Now add the thing!
292 304
 	$query = '
@@ -301,11 +313,12 @@  discard block
 block discarded – undo
301 313
 	// If there's more attributes they need to be done via a change on PostgreSQL.
302 314
 	unset($column_info['type'], $column_info['size']);
303 315
 
304
-	if (count($column_info) != 1)
305
-		return $smcFunc['db_change_column']($table_name, $column_info['name'], $column_info);
306
-	else
307
-		return true;
308
-}
316
+	if (count($column_info) != 1) {
317
+			return $smcFunc['db_change_column']($table_name, $column_info['name'], $column_info);
318
+	} else {
319
+			return true;
320
+	}
321
+	}
309 322
 
310 323
 /**
311 324
  * Removes a column.
@@ -324,8 +337,8 @@  discard block
 block discarded – undo
324 337
 
325 338
 	// Does it exist?
326 339
 	$columns = $smcFunc['db_list_columns']($table_name, true);
327
-	foreach ($columns as $column)
328
-		if ($column['name'] == $column_name)
340
+	foreach ($columns as $column) {
341
+			if ($column['name'] == $column_name)
329 342
 		{
330 343
 			// If there is an auto we need remove it!
331 344
 			if ($column['auto'])
@@ -335,6 +348,7 @@  discard block
 block discarded – undo
335 348
 						'security_override' => true,
336 349
 					)
337 350
 				);
351
+	}
338 352
 
339 353
 			$smcFunc['db_query']('', '
340 354
 				ALTER TABLE ' . $table_name . '
@@ -369,13 +383,15 @@  discard block
 block discarded – undo
369 383
 	// Check it does exist!
370 384
 	$columns = $smcFunc['db_list_columns']($table_name, true);
371 385
 	$old_info = null;
372
-	foreach ($columns as $column)
373
-		if ($column['name'] == $old_column)
386
+	foreach ($columns as $column) {
387
+			if ($column['name'] == $old_column)
374 388
 			$old_info = $column;
389
+	}
375 390
 
376 391
 	// Nothing?
377
-	if ($old_info == null)
378
-		return false;
392
+	if ($old_info == null) {
393
+			return false;
394
+	}
379 395
 
380 396
 	// Now we check each bit individually and ALTER as required.
381 397
 	if (isset($column_info['name']) && $column_info['name'] != $old_column)
@@ -432,8 +448,9 @@  discard block
 block discarded – undo
432 448
 	{
433 449
 		$column_info['size'] = isset($column_info['size']) && is_numeric($column_info['size']) ? $column_info['size'] : null;
434 450
 		list ($type, $size) = $smcFunc['db_calculate_type']($column_info['type'], $column_info['size']);
435
-		if ($size !== null)
436
-			$type = $type . '(' . $size . ')';
451
+		if ($size !== null) {
452
+					$type = $type . '(' . $size . ')';
453
+		}
437 454
 
438 455
 		// The alter is a pain.
439 456
 		$smcFunc['db_transaction']('begin');
@@ -527,21 +544,23 @@  discard block
 block discarded – undo
527 544
 	$table_name = str_replace('{db_prefix}', $db_prefix, $table_name);
528 545
 
529 546
 	// No columns = no index.
530
-	if (empty($index_info['columns']))
531
-		return false;
547
+	if (empty($index_info['columns'])) {
548
+			return false;
549
+	}
532 550
 	$columns = implode(',', $index_info['columns']);
533 551
 
534 552
 	// No name - make it up!
535 553
 	if (empty($index_info['name']))
536 554
 	{
537 555
 		// No need for primary.
538
-		if (isset($index_info['type']) && $index_info['type'] == 'primary')
539
-			$index_info['name'] = '';
540
-		else
541
-			$index_info['name'] = $table_name . implode('_', $index_info['columns']);
556
+		if (isset($index_info['type']) && $index_info['type'] == 'primary') {
557
+					$index_info['name'] = '';
558
+		} else {
559
+					$index_info['name'] = $table_name . implode('_', $index_info['columns']);
560
+		}
561
+	} else {
562
+			$index_info['name'] = $table_name . $index_info['name'];
542 563
 	}
543
-	else
544
-		$index_info['name'] = $table_name . $index_info['name'];
545 564
 
546 565
 	// Log that we are going to want to remove this!
547 566
 	$db_package_log[] = array('remove_index', $table_name, $index_info['name']);
@@ -554,10 +573,11 @@  discard block
 block discarded – undo
554 573
 		if ($index['name'] == $index_info['name'] || ($index['type'] == 'primary' && isset($index_info['type']) && $index_info['type'] == 'primary'))
555 574
 		{
556 575
 			// If we want to overwrite simply remove the current one then continue.
557
-			if ($if_exists != 'update' || $index['type'] == 'primary')
558
-				return false;
559
-			else
560
-				$smcFunc['db_remove_index']($table_name, $index_info['name']);
576
+			if ($if_exists != 'update' || $index['type'] == 'primary') {
577
+							return false;
578
+			} else {
579
+							$smcFunc['db_remove_index']($table_name, $index_info['name']);
580
+			}
561 581
 		}
562 582
 	}
563 583
 
@@ -571,8 +591,7 @@  discard block
 block discarded – undo
571 591
 				'security_override' => true,
572 592
 			)
573 593
 		);
574
-	}
575
-	else
594
+	} else
576 595
 	{
577 596
 		$smcFunc['db_query']('', '
578 597
 			CREATE ' . (isset($index_info['type']) && $index_info['type'] == 'unique' ? 'UNIQUE' : '') . ' INDEX ' . $index_info['name'] . ' ON ' . $table_name . ' (' . $columns . ')',
@@ -600,8 +619,9 @@  discard block
 block discarded – undo
600 619
 
601 620
 	// Better exist!
602 621
 	$indexes = $smcFunc['db_list_indexes']($table_name, true);
603
-	if ($index_name != 'primary')
604
-		$index_name = $table_name . '_' . $index_name;
622
+	if ($index_name != 'primary') {
623
+			$index_name = $table_name . '_' . $index_name;
624
+	}
605 625
 
606 626
 	foreach ($indexes as $index)
607 627
 	{
@@ -665,8 +685,7 @@  discard block
 block discarded – undo
665 685
 			'datetime' => 'timestamp without time zone',
666 686
 			'timestamp' => 'timestamp without time zone',
667 687
 		);
668
-	}
669
-	else
688
+	} else
670 689
 	{
671 690
 		$types = array(
672 691
 			'character varying' => 'varchar',
@@ -682,14 +701,16 @@  discard block
 block discarded – undo
682 701
 	// Got it? Change it!
683 702
 	if (isset($types[$type_name]))
684 703
 	{
685
-		if ($type_name == 'tinytext')
686
-			$type_size = 255;
704
+		if ($type_name == 'tinytext') {
705
+					$type_size = 255;
706
+		}
687 707
 		$type_name = $types[$type_name];
688 708
 	}
689 709
 
690 710
 	// Only char fields got size
691
-	if (strpos($type_name, 'char') === false)
692
-			$type_size = null;
711
+	if (strpos($type_name, 'char') === false) {
712
+				$type_size = null;
713
+	}
693 714
 
694 715
 
695 716
 	return array($type_name, $type_size);
@@ -744,8 +765,7 @@  discard block
 block discarded – undo
744 765
 		if (!$detail)
745 766
 		{
746 767
 			$columns[] = $row['column_name'];
747
-		}
748
-		else
768
+		} else
749 769
 		{
750 770
 			$auto = false;
751 771
 			// What is the default?
@@ -753,11 +773,11 @@  discard block
 block discarded – undo
753 773
 			{
754 774
 				$default = null;
755 775
 				$auto = true;
776
+			} elseif (trim($row['column_default']) != '') {
777
+							$default = strpos($row['column_default'], '::') === false ? $row['column_default'] : substr($row['column_default'], 0, strpos($row['column_default'], '::'));
778
+			} else {
779
+							$default = null;
756 780
 			}
757
-			elseif (trim($row['column_default']) != '')
758
-				$default = strpos($row['column_default'], '::') === false ? $row['column_default'] : substr($row['column_default'], 0, strpos($row['column_default'], '::'));
759
-			else
760
-				$default = null;
761 781
 
762 782
 			// Make the type generic.
763 783
 			list ($type, $size) = $smcFunc['db_calculate_type']($row['data_type'], $row['character_maximum_length'], true);
@@ -808,26 +828,30 @@  discard block
 block discarded – undo
808 828
 	while ($row = $smcFunc['db_fetch_assoc']($result))
809 829
 	{
810 830
 		// Try get the columns that make it up.
811
-		if (preg_match('~\(([^\)]+?)\)~i', $row['inddef'], $matches) == 0)
812
-			continue;
831
+		if (preg_match('~\(([^\)]+?)\)~i', $row['inddef'], $matches) == 0) {
832
+					continue;
833
+		}
813 834
 
814 835
 		$columns = explode(',', $matches[1]);
815 836
 
816
-		if (empty($columns))
817
-			continue;
837
+		if (empty($columns)) {
838
+					continue;
839
+		}
818 840
 
819
-		foreach ($columns as $k => $v)
820
-			$columns[$k] = trim($v);
841
+		foreach ($columns as $k => $v) {
842
+					$columns[$k] = trim($v);
843
+		}
821 844
 
822 845
 		// Fix up the name to be consistent cross databases
823
-		if (substr($row['name'], -5) == '_pkey' && $row['is_primary'] == 1)
824
-			$row['name'] = 'PRIMARY';
825
-		else
826
-			$row['name'] = str_replace($table_name . '_', '', $row['name']);
846
+		if (substr($row['name'], -5) == '_pkey' && $row['is_primary'] == 1) {
847
+					$row['name'] = 'PRIMARY';
848
+		} else {
849
+					$row['name'] = str_replace($table_name . '_', '', $row['name']);
850
+		}
827 851
 
828
-		if (!$detail)
829
-			$indexes[] = $row['name'];
830
-		else
852
+		if (!$detail) {
853
+					$indexes[] = $row['name'];
854
+		} else
831 855
 		{
832 856
 			$indexes[$row['name']] = array(
833 857
 				'name' => $row['name'],
Please login to merge, or discard this patch.
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -382,7 +382,7 @@
 block discarded – undo
382 382
  * @param array $parameters Not used?
383 383
  * @param string $if_exists What to do if the index exists. If 'update', the definition will be updated.
384 384
  * @param string $error
385
- * @return boolean Whether or not the operation was successful
385
+ * @return false|null Whether or not the operation was successful
386 386
  */
387 387
 function smf_db_add_index($table_name, $index_info, $parameters = array(), $if_exists = 'update', $error = 'fatal')
388 388
 {
Please login to merge, or discard this patch.
Sources/Logging.php 2 patches
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -175,7 +175,7 @@  discard block
 block discarded – undo
175 175
 	if (filemtime($boarddir . '/db_last_error.php') === $last_db_error_change)
176 176
 	{
177 177
 		// Write the change
178
-		$write_db_change =  '<' . '?' . "php\n" . '$db_last_error = ' . time() . ';' . "\n" . '?' . '>';
178
+		$write_db_change = '<' . '?' . "php\n" . '$db_last_error = ' . time() . ';' . "\n" . '?' . '>';
179 179
 		$written_bytes = file_put_contents($boarddir . '/db_last_error.php', $write_db_change, LOCK_EX);
180 180
 
181 181
 		// survey says ...
@@ -248,7 +248,7 @@  discard block
 block discarded – undo
248 248
 	', $txt['debug_language_files'], count($context['debug']['language_files']), ': <em>', implode('</em>, <em>', $context['debug']['language_files']), '</em>.<br>
249 249
 	', $txt['debug_stylesheets'], count($context['debug']['sheets']), ': <em>', implode('</em>, <em>', $context['debug']['sheets']), '</em>.<br>
250 250
 	', $txt['debug_hooks'], empty($context['debug']['hooks']) ? 0 : count($context['debug']['hooks']) . ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_hooks\').style.display = \'inline\'; this.style.display = \'none\'; return false;">', $txt['debug_show'], '</a><span id="debug_hooks" style="display: none;"><em>' . implode('</em>, <em>', $context['debug']['hooks']), '</em></span>)', '<br>
251
-	',(isset($context['debug']['instances']) ? ($txt['debug_instances'] . (empty($context['debug']['instances']) ? 0 : count($context['debug']['instances'])) . ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_instances\').style.display = \'inline\'; this.style.display = \'none\'; return false;">'. $txt['debug_show'] .'</a><span id="debug_instances" style="display: none;"><em>'. implode('</em>, <em>', array_keys($context['debug']['instances'])) .'</em></span>)'. '<br>') : ''),'
251
+	',(isset($context['debug']['instances']) ? ($txt['debug_instances'] . (empty($context['debug']['instances']) ? 0 : count($context['debug']['instances'])) . ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_instances\').style.display = \'inline\'; this.style.display = \'none\'; return false;">' . $txt['debug_show'] . '</a><span id="debug_instances" style="display: none;"><em>' . implode('</em>, <em>', array_keys($context['debug']['instances'])) . '</em></span>)' . '<br>') : ''), '
252 252
 	', $txt['debug_files_included'], count($files), ' - ', round($total_size / 1024), $txt['debug_kb'], ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_include_info\').style.display = \'inline\'; this.style.display = \'none\'; return false;">', $txt['debug_show'], '</a><span id="debug_include_info" style="display: none;"><em>', implode('</em>, <em>', $files), '</em></span>)<br>';
253 253
 
254 254
 	if (function_exists('memory_get_peak_usage'))
Please login to merge, or discard this patch.
Braces   +134 added lines, -96 removed lines patch added patch discarded remove patch
@@ -13,8 +13,9 @@  discard block
 block discarded – undo
13 13
  * @version 2.1 Beta 3
14 14
  */
15 15
 
16
-if (!defined('SMF'))
16
+if (!defined('SMF')) {
17 17
 	die('No direct access...');
18
+}
18 19
 
19 20
 /**
20 21
  * Put this user in the online log.
@@ -33,8 +34,9 @@  discard block
 block discarded – undo
33 34
 		// Don't update for every page - this isn't wholly accurate but who cares.
34 35
 		if ($topic)
35 36
 		{
36
-			if (isset($_SESSION['last_topic_id']) && $_SESSION['last_topic_id'] == $topic)
37
-				$force = false;
37
+			if (isset($_SESSION['last_topic_id']) && $_SESSION['last_topic_id'] == $topic) {
38
+							$force = false;
39
+			}
38 40
 			$_SESSION['last_topic_id'] = $topic;
39 41
 		}
40 42
 	}
@@ -47,22 +49,24 @@  discard block
 block discarded – undo
47 49
 	}
48 50
 
49 51
 	// Don't mark them as online more than every so often.
50
-	if (!empty($_SESSION['log_time']) && $_SESSION['log_time'] >= (time() - 8) && !$force)
51
-		return;
52
+	if (!empty($_SESSION['log_time']) && $_SESSION['log_time'] >= (time() - 8) && !$force) {
53
+			return;
54
+	}
52 55
 
53 56
 	if (!empty($modSettings['who_enabled']))
54 57
 	{
55 58
 		$serialized = $_GET + array('USER_AGENT' => $_SERVER['HTTP_USER_AGENT']);
56 59
 
57 60
 		// In the case of a dlattach action, session_var may not be set.
58
-		if (!isset($context['session_var']))
59
-			$context['session_var'] = $_SESSION['session_var'];
61
+		if (!isset($context['session_var'])) {
62
+					$context['session_var'] = $_SESSION['session_var'];
63
+		}
60 64
 
61 65
 		unset($serialized['sesc'], $serialized[$context['session_var']]);
62 66
 		$serialized = json_encode($serialized);
67
+	} else {
68
+			$serialized = '';
63 69
 	}
64
-	else
65
-		$serialized = '';
66 70
 
67 71
 	// Guests use 0, members use their session ID.
68 72
 	$session_id = $user_info['is_guest'] ? 'ip' . $user_info['ip'] : session_id();
@@ -102,17 +106,18 @@  discard block
 block discarded – undo
102 106
 		);
103 107
 
104 108
 		// Guess it got deleted.
105
-		if ($smcFunc['db_affected_rows']() == 0)
109
+		if ($smcFunc['db_affected_rows']() == 0) {
110
+					$_SESSION['log_time'] = 0;
111
+		}
112
+	} else {
106 113
 			$_SESSION['log_time'] = 0;
107 114
 	}
108
-	else
109
-		$_SESSION['log_time'] = 0;
110 115
 
111 116
 	// Otherwise, we have to delete and insert.
112 117
 	if (empty($_SESSION['log_time']))
113 118
 	{
114
-		if ($do_delete || !empty($user_info['id']))
115
-			$smcFunc['db_query']('', '
119
+		if ($do_delete || !empty($user_info['id'])) {
120
+					$smcFunc['db_query']('', '
116 121
 				DELETE FROM {db_prefix}log_online
117 122
 				WHERE ' . ($do_delete ? 'log_time < {int:log_time}' : '') . ($do_delete && !empty($user_info['id']) ? ' OR ' : '') . (empty($user_info['id']) ? '' : 'id_member = {int:current_member}'),
118 123
 				array(
@@ -120,6 +125,7 @@  discard block
 block discarded – undo
120 125
 					'log_time' => time() - $modSettings['lastActive'] * 60,
121 126
 				)
122 127
 			);
128
+		}
123 129
 
124 130
 		$smcFunc['db_insert']($do_delete ? 'ignore' : 'replace',
125 131
 			'{db_prefix}log_online',
@@ -133,21 +139,24 @@  discard block
 block discarded – undo
133 139
 	$_SESSION['log_time'] = time();
134 140
 
135 141
 	// Well, they are online now.
136
-	if (empty($_SESSION['timeOnlineUpdated']))
137
-		$_SESSION['timeOnlineUpdated'] = time();
142
+	if (empty($_SESSION['timeOnlineUpdated'])) {
143
+			$_SESSION['timeOnlineUpdated'] = time();
144
+	}
138 145
 
139 146
 	// Set their login time, if not already done within the last minute.
140 147
 	if (SMF != 'SSI' && !empty($user_info['last_login']) && $user_info['last_login'] < time() - 60 && (!isset($_REQUEST['action']) || !in_array($_REQUEST['action'], array('.xml', 'login2', 'logintfa'))))
141 148
 	{
142 149
 		// Don't count longer than 15 minutes.
143
-		if (time() - $_SESSION['timeOnlineUpdated'] > 60 * 15)
144
-			$_SESSION['timeOnlineUpdated'] = time();
150
+		if (time() - $_SESSION['timeOnlineUpdated'] > 60 * 15) {
151
+					$_SESSION['timeOnlineUpdated'] = time();
152
+		}
145 153
 
146 154
 		$user_settings['total_time_logged_in'] += time() - $_SESSION['timeOnlineUpdated'];
147 155
 		updateMemberData($user_info['id'], array('last_login' => time(), 'member_ip' => $user_info['ip'], 'member_ip2' => $_SERVER['BAN_CHECK_IP'], 'total_time_logged_in' => $user_settings['total_time_logged_in']));
148 156
 
149
-		if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2)
150
-			cache_put_data('user_settings-' . $user_info['id'], $user_settings, 60);
157
+		if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2) {
158
+					cache_put_data('user_settings-' . $user_info['id'], $user_settings, 60);
159
+		}
151 160
 
152 161
 		$user_info['total_time_logged_in'] += time() - $_SESSION['timeOnlineUpdated'];
153 162
 		$_SESSION['timeOnlineUpdated'] = time();
@@ -184,8 +193,7 @@  discard block
 block discarded – undo
184 193
 			// Oops. maybe we have no more disk space left, or some other troubles, troubles...
185 194
 			// Copy the file back and run for your life!
186 195
 			@copy($boarddir . '/db_last_error_bak.php', $boarddir . '/db_last_error.php');
187
-		}
188
-		else
196
+		} else
189 197
 		{
190 198
 			@touch($boarddir . '/' . 'Settings.php');
191 199
 			return true;
@@ -205,22 +213,27 @@  discard block
 block discarded – undo
205 213
 	global $db_cache, $db_count, $cache_misses, $cache_count_misses, $db_show_debug, $cache_count, $cache_hits, $smcFunc, $txt;
206 214
 
207 215
 	// Add to Settings.php if you want to show the debugging information.
208
-	if (!isset($db_show_debug) || $db_show_debug !== true || (isset($_GET['action']) && $_GET['action'] == 'viewquery'))
209
-		return;
216
+	if (!isset($db_show_debug) || $db_show_debug !== true || (isset($_GET['action']) && $_GET['action'] == 'viewquery')) {
217
+			return;
218
+	}
210 219
 
211
-	if (empty($_SESSION['view_queries']))
212
-		$_SESSION['view_queries'] = 0;
213
-	if (empty($context['debug']['language_files']))
214
-		$context['debug']['language_files'] = array();
215
-	if (empty($context['debug']['sheets']))
216
-		$context['debug']['sheets'] = array();
220
+	if (empty($_SESSION['view_queries'])) {
221
+			$_SESSION['view_queries'] = 0;
222
+	}
223
+	if (empty($context['debug']['language_files'])) {
224
+			$context['debug']['language_files'] = array();
225
+	}
226
+	if (empty($context['debug']['sheets'])) {
227
+			$context['debug']['sheets'] = array();
228
+	}
217 229
 
218 230
 	$files = get_included_files();
219 231
 	$total_size = 0;
220 232
 	for ($i = 0, $n = count($files); $i < $n; $i++)
221 233
 	{
222
-		if (file_exists($files[$i]))
223
-			$total_size += filesize($files[$i]);
234
+		if (file_exists($files[$i])) {
235
+					$total_size += filesize($files[$i]);
236
+		}
224 237
 		$files[$i] = strtr($files[$i], array($boarddir => '.', $sourcedir => '(Sources)', $cachedir => '(Cache)', $settings['actual_theme_dir'] => '(Current Theme)'));
225 238
 	}
226 239
 
@@ -229,8 +242,9 @@  discard block
 block discarded – undo
229 242
 	{
230 243
 		foreach ($db_cache as $q => $qq)
231 244
 		{
232
-			if (!empty($qq['w']))
233
-				$warnings += count($qq['w']);
245
+			if (!empty($qq['w'])) {
246
+							$warnings += count($qq['w']);
247
+			}
234 248
 		}
235 249
 
236 250
 		$_SESSION['debug'] = &$db_cache;
@@ -251,12 +265,14 @@  discard block
 block discarded – undo
251 265
 	',(isset($context['debug']['instances']) ? ($txt['debug_instances'] . (empty($context['debug']['instances']) ? 0 : count($context['debug']['instances'])) . ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_instances\').style.display = \'inline\'; this.style.display = \'none\'; return false;">'. $txt['debug_show'] .'</a><span id="debug_instances" style="display: none;"><em>'. implode('</em>, <em>', array_keys($context['debug']['instances'])) .'</em></span>)'. '<br>') : ''),'
252 266
 	', $txt['debug_files_included'], count($files), ' - ', round($total_size / 1024), $txt['debug_kb'], ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_include_info\').style.display = \'inline\'; this.style.display = \'none\'; return false;">', $txt['debug_show'], '</a><span id="debug_include_info" style="display: none;"><em>', implode('</em>, <em>', $files), '</em></span>)<br>';
253 267
 
254
-	if (function_exists('memory_get_peak_usage'))
255
-		echo $txt['debug_memory_use'], ceil(memory_get_peak_usage() / 1024), $txt['debug_kb'], '<br>';
268
+	if (function_exists('memory_get_peak_usage')) {
269
+			echo $txt['debug_memory_use'], ceil(memory_get_peak_usage() / 1024), $txt['debug_kb'], '<br>';
270
+	}
256 271
 
257 272
 	// What tokens are active?
258
-	if (isset($_SESSION['token']))
259
-		echo $txt['debug_tokens'] . '<em>' . implode(',</em> <em>', array_keys($_SESSION['token'])), '</em>.<br>';
273
+	if (isset($_SESSION['token'])) {
274
+			echo $txt['debug_tokens'] . '<em>' . implode(',</em> <em>', array_keys($_SESSION['token'])), '</em>.<br>';
275
+	}
260 276
 
261 277
 	if (!empty($modSettings['cache_enable']) && !empty($cache_hits))
262 278
 	{
@@ -269,10 +285,12 @@  discard block
 block discarded – undo
269 285
 			$total_t += $cache_hit['t'];
270 286
 			$total_s += $cache_hit['s'];
271 287
 		}
272
-		if (!isset($cache_misses))
273
-			$cache_misses = array();
274
-		foreach ($cache_misses as $missed)
275
-			$missed_entires[] = $missed['d'] . ' ' . $missed['k'];
288
+		if (!isset($cache_misses)) {
289
+					$cache_misses = array();
290
+		}
291
+		foreach ($cache_misses as $missed) {
292
+					$missed_entires[] = $missed['d'] . ' ' . $missed['k'];
293
+		}
276 294
 
277 295
 		echo '
278 296
 	', $txt['debug_cache_hits'], $cache_count, ': ', sprintf($txt['debug_cache_seconds_bytes_total'], comma_format($total_t, 5), comma_format($total_s)), ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_cache_info\').style.display = \'inline\'; this.style.display = \'none\'; return false;">', $txt['debug_show'], '</a><span id="debug_cache_info" style="display: none;"><em>', implode('</em>, <em>', $entries), '</em></span>)<br>
@@ -283,38 +301,44 @@  discard block
 block discarded – undo
283 301
 	<a href="', $scripturl, '?action=viewquery" target="_blank" class="new_win">', $warnings == 0 ? sprintf($txt['debug_queries_used'], (int) $db_count) : sprintf($txt['debug_queries_used_and_warnings'], (int) $db_count, $warnings), '</a><br>
284 302
 	<br>';
285 303
 
286
-	if ($_SESSION['view_queries'] == 1 && !empty($db_cache))
287
-		foreach ($db_cache as $q => $qq)
304
+	if ($_SESSION['view_queries'] == 1 && !empty($db_cache)) {
305
+			foreach ($db_cache as $q => $qq)
288 306
 		{
289 307
 			$is_select = strpos(trim($qq['q']), 'SELECT') === 0 || preg_match('~^INSERT(?: IGNORE)? INTO \w+(?:\s+\([^)]+\))?\s+SELECT .+$~s', trim($qq['q'])) != 0;
308
+	}
290 309
 			// Temporary tables created in earlier queries are not explainable.
291 310
 			if ($is_select)
292 311
 			{
293
-				foreach (array('log_topics_unread', 'topics_posted_in', 'tmp_log_search_topics', 'tmp_log_search_messages') as $tmp)
294
-					if (strpos(trim($qq['q']), $tmp) !== false)
312
+				foreach (array('log_topics_unread', 'topics_posted_in', 'tmp_log_search_topics', 'tmp_log_search_messages') as $tmp) {
313
+									if (strpos(trim($qq['q']), $tmp) !== false)
295 314
 					{
296 315
 						$is_select = false;
316
+				}
297 317
 						break;
298 318
 					}
299 319
 			}
300 320
 			// But actual creation of the temporary tables are.
301
-			elseif (preg_match('~^CREATE TEMPORARY TABLE .+?SELECT .+$~s', trim($qq['q'])) != 0)
302
-				$is_select = true;
321
+			elseif (preg_match('~^CREATE TEMPORARY TABLE .+?SELECT .+$~s', trim($qq['q'])) != 0) {
322
+							$is_select = true;
323
+			}
303 324
 
304 325
 			// Make the filenames look a bit better.
305
-			if (isset($qq['f']))
306
-				$qq['f'] = preg_replace('~^' . preg_quote($boarddir, '~') . '~', '...', $qq['f']);
326
+			if (isset($qq['f'])) {
327
+							$qq['f'] = preg_replace('~^' . preg_quote($boarddir, '~') . '~', '...', $qq['f']);
328
+			}
307 329
 
308 330
 			echo '
309 331
 	<strong>', $is_select ? '<a href="' . $scripturl . '?action=viewquery;qq=' . ($q + 1) . '#qq' . $q . '" target="_blank" class="new_win" style="text-decoration: none;">' : '', nl2br(str_replace("\t", '&nbsp;&nbsp;&nbsp;', $smcFunc['htmlspecialchars'](ltrim($qq['q'], "\n\r")))) . ($is_select ? '</a></strong>' : '</strong>') . '<br>
310 332
 	&nbsp;&nbsp;&nbsp;';
311
-			if (!empty($qq['f']) && !empty($qq['l']))
312
-				echo sprintf($txt['debug_query_in_line'], $qq['f'], $qq['l']);
333
+			if (!empty($qq['f']) && !empty($qq['l'])) {
334
+							echo sprintf($txt['debug_query_in_line'], $qq['f'], $qq['l']);
335
+			}
313 336
 
314
-			if (isset($qq['s'], $qq['t']) && isset($txt['debug_query_which_took_at']))
315
-				echo sprintf($txt['debug_query_which_took_at'], round($qq['t'], 8), round($qq['s'], 8)) . '<br>';
316
-			elseif (isset($qq['t']))
317
-				echo sprintf($txt['debug_query_which_took'], round($qq['t'], 8)) . '<br>';
337
+			if (isset($qq['s'], $qq['t']) && isset($txt['debug_query_which_took_at'])) {
338
+							echo sprintf($txt['debug_query_which_took_at'], round($qq['t'], 8), round($qq['s'], 8)) . '<br>';
339
+			} elseif (isset($qq['t'])) {
340
+							echo sprintf($txt['debug_query_which_took'], round($qq['t'], 8)) . '<br>';
341
+			}
318 342
 			echo '
319 343
 	<br>';
320 344
 		}
@@ -339,12 +363,14 @@  discard block
 block discarded – undo
339 363
 	global $modSettings, $smcFunc;
340 364
 	static $cache_stats = array();
341 365
 
342
-	if (empty($modSettings['trackStats']))
343
-		return false;
344
-	if (!empty($stats))
345
-		return $cache_stats = array_merge($cache_stats, $stats);
346
-	elseif (empty($cache_stats))
347
-		return false;
366
+	if (empty($modSettings['trackStats'])) {
367
+			return false;
368
+	}
369
+	if (!empty($stats)) {
370
+			return $cache_stats = array_merge($cache_stats, $stats);
371
+	} elseif (empty($cache_stats)) {
372
+			return false;
373
+	}
348 374
 
349 375
 	$setStringUpdate = '';
350 376
 	$insert_keys = array();
@@ -357,10 +383,11 @@  discard block
 block discarded – undo
357 383
 		$setStringUpdate .= '
358 384
 			' . $field . ' = ' . ($change === '+' ? $field . ' + 1' : '{int:' . $field . '}') . ',';
359 385
 
360
-		if ($change === '+')
361
-			$cache_stats[$field] = 1;
362
-		else
363
-			$update_parameters[$field] = $change;
386
+		if ($change === '+') {
387
+					$cache_stats[$field] = 1;
388
+		} else {
389
+					$update_parameters[$field] = $change;
390
+		}
364 391
 		$insert_keys[$field] = 'int';
365 392
 	}
366 393
 
@@ -424,43 +451,50 @@  discard block
 block discarded – undo
424 451
 	);
425 452
 
426 453
 	// Make sure this particular log is enabled first...
427
-	if (empty($modSettings['modlog_enabled']))
428
-		unset ($log_types['moderate']);
429
-	if (empty($modSettings['userlog_enabled']))
430
-		unset ($log_types['user']);
431
-	if (empty($modSettings['adminlog_enabled']))
432
-		unset ($log_types['admin']);
454
+	if (empty($modSettings['modlog_enabled'])) {
455
+			unset ($log_types['moderate']);
456
+	}
457
+	if (empty($modSettings['userlog_enabled'])) {
458
+			unset ($log_types['user']);
459
+	}
460
+	if (empty($modSettings['adminlog_enabled'])) {
461
+			unset ($log_types['admin']);
462
+	}
433 463
 
434 464
 	call_integration_hook('integrate_log_types', array(&$log_types));
435 465
 
436 466
 	foreach ($logs as $log)
437 467
 	{
438
-		if (!isset($log_types[$log['log_type']]))
439
-			return false;
468
+		if (!isset($log_types[$log['log_type']])) {
469
+					return false;
470
+		}
440 471
 
441
-		if (!is_array($log['extra']))
442
-			trigger_error('logActions(): data is not an array with action \'' . $log['action'] . '\'', E_USER_NOTICE);
472
+		if (!is_array($log['extra'])) {
473
+					trigger_error('logActions(): data is not an array with action \'' . $log['action'] . '\'', E_USER_NOTICE);
474
+		}
443 475
 
444 476
 		// Pull out the parts we want to store separately, but also make sure that the data is proper
445 477
 		if (isset($log['extra']['topic']))
446 478
 		{
447
-			if (!is_numeric($log['extra']['topic']))
448
-				trigger_error('logActions(): data\'s topic is not a number', E_USER_NOTICE);
479
+			if (!is_numeric($log['extra']['topic'])) {
480
+							trigger_error('logActions(): data\'s topic is not a number', E_USER_NOTICE);
481
+			}
449 482
 			$topic_id = empty($log['extra']['topic']) ? 0 : (int) $log['extra']['topic'];
450 483
 			unset($log['extra']['topic']);
484
+		} else {
485
+					$topic_id = 0;
451 486
 		}
452
-		else
453
-			$topic_id = 0;
454 487
 
455 488
 		if (isset($log['extra']['message']))
456 489
 		{
457
-			if (!is_numeric($log['extra']['message']))
458
-				trigger_error('logActions(): data\'s message is not a number', E_USER_NOTICE);
490
+			if (!is_numeric($log['extra']['message'])) {
491
+							trigger_error('logActions(): data\'s message is not a number', E_USER_NOTICE);
492
+			}
459 493
 			$msg_id = empty($log['extra']['message']) ? 0 : (int) $log['extra']['message'];
460 494
 			unset($log['extra']['message']);
495
+		} else {
496
+					$msg_id = 0;
461 497
 		}
462
-		else
463
-			$msg_id = 0;
464 498
 
465 499
 		// @todo cache this?
466 500
 		// Is there an associated report on this?
@@ -487,23 +521,26 @@  discard block
 block discarded – undo
487 521
 			$smcFunc['db_free_result']($request);
488 522
 		}
489 523
 
490
-		if (isset($log['extra']['member']) && !is_numeric($log['extra']['member']))
491
-			trigger_error('logActions(): data\'s member is not a number', E_USER_NOTICE);
524
+		if (isset($log['extra']['member']) && !is_numeric($log['extra']['member'])) {
525
+					trigger_error('logActions(): data\'s member is not a number', E_USER_NOTICE);
526
+		}
492 527
 
493 528
 		if (isset($log['extra']['board']))
494 529
 		{
495
-			if (!is_numeric($log['extra']['board']))
496
-				trigger_error('logActions(): data\'s board is not a number', E_USER_NOTICE);
530
+			if (!is_numeric($log['extra']['board'])) {
531
+							trigger_error('logActions(): data\'s board is not a number', E_USER_NOTICE);
532
+			}
497 533
 			$board_id = empty($log['extra']['board']) ? 0 : (int) $log['extra']['board'];
498 534
 			unset($log['extra']['board']);
535
+		} else {
536
+					$board_id = 0;
499 537
 		}
500
-		else
501
-			$board_id = 0;
502 538
 
503 539
 		if (isset($log['extra']['board_to']))
504 540
 		{
505
-			if (!is_numeric($log['extra']['board_to']))
506
-				trigger_error('logActions(): data\'s board_to is not a number', E_USER_NOTICE);
541
+			if (!is_numeric($log['extra']['board_to'])) {
542
+							trigger_error('logActions(): data\'s board_to is not a number', E_USER_NOTICE);
543
+			}
507 544
 			if (empty($board_id))
508 545
 			{
509 546
 				$board_id = empty($log['extra']['board_to']) ? 0 : (int) $log['extra']['board_to'];
@@ -511,10 +548,11 @@  discard block
 block discarded – undo
511 548
 			}
512 549
 		}
513 550
 
514
-		if (isset($log['extra']['member_affected']))
515
-			$memID = $log['extra']['member_affected'];
516
-		else
517
-			$memID = $user_info['id'];
551
+		if (isset($log['extra']['member_affected'])) {
552
+					$memID = $log['extra']['member_affected'];
553
+		} else {
554
+					$memID = $user_info['id'];
555
+		}
518 556
 
519 557
 		$inserts[] = array(
520 558
 			time(), $log_types[$log['log_type']], $memID, $user_info['ip'], $log['action'],
Please login to merge, or discard this patch.
Sources/Recent.php 2 patches
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -237,7 +237,7 @@  discard block
 block discarded – undo
237 237
 	else
238 238
 	{
239 239
 		$query_this_board = '{query_wanna_see_board}' . (!empty($modSettings['recycle_enable']) && $modSettings['recycle_board'] > 0 ? '
240
-					AND b.id_board != {int:recycle_board}' : ''). '
240
+					AND b.id_board != {int:recycle_board}' : '') . '
241 241
 					AND m.id_msg >= {int:max_id_msg}';
242 242
 		$query_parameters['max_id_msg'] = max(0, $modSettings['maxMsgID'] - 100 - $_REQUEST['start'] * 6);
243 243
 		$query_parameters['recycle_board'] = $modSettings['recycle_board'];
@@ -1124,7 +1124,7 @@  discard block
 block discarded – undo
1124 1124
 			);
1125 1125
 		else
1126 1126
 			$request = $smcFunc['db_query']('', '
1127
-				SELECT DISTINCT t.id_topic,'.$_REQUEST['sort'].'
1127
+				SELECT DISTINCT t.id_topic,'.$_REQUEST['sort'] . '
1128 1128
 				FROM {db_prefix}topics AS t
1129 1129
 					INNER JOIN {db_prefix}messages AS m ON (m.id_topic = t.id_topic AND m.id_member = {int:current_member})' . (strpos($_REQUEST['sort'], 'ms.') === false ? '' : '
1130 1130
 					INNER JOIN {db_prefix}messages AS ms ON (ms.id_msg = t.id_first_msg)') . (strpos($_REQUEST['sort'], 'mems.') === false ? '' : '
@@ -1391,7 +1391,7 @@  discard block
 block discarded – undo
1391 1391
 	if ($is_topics)
1392 1392
 	{
1393 1393
 		$context['recent_buttons'] = array(
1394
-			'markread' => array('text' => !empty($context['no_board_limits']) ? 'mark_as_read' : 'mark_read_short', 'image' => 'markread.png', 'custom' => 'data-confirm="'.  $txt['are_sure_mark_read'] .'"', 'class' => 'you_sure', 'url' => $scripturl . '?action=markasread;sa=' . (!empty($context['no_board_limits']) ? 'all' : 'board' . $context['querystring_board_limits']) . ';' . $context['session_var'] . '=' . $context['session_id']),
1394
+			'markread' => array('text' => !empty($context['no_board_limits']) ? 'mark_as_read' : 'mark_read_short', 'image' => 'markread.png', 'custom' => 'data-confirm="' . $txt['are_sure_mark_read'] . '"', 'class' => 'you_sure', 'url' => $scripturl . '?action=markasread;sa=' . (!empty($context['no_board_limits']) ? 'all' : 'board' . $context['querystring_board_limits']) . ';' . $context['session_var'] . '=' . $context['session_id']),
1395 1395
 		);
1396 1396
 
1397 1397
 		if ($context['showCheckboxes'])
@@ -1407,7 +1407,7 @@  discard block
 block discarded – undo
1407 1407
 	elseif (!$is_topics && isset($context['topics_to_mark']))
1408 1408
 	{
1409 1409
 		$context['recent_buttons'] = array(
1410
-			'markread' => array('text' => 'mark_as_read', 'image' => 'markread.png', 'custom' => 'data-confirm="'. $txt['are_sure_mark_read']  .'"', 'class' => 'you_sure', 'url' => $scripturl . '?action=markasread;sa=unreadreplies;topics=' . $context['topics_to_mark'] . ';' . $context['session_var'] . '=' . $context['session_id']),
1410
+			'markread' => array('text' => 'mark_as_read', 'image' => 'markread.png', 'custom' => 'data-confirm="' . $txt['are_sure_mark_read'] . '"', 'class' => 'you_sure', 'url' => $scripturl . '?action=markasread;sa=unreadreplies;topics=' . $context['topics_to_mark'] . ';' . $context['session_var'] . '=' . $context['session_id']),
1411 1411
 		);
1412 1412
 
1413 1413
 		if ($context['showCheckboxes'])
Please login to merge, or discard this patch.
Braces   +208 added lines, -170 removed lines patch added patch discarded remove patch
@@ -13,8 +13,9 @@  discard block
 block discarded – undo
13 13
  * @version 2.1 Beta 3
14 14
  */
15 15
 
16
-if (!defined('SMF'))
16
+if (!defined('SMF')) {
17 17
 	die('No direct access...');
18
+}
18 19
 
19 20
 /**
20 21
  * Get the latest post made on the system
@@ -44,8 +45,9 @@  discard block
 block discarded – undo
44 45
 			'is_approved' => 1,
45 46
 		)
46 47
 	);
47
-	if ($smcFunc['db_num_rows']($request) == 0)
48
-		return array();
48
+	if ($smcFunc['db_num_rows']($request) == 0) {
49
+			return array();
50
+	}
49 51
 	$row = $smcFunc['db_fetch_assoc']($request);
50 52
 	$smcFunc['db_free_result']($request);
51 53
 
@@ -54,8 +56,9 @@  discard block
 block discarded – undo
54 56
 	censorText($row['body']);
55 57
 
56 58
 	$row['body'] = strip_tags(strtr(parse_bbc($row['body'], $row['smileys_enabled']), array('<br>' => '&#10;')));
57
-	if ($smcFunc['strlen']($row['body']) > 128)
58
-		$row['body'] = $smcFunc['substr']($row['body'], 0, 128) . '...';
59
+	if ($smcFunc['strlen']($row['body']) > 128) {
60
+			$row['body'] = $smcFunc['substr']($row['body'], 0, 128) . '...';
61
+	}
59 62
 
60 63
 	// Send the data.
61 64
 	return array(
@@ -83,15 +86,17 @@  discard block
 block discarded – undo
83 86
 
84 87
 	$context['is_redirect'] = false;
85 88
 
86
-	if (isset($_REQUEST['start']) && $_REQUEST['start'] > 95)
87
-		$_REQUEST['start'] = 95;
89
+	if (isset($_REQUEST['start']) && $_REQUEST['start'] > 95) {
90
+			$_REQUEST['start'] = 95;
91
+	}
88 92
 
89 93
 	$query_parameters = array();
90 94
 	if (!empty($_REQUEST['c']) && empty($board))
91 95
 	{
92 96
 		$_REQUEST['c'] = explode(',', $_REQUEST['c']);
93
-		foreach ($_REQUEST['c'] as $i => $c)
94
-			$_REQUEST['c'][$i] = (int) $c;
97
+		foreach ($_REQUEST['c'] as $i => $c) {
98
+					$_REQUEST['c'][$i] = (int) $c;
99
+		}
95 100
 
96 101
 		if (count($_REQUEST['c']) == 1)
97 102
 		{
@@ -107,8 +112,9 @@  discard block
 block discarded – undo
107 112
 			list ($name) = $smcFunc['db_fetch_row']($request);
108 113
 			$smcFunc['db_free_result']($request);
109 114
 
110
-			if (empty($name))
111
-				fatal_lang_error('no_access', false);
115
+			if (empty($name)) {
116
+							fatal_lang_error('no_access', false);
117
+			}
112 118
 
113 119
 			$context['linktree'][] = array(
114 120
 				'url' => $scripturl . '#c' . (int) $_REQUEST['c'],
@@ -140,8 +146,9 @@  discard block
 block discarded – undo
140 146
 		}
141 147
 		$smcFunc['db_free_result']($request);
142 148
 
143
-		if (empty($boards))
144
-			fatal_lang_error('error_no_boards_selected');
149
+		if (empty($boards)) {
150
+					fatal_lang_error('error_no_boards_selected');
151
+		}
145 152
 
146 153
 		$query_this_board = 'b.id_board IN ({array_int:boards})';
147 154
 		$query_parameters['boards'] = $boards;
@@ -155,12 +162,12 @@  discard block
 block discarded – undo
155 162
 		}
156 163
 
157 164
 		$context['page_index'] = constructPageIndex($scripturl . '?action=recent;c=' . implode(',', $_REQUEST['c']), $_REQUEST['start'], min(100, $total_cat_posts), 10, false);
158
-	}
159
-	elseif (!empty($_REQUEST['boards']))
165
+	} elseif (!empty($_REQUEST['boards']))
160 166
 	{
161 167
 		$_REQUEST['boards'] = explode(',', $_REQUEST['boards']);
162
-		foreach ($_REQUEST['boards'] as $i => $b)
163
-			$_REQUEST['boards'][$i] = (int) $b;
168
+		foreach ($_REQUEST['boards'] as $i => $b) {
169
+					$_REQUEST['boards'][$i] = (int) $b;
170
+		}
164 171
 
165 172
 		$request = $smcFunc['db_query']('', '
166 173
 			SELECT b.id_board, b.num_posts
@@ -184,8 +191,9 @@  discard block
 block discarded – undo
184 191
 		}
185 192
 		$smcFunc['db_free_result']($request);
186 193
 
187
-		if (empty($boards))
188
-			fatal_lang_error('error_no_boards_selected');
194
+		if (empty($boards)) {
195
+					fatal_lang_error('error_no_boards_selected');
196
+		}
189 197
 
190 198
 		$query_this_board = 'b.id_board IN ({array_int:boards})';
191 199
 		$query_parameters['boards'] = $boards;
@@ -199,8 +207,7 @@  discard block
 block discarded – undo
199 207
 		}
200 208
 
201 209
 		$context['page_index'] = constructPageIndex($scripturl . '?action=recent;boards=' . implode(',', $_REQUEST['boards']), $_REQUEST['start'], min(100, $total_posts), 10, false);
202
-	}
203
-	elseif (!empty($board))
210
+	} elseif (!empty($board))
204 211
 	{
205 212
 		$request = $smcFunc['db_query']('', '
206 213
 			SELECT num_posts, redirect
@@ -233,8 +240,7 @@  discard block
 block discarded – undo
233 240
 		}
234 241
 
235 242
 		$context['page_index'] = constructPageIndex($scripturl . '?action=recent;board=' . $board . '.%1$d', $_REQUEST['start'], min(100, $total_posts), 10, true);
236
-	}
237
-	else
243
+	} else
238 244
 	{
239 245
 		$query_this_board = '{query_wanna_see_board}' . (!empty($modSettings['recycle_enable']) && $modSettings['recycle_board'] > 0 ? '
240 246
 					AND b.id_board != {int:recycle_board}' : ''). '
@@ -269,8 +275,9 @@  discard block
 block discarded – undo
269 275
 	);
270 276
 
271 277
 	// If you selected a redirection board, don't try getting posts for it...
272
-	if ($context['is_redirect'])
273
-		$messages = 0;
278
+	if ($context['is_redirect']) {
279
+			$messages = 0;
280
+	}
274 281
 
275 282
 	$key = 'recent-' . $user_info['id'] . '-' . md5(json_encode(array_diff_key($query_parameters, array('max_id_msg' => 0)))) . '-' . (int) $_REQUEST['start'];
276 283
 	if (!$context['is_redirect'] && (empty($modSettings['cache_enable']) || ($messages = cache_get_data($key, 120)) == null))
@@ -301,16 +308,18 @@  discard block
 block discarded – undo
301 308
 				$query_this_board = str_replace('AND m.id_msg >= {int:max_id_msg}', '', $query_this_board);
302 309
 				$cache_results = true;
303 310
 				unset($query_parameters['max_id_msg']);
311
+			} else {
312
+							$done = true;
304 313
 			}
305
-			else
306
-				$done = true;
307 314
 		}
308 315
 		$messages = array();
309
-		while ($row = $smcFunc['db_fetch_assoc']($request))
310
-			$messages[] = $row['id_msg'];
316
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
317
+					$messages[] = $row['id_msg'];
318
+		}
311 319
 		$smcFunc['db_free_result']($request);
312
-		if (!empty($cache_results))
313
-			cache_put_data($key, $messages, 120);
320
+		if (!empty($cache_results)) {
321
+					cache_put_data($key, $messages, 120);
322
+		}
314 323
 	}
315 324
 
316 325
 	// Nothing here... Or at least, nothing you can see...
@@ -397,8 +406,9 @@  discard block
 block discarded – undo
397 406
 			'css_class' => 'windowbg',
398 407
 		);
399 408
 
400
-		if ($user_info['id'] == $row['id_first_member'])
401
-			$board_ids['own'][$row['id_board']][] = $row['id_msg'];
409
+		if ($user_info['id'] == $row['id_first_member']) {
410
+					$board_ids['own'][$row['id_board']][] = $row['id_msg'];
411
+		}
402 412
 		$board_ids['any'][$row['id_board']][] = $row['id_msg'];
403 413
 	}
404 414
 	$smcFunc['db_free_result']($request);
@@ -424,20 +434,23 @@  discard block
 block discarded – undo
424 434
 			$boards = boardsAllowedTo($permission);
425 435
 
426 436
 			// If 0 is the only thing in the array, they can do it everywhere!
427
-			if (!empty($boards) && $boards[0] == 0)
428
-				$boards = array_keys($board_ids[$type]);
437
+			if (!empty($boards) && $boards[0] == 0) {
438
+							$boards = array_keys($board_ids[$type]);
439
+			}
429 440
 
430 441
 			// Go through the boards, and look for posts they can do this on.
431 442
 			foreach ($boards as $board_id)
432 443
 			{
433 444
 				// Hmm, they have permission, but there are no topics from that board on this page.
434
-				if (!isset($board_ids[$type][$board_id]))
435
-					continue;
445
+				if (!isset($board_ids[$type][$board_id])) {
446
+									continue;
447
+				}
436 448
 
437 449
 				// Okay, looks like they can do it for these posts.
438
-				foreach ($board_ids[$type][$board_id] as $counter)
439
-					if ($type == 'any' || $context['posts'][$counter]['poster']['id'] == $user_info['id'])
450
+				foreach ($board_ids[$type][$board_id] as $counter) {
451
+									if ($type == 'any' || $context['posts'][$counter]['poster']['id'] == $user_info['id'])
440 452
 						$context['posts'][$counter][$allowed] = true;
453
+				}
441 454
 			}
442 455
 		}
443 456
 	}
@@ -480,17 +493,19 @@  discard block
 block discarded – undo
480 493
 	$context['showing_all_topics'] = isset($_GET['all']);
481 494
 	$context['start'] = (int) $_REQUEST['start'];
482 495
 	$context['topics_per_page'] = empty($modSettings['disableCustomPerPage']) && !empty($options['topics_per_page']) ? $options['topics_per_page'] : $modSettings['defaultMaxTopics'];
483
-	if ($_REQUEST['action'] == 'unread')
484
-		$context['page_title'] = $context['showing_all_topics'] ? $txt['unread_topics_all'] : $txt['unread_topics_visit'];
485
-	else
486
-		$context['page_title'] = $txt['unread_replies'];
496
+	if ($_REQUEST['action'] == 'unread') {
497
+			$context['page_title'] = $context['showing_all_topics'] ? $txt['unread_topics_all'] : $txt['unread_topics_visit'];
498
+	} else {
499
+			$context['page_title'] = $txt['unread_replies'];
500
+	}
487 501
 
488
-	if ($context['showing_all_topics'] && !empty($context['load_average']) && !empty($modSettings['loadavg_allunread']) && $context['load_average'] >= $modSettings['loadavg_allunread'])
489
-		fatal_lang_error('loadavg_allunread_disabled', false);
490
-	elseif ($_REQUEST['action'] != 'unread' && !empty($context['load_average']) && !empty($modSettings['loadavg_unreadreplies']) && $context['load_average'] >= $modSettings['loadavg_unreadreplies'])
491
-		fatal_lang_error('loadavg_unreadreplies_disabled', false);
492
-	elseif (!$context['showing_all_topics'] && $_REQUEST['action'] == 'unread' && !empty($context['load_average']) && !empty($modSettings['loadavg_unread']) && $context['load_average'] >= $modSettings['loadavg_unread'])
493
-		fatal_lang_error('loadavg_unread_disabled', false);
502
+	if ($context['showing_all_topics'] && !empty($context['load_average']) && !empty($modSettings['loadavg_allunread']) && $context['load_average'] >= $modSettings['loadavg_allunread']) {
503
+			fatal_lang_error('loadavg_allunread_disabled', false);
504
+	} elseif ($_REQUEST['action'] != 'unread' && !empty($context['load_average']) && !empty($modSettings['loadavg_unreadreplies']) && $context['load_average'] >= $modSettings['loadavg_unreadreplies']) {
505
+			fatal_lang_error('loadavg_unreadreplies_disabled', false);
506
+	} elseif (!$context['showing_all_topics'] && $_REQUEST['action'] == 'unread' && !empty($context['load_average']) && !empty($modSettings['loadavg_unread']) && $context['load_average'] >= $modSettings['loadavg_unread']) {
507
+			fatal_lang_error('loadavg_unread_disabled', false);
508
+	}
494 509
 
495 510
 	// Parameters for the main query.
496 511
 	$query_parameters = array();
@@ -503,12 +518,14 @@  discard block
 block discarded – undo
503 518
 		if (!empty($_REQUEST['boards']))
504 519
 		{
505 520
 			$_REQUEST['boards'] = explode(',', $_REQUEST['boards']);
506
-			foreach ($_REQUEST['boards'] as $b)
507
-				$boards[] = (int) $b;
521
+			foreach ($_REQUEST['boards'] as $b) {
522
+							$boards[] = (int) $b;
523
+			}
508 524
 		}
509 525
 
510
-		if (!empty($board))
511
-			$boards[] = (int) $board;
526
+		if (!empty($board)) {
527
+					$boards[] = (int) $board;
528
+		}
512 529
 
513 530
 		// The easiest thing is to just get all the boards they can see, but since we've specified the top of tree we ignore some of them
514 531
 		$request = $smcFunc['db_query']('', '
@@ -525,30 +542,31 @@  discard block
 block discarded – undo
525 542
 			)
526 543
 		);
527 544
 
528
-		while ($row = $smcFunc['db_fetch_assoc']($request))
529
-			if (in_array($row['id_parent'], $boards))
545
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
546
+					if (in_array($row['id_parent'], $boards))
530 547
 				$boards[] = $row['id_board'];
548
+		}
531 549
 
532 550
 		$smcFunc['db_free_result']($request);
533 551
 
534
-		if (empty($boards))
535
-			fatal_lang_error('error_no_boards_selected');
552
+		if (empty($boards)) {
553
+					fatal_lang_error('error_no_boards_selected');
554
+		}
536 555
 
537 556
 		$query_this_board = 'id_board IN ({array_int:boards})';
538 557
 		$query_parameters['boards'] = $boards;
539 558
 		$context['querystring_board_limits'] = ';boards=' . implode(',', $boards) . ';start=%d';
540
-	}
541
-	elseif (!empty($board))
559
+	} elseif (!empty($board))
542 560
 	{
543 561
 		$query_this_board = 'id_board = {int:board}';
544 562
 		$query_parameters['board'] = $board;
545 563
 		$context['querystring_board_limits'] = ';board=' . $board . '.%1$d';
546
-	}
547
-	elseif (!empty($_REQUEST['boards']))
564
+	} elseif (!empty($_REQUEST['boards']))
548 565
 	{
549 566
 		$_REQUEST['boards'] = explode(',', $_REQUEST['boards']);
550
-		foreach ($_REQUEST['boards'] as $i => $b)
551
-			$_REQUEST['boards'][$i] = (int) $b;
567
+		foreach ($_REQUEST['boards'] as $i => $b) {
568
+					$_REQUEST['boards'][$i] = (int) $b;
569
+		}
552 570
 
553 571
 		$request = $smcFunc['db_query']('', '
554 572
 			SELECT b.id_board
@@ -560,22 +578,24 @@  discard block
 block discarded – undo
560 578
 			)
561 579
 		);
562 580
 		$boards = array();
563
-		while ($row = $smcFunc['db_fetch_assoc']($request))
564
-			$boards[] = $row['id_board'];
581
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
582
+					$boards[] = $row['id_board'];
583
+		}
565 584
 		$smcFunc['db_free_result']($request);
566 585
 
567
-		if (empty($boards))
568
-			fatal_lang_error('error_no_boards_selected');
586
+		if (empty($boards)) {
587
+					fatal_lang_error('error_no_boards_selected');
588
+		}
569 589
 
570 590
 		$query_this_board = 'id_board IN ({array_int:boards})';
571 591
 		$query_parameters['boards'] = $boards;
572 592
 		$context['querystring_board_limits'] = ';boards=' . implode(',', $boards) . ';start=%1$d';
573
-	}
574
-	elseif (!empty($_REQUEST['c']))
593
+	} elseif (!empty($_REQUEST['c']))
575 594
 	{
576 595
 		$_REQUEST['c'] = explode(',', $_REQUEST['c']);
577
-		foreach ($_REQUEST['c'] as $i => $c)
578
-			$_REQUEST['c'][$i] = (int) $c;
596
+		foreach ($_REQUEST['c'] as $i => $c) {
597
+					$_REQUEST['c'][$i] = (int) $c;
598
+		}
579 599
 
580 600
 		$see_board = isset($_REQUEST['action']) && $_REQUEST['action'] == 'unreadreplies' ? 'query_see_board' : 'query_wanna_see_board';
581 601
 		$request = $smcFunc['db_query']('', '
@@ -588,18 +608,19 @@  discard block
 block discarded – undo
588 608
 			)
589 609
 		);
590 610
 		$boards = array();
591
-		while ($row = $smcFunc['db_fetch_assoc']($request))
592
-			$boards[] = $row['id_board'];
611
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
612
+					$boards[] = $row['id_board'];
613
+		}
593 614
 		$smcFunc['db_free_result']($request);
594 615
 
595
-		if (empty($boards))
596
-			fatal_lang_error('error_no_boards_selected');
616
+		if (empty($boards)) {
617
+					fatal_lang_error('error_no_boards_selected');
618
+		}
597 619
 
598 620
 		$query_this_board = 'id_board IN ({array_int:boards})';
599 621
 		$query_parameters['boards'] = $boards;
600 622
 		$context['querystring_board_limits'] = ';c=' . implode(',', $_REQUEST['c']) . ';start=%1$d';
601
-	}
602
-	else
623
+	} else
603 624
 	{
604 625
 		$see_board = isset($_REQUEST['action']) && $_REQUEST['action'] == 'unreadreplies' ? 'query_see_board' : 'query_wanna_see_board';
605 626
 		// Don't bother to show deleted posts!
@@ -613,12 +634,14 @@  discard block
 block discarded – undo
613 634
 			)
614 635
 		);
615 636
 		$boards = array();
616
-		while ($row = $smcFunc['db_fetch_assoc']($request))
617
-			$boards[] = $row['id_board'];
637
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
638
+					$boards[] = $row['id_board'];
639
+		}
618 640
 		$smcFunc['db_free_result']($request);
619 641
 
620
-		if (empty($boards))
621
-			fatal_lang_error('error_no_boards_available', false);
642
+		if (empty($boards)) {
643
+					fatal_lang_error('error_no_boards_available', false);
644
+		}
622 645
 
623 646
 		$query_this_board = 'id_board IN ({array_int:boards})';
624 647
 		$query_parameters['boards'] = $boards;
@@ -680,13 +703,14 @@  discard block
 block discarded – undo
680 703
 		'name' => $_REQUEST['action'] == 'unread' ? $txt['unread_topics_visit'] : $txt['unread_replies']
681 704
 	);
682 705
 
683
-	if ($context['showing_all_topics'])
684
-		$context['linktree'][] = array(
706
+	if ($context['showing_all_topics']) {
707
+			$context['linktree'][] = array(
685 708
 			'url' => $scripturl . '?action=' . $_REQUEST['action'] . ';all' . sprintf($context['querystring_board_limits'], 0) . $context['querystring_sort_limits'],
686 709
 			'name' => $txt['unread_topics_all']
687 710
 		);
688
-	else
689
-		$txt['unread_topics_visit_none'] = strtr($txt['unread_topics_visit_none'], array('?action=unread;all' => '?action=unread;all' . sprintf($context['querystring_board_limits'], 0) . $context['querystring_sort_limits']));
711
+	} else {
712
+			$txt['unread_topics_visit_none'] = strtr($txt['unread_topics_visit_none'], array('?action=unread;all' => '?action=unread;all' . sprintf($context['querystring_board_limits'], 0) . $context['querystring_sort_limits']));
713
+	}
690 714
 
691 715
 	loadTemplate('Recent');
692 716
 	loadTemplate('MessageIndex');
@@ -694,8 +718,9 @@  discard block
 block discarded – undo
694 718
 
695 719
 	// Setup the default topic icons... for checking they exist and the like ;)
696 720
 	$context['icon_sources'] = array();
697
-	foreach ($context['stable_icons'] as $icon)
698
-		$context['icon_sources'][$icon] = 'images_url';
721
+	foreach ($context['stable_icons'] as $icon) {
722
+			$context['icon_sources'][$icon] = 'images_url';
723
+	}
699 724
 
700 725
 	$is_topics = $_REQUEST['action'] == 'unread';
701 726
 
@@ -725,8 +750,7 @@  discard block
 block discarded – undo
725 750
 			);
726 751
 			list ($earliest_msg) = $smcFunc['db_fetch_row']($request);
727 752
 			$smcFunc['db_free_result']($request);
728
-		}
729
-		else
753
+		} else
730 754
 		{
731 755
 			$request = $smcFunc['db_query']('', '
732 756
 				SELECT MIN(lmr.id_msg)
@@ -742,14 +766,14 @@  discard block
 block discarded – undo
742 766
 		}
743 767
 
744 768
 		// This is needed in case of topics marked unread.
745
-		if (empty($earliest_msg))
746
-			$earliest_msg = 0;
747
-		else
769
+		if (empty($earliest_msg)) {
770
+					$earliest_msg = 0;
771
+		} else
748 772
 		{
749 773
 			// Using caching, when possible, to ignore the below slow query.
750
-			if (isset($_SESSION['cached_log_time']) && $_SESSION['cached_log_time'][0] + 45 > time())
751
-				$earliest_msg2 = $_SESSION['cached_log_time'][1];
752
-			else
774
+			if (isset($_SESSION['cached_log_time']) && $_SESSION['cached_log_time'][0] + 45 > time()) {
775
+							$earliest_msg2 = $_SESSION['cached_log_time'][1];
776
+			} else
753 777
 			{
754 778
 				// This query is pretty slow, but it's needed to ensure nothing crucial is ignored.
755 779
 				$request = $smcFunc['db_query']('', '
@@ -764,8 +788,9 @@  discard block
 block discarded – undo
764 788
 				$smcFunc['db_free_result']($request);
765 789
 
766 790
 				// In theory this could be zero, if the first ever post is unread, so fudge it ;)
767
-				if ($earliest_msg2 == 0)
768
-					$earliest_msg2 = -1;
791
+				if ($earliest_msg2 == 0) {
792
+									$earliest_msg2 = -1;
793
+				}
769 794
 
770 795
 				$_SESSION['cached_log_time'] = array(time(), $earliest_msg2);
771 796
 			}
@@ -803,9 +828,9 @@  discard block
 block discarded – undo
803 828
 				'db_error_skip' => true,
804 829
 			))
805 830
 		) !== false;
831
+	} else {
832
+			$have_temp_table = false;
806 833
 	}
807
-	else
808
-		$have_temp_table = false;
809 834
 
810 835
 	if ($context['showing_all_topics'] && $have_temp_table)
811 836
 	{
@@ -851,14 +876,15 @@  discard block
 block discarded – undo
851 876
 
852 877
 			$context['topics'] = array();
853 878
 			$context['no_topic_listing'] = true;
854
-			if ($context['querystring_board_limits'] == ';start=%1$d')
855
-				$context['querystring_board_limits'] = '';
856
-			else
857
-				$context['querystring_board_limits'] = sprintf($context['querystring_board_limits'], $_REQUEST['start']);
879
+			if ($context['querystring_board_limits'] == ';start=%1$d') {
880
+							$context['querystring_board_limits'] = '';
881
+			} else {
882
+							$context['querystring_board_limits'] = sprintf($context['querystring_board_limits'], $_REQUEST['start']);
883
+			}
858 884
 			return;
885
+		} else {
886
+					$min_message = (int) $min_message;
859 887
 		}
860
-		else
861
-			$min_message = (int) $min_message;
862 888
 
863 889
 		$request = $smcFunc['db_query']('substring', '
864 890
 			SELECT ' . $select_clause . '
@@ -887,8 +913,7 @@  discard block
 block discarded – undo
887 913
 				'limit' => $context['topics_per_page'],
888 914
 			))
889 915
 		);
890
-	}
891
-	elseif ($is_topics)
916
+	} elseif ($is_topics)
892 917
 	{
893 918
 		$request = $smcFunc['db_query']('', '
894 919
 			SELECT COUNT(*), MIN(t.id_last_msg)
@@ -939,14 +964,15 @@  discard block
 block discarded – undo
939 964
 
940 965
 			$context['topics'] = array();
941 966
 			$context['no_topic_listing'] = true;
942
-			if ($context['querystring_board_limits'] == ';start=%d')
943
-				$context['querystring_board_limits'] = '';
944
-			else
945
-				$context['querystring_board_limits'] = sprintf($context['querystring_board_limits'], $_REQUEST['start']);
967
+			if ($context['querystring_board_limits'] == ';start=%d') {
968
+							$context['querystring_board_limits'] = '';
969
+			} else {
970
+							$context['querystring_board_limits'] = sprintf($context['querystring_board_limits'], $_REQUEST['start']);
971
+			}
946 972
 			return;
973
+		} else {
974
+					$min_message = (int) $min_message;
947 975
 		}
948
-		else
949
-			$min_message = (int) $min_message;
950 976
 
951 977
 		$request = $smcFunc['db_query']('substring', '
952 978
 			SELECT ' . $select_clause . '
@@ -976,8 +1002,7 @@  discard block
 block discarded – undo
976 1002
 				'limit' => $context['topics_per_page'],
977 1003
 			))
978 1004
 		);
979
-	}
980
-	else
1005
+	} else
981 1006
 	{
982 1007
 		if ($modSettings['totalMessages'] > 100000)
983 1008
 		{
@@ -1029,8 +1054,8 @@  discard block
 block discarded – undo
1029 1054
 			) !== false;
1030 1055
 
1031 1056
 			// If that worked, create a sample of the log_topics table too.
1032
-			if ($have_temp_table)
1033
-				$have_temp_table = $smcFunc['db_query']('', '
1057
+			if ($have_temp_table) {
1058
+							$have_temp_table = $smcFunc['db_query']('', '
1034 1059
 					CREATE TEMPORARY TABLE {db_prefix}log_topics_posted_in (
1035 1060
 						PRIMARY KEY (id_topic)
1036 1061
 					)
@@ -1043,6 +1068,7 @@  discard block
 block discarded – undo
1043 1068
 						'db_error_skip' => true,
1044 1069
 					)
1045 1070
 				) !== false;
1071
+			}
1046 1072
 		}
1047 1073
 
1048 1074
 		if (!empty($have_temp_table))
@@ -1058,8 +1084,7 @@  discard block
 block discarded – undo
1058 1084
 			);
1059 1085
 			list ($num_topics) = $smcFunc['db_fetch_row']($request);
1060 1086
 			$smcFunc['db_free_result']($request);
1061
-		}
1062
-		else
1087
+		} else
1063 1088
 		{
1064 1089
 			$request = $smcFunc['db_query']('unread_fetch_topic_count', '
1065 1090
 				SELECT COUNT(DISTINCT t.id_topic), MIN(t.id_last_msg)
@@ -1100,15 +1125,16 @@  discard block
 block discarded – undo
1100 1125
 		{
1101 1126
 			$context['topics'] = array();
1102 1127
 			$context['no_topic_listing'] = true;
1103
-			if ($context['querystring_board_limits'] == ';start=%d')
1104
-				$context['querystring_board_limits'] = '';
1105
-			else
1106
-				$context['querystring_board_limits'] = sprintf($context['querystring_board_limits'], $_REQUEST['start']);
1128
+			if ($context['querystring_board_limits'] == ';start=%d') {
1129
+							$context['querystring_board_limits'] = '';
1130
+			} else {
1131
+							$context['querystring_board_limits'] = sprintf($context['querystring_board_limits'], $_REQUEST['start']);
1132
+			}
1107 1133
 			return;
1108 1134
 		}
1109 1135
 
1110
-		if (!empty($have_temp_table))
1111
-			$request = $smcFunc['db_query']('', '
1136
+		if (!empty($have_temp_table)) {
1137
+					$request = $smcFunc['db_query']('', '
1112 1138
 				SELECT t.id_topic
1113 1139
 				FROM {db_prefix}topics_posted_in AS t
1114 1140
 					LEFT JOIN {db_prefix}log_topics_posted_in AS lt ON (lt.id_topic = t.id_topic)
@@ -1122,8 +1148,8 @@  discard block
 block discarded – undo
1122 1148
 					'limit' => $context['topics_per_page'],
1123 1149
 				))
1124 1150
 			);
1125
-		else
1126
-			$request = $smcFunc['db_query']('', '
1151
+		} else {
1152
+					$request = $smcFunc['db_query']('', '
1127 1153
 				SELECT DISTINCT t.id_topic,'.$_REQUEST['sort'].'
1128 1154
 				FROM {db_prefix}topics AS t
1129 1155
 					INNER JOIN {db_prefix}messages AS m ON (m.id_topic = t.id_topic AND m.id_member = {int:current_member})' . (strpos($_REQUEST['sort'], 'ms.') === false ? '' : '
@@ -1147,10 +1173,12 @@  discard block
 block discarded – undo
1147 1173
 					'sort' => $_REQUEST['sort'],
1148 1174
 				))
1149 1175
 			);
1176
+		}
1150 1177
 
1151 1178
 		$topics = array();
1152
-		while ($row = $smcFunc['db_fetch_assoc']($request))
1153
-			$topics[] = $row['id_topic'];
1179
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
1180
+					$topics[] = $row['id_topic'];
1181
+		}
1154 1182
 		$smcFunc['db_free_result']($request);
1155 1183
 
1156 1184
 		// Sanity... where have you gone?
@@ -1158,10 +1186,11 @@  discard block
 block discarded – undo
1158 1186
 		{
1159 1187
 			$context['topics'] = array();
1160 1188
 			$context['no_topic_listing'] = true;
1161
-			if ($context['querystring_board_limits'] == ';start=%d')
1162
-				$context['querystring_board_limits'] = '';
1163
-			else
1164
-				$context['querystring_board_limits'] = sprintf($context['querystring_board_limits'], $_REQUEST['start']);
1189
+			if ($context['querystring_board_limits'] == ';start=%d') {
1190
+							$context['querystring_board_limits'] = '';
1191
+			} else {
1192
+							$context['querystring_board_limits'] = sprintf($context['querystring_board_limits'], $_REQUEST['start']);
1193
+			}
1165 1194
 			return;
1166 1195
 		}
1167 1196
 
@@ -1195,8 +1224,9 @@  discard block
 block discarded – undo
1195 1224
 
1196 1225
 	while ($row = $smcFunc['db_fetch_assoc']($request))
1197 1226
 	{
1198
-		if ($row['id_poll'] > 0 && $modSettings['pollMode'] == '0')
1199
-			continue;
1227
+		if ($row['id_poll'] > 0 && $modSettings['pollMode'] == '0') {
1228
+					continue;
1229
+		}
1200 1230
 
1201 1231
 		$topic_ids[] = $row['id_topic'];
1202 1232
 
@@ -1204,11 +1234,13 @@  discard block
 block discarded – undo
1204 1234
 		{
1205 1235
 			// Limit them to 128 characters - do this FIRST because it's a lot of wasted censoring otherwise.
1206 1236
 			$row['first_body'] = strip_tags(strtr(parse_bbc($row['first_body'], $row['first_smileys'], $row['id_first_msg']), array('<br>' => '&#10;')));
1207
-			if ($smcFunc['strlen']($row['first_body']) > 128)
1208
-				$row['first_body'] = $smcFunc['substr']($row['first_body'], 0, 128) . '...';
1237
+			if ($smcFunc['strlen']($row['first_body']) > 128) {
1238
+							$row['first_body'] = $smcFunc['substr']($row['first_body'], 0, 128) . '...';
1239
+			}
1209 1240
 			$row['last_body'] = strip_tags(strtr(parse_bbc($row['last_body'], $row['last_smileys'], $row['id_last_msg']), array('<br>' => '&#10;')));
1210
-			if ($smcFunc['strlen']($row['last_body']) > 128)
1211
-				$row['last_body'] = $smcFunc['substr']($row['last_body'], 0, 128) . '...';
1241
+			if ($smcFunc['strlen']($row['last_body']) > 128) {
1242
+							$row['last_body'] = $smcFunc['substr']($row['last_body'], 0, 128) . '...';
1243
+			}
1212 1244
 
1213 1245
 			// Censor the subject and message preview.
1214 1246
 			censorText($row['first_subject']);
@@ -1219,23 +1251,22 @@  discard block
 block discarded – undo
1219 1251
 			{
1220 1252
 				$row['last_subject'] = $row['first_subject'];
1221 1253
 				$row['last_body'] = $row['first_body'];
1222
-			}
1223
-			else
1254
+			} else
1224 1255
 			{
1225 1256
 				censorText($row['last_subject']);
1226 1257
 				censorText($row['last_body']);
1227 1258
 			}
1228
-		}
1229
-		else
1259
+		} else
1230 1260
 		{
1231 1261
 			$row['first_body'] = '';
1232 1262
 			$row['last_body'] = '';
1233 1263
 			censorText($row['first_subject']);
1234 1264
 
1235
-			if ($row['id_first_msg'] == $row['id_last_msg'])
1236
-				$row['last_subject'] = $row['first_subject'];
1237
-			else
1238
-				censorText($row['last_subject']);
1265
+			if ($row['id_first_msg'] == $row['id_last_msg']) {
1266
+							$row['last_subject'] = $row['first_subject'];
1267
+			} else {
1268
+							censorText($row['last_subject']);
1269
+			}
1239 1270
 		}
1240 1271
 
1241 1272
 		// Decide how many pages the topic should have.
@@ -1247,22 +1278,24 @@  discard block
 block discarded – undo
1247 1278
 			$pages = constructPageIndex($scripturl . '?topic=' . $row['id_topic'] . '.%1$d', $start, $topic_length, $messages_per_page, true, false);
1248 1279
 
1249 1280
 			// If we can use all, show all.
1250
-			if (!empty($modSettings['enableAllMessages']) && $topic_length < $modSettings['enableAllMessages'])
1251
-				$pages .= ' &nbsp;<a href="' . $scripturl . '?topic=' . $row['id_topic'] . '.0;all">' . $txt['all'] . '</a>';
1281
+			if (!empty($modSettings['enableAllMessages']) && $topic_length < $modSettings['enableAllMessages']) {
1282
+							$pages .= ' &nbsp;<a href="' . $scripturl . '?topic=' . $row['id_topic'] . '.0;all">' . $txt['all'] . '</a>';
1283
+			}
1284
+		} else {
1285
+					$pages = '';
1252 1286
 		}
1253 1287
 
1254
-		else
1255
-			$pages = '';
1256
-
1257 1288
 		// We need to check the topic icons exist... you can never be too sure!
1258 1289
 		if (!empty($modSettings['messageIconChecks_enable']))
1259 1290
 		{
1260 1291
 			// First icon first... as you'd expect.
1261
-			if (!isset($context['icon_sources'][$row['first_icon']]))
1262
-				$context['icon_sources'][$row['first_icon']] = file_exists($settings['theme_dir'] . '/images/post/' . $row['first_icon'] . '.png') ? 'images_url' : 'default_images_url';
1292
+			if (!isset($context['icon_sources'][$row['first_icon']])) {
1293
+							$context['icon_sources'][$row['first_icon']] = file_exists($settings['theme_dir'] . '/images/post/' . $row['first_icon'] . '.png') ? 'images_url' : 'default_images_url';
1294
+			}
1263 1295
 			// Last icon... last... duh.
1264
-			if (!isset($context['icon_sources'][$row['last_icon']]))
1265
-				$context['icon_sources'][$row['last_icon']] = file_exists($settings['theme_dir'] . '/images/post/' . $row['last_icon'] . '.png') ? 'images_url' : 'default_images_url';
1296
+			if (!isset($context['icon_sources'][$row['last_icon']])) {
1297
+							$context['icon_sources'][$row['last_icon']] = file_exists($settings['theme_dir'] . '/images/post/' . $row['last_icon'] . '.png') ? 'images_url' : 'default_images_url';
1298
+			}
1266 1299
 		}
1267 1300
 
1268 1301
 		// Force the recycling icon if appropriate
@@ -1276,12 +1309,14 @@  discard block
 block discarded – undo
1276 1309
 		$colorClass = 'windowbg';
1277 1310
 
1278 1311
 		// Sticky topics should get a different color, too.
1279
-		if ($row['is_sticky'])
1280
-			$colorClass .= ' sticky';
1312
+		if ($row['is_sticky']) {
1313
+					$colorClass .= ' sticky';
1314
+		}
1281 1315
 
1282 1316
 		// Locked topics get special treatment as well.
1283
-		if ($row['locked'])
1284
-			$colorClass .= ' locked';
1317
+		if ($row['locked']) {
1318
+					$colorClass .= ' locked';
1319
+		}
1285 1320
 
1286 1321
 		// And build the array.
1287 1322
 		$context['topics'][$row['id_topic']] = array(
@@ -1378,8 +1413,9 @@  discard block
 block discarded – undo
1378 1413
 		);
1379 1414
 		while ($row = $smcFunc['db_fetch_assoc']($result))
1380 1415
 		{
1381
-			if (empty($context['topics'][$row['id_topic']]['is_posted_in']))
1382
-				$context['topics'][$row['id_topic']]['is_posted_in'] = true;
1416
+			if (empty($context['topics'][$row['id_topic']]['is_posted_in'])) {
1417
+							$context['topics'][$row['id_topic']]['is_posted_in'] = true;
1418
+			}
1383 1419
 		}
1384 1420
 		$smcFunc['db_free_result']($result);
1385 1421
 	}
@@ -1394,28 +1430,30 @@  discard block
 block discarded – undo
1394 1430
 			'markread' => array('text' => !empty($context['no_board_limits']) ? 'mark_as_read' : 'mark_read_short', 'image' => 'markread.png', 'custom' => 'data-confirm="'.  $txt['are_sure_mark_read'] .'"', 'class' => 'you_sure', 'url' => $scripturl . '?action=markasread;sa=' . (!empty($context['no_board_limits']) ? 'all' : 'board' . $context['querystring_board_limits']) . ';' . $context['session_var'] . '=' . $context['session_id']),
1395 1431
 		);
1396 1432
 
1397
-		if ($context['showCheckboxes'])
1398
-			$context['recent_buttons']['markselectread'] = array(
1433
+		if ($context['showCheckboxes']) {
1434
+					$context['recent_buttons']['markselectread'] = array(
1399 1435
 				'text' => 'quick_mod_markread',
1400 1436
 				'image' => 'markselectedread.png',
1401 1437
 				'url' => 'javascript:document.quickModForm.submit();',
1402 1438
 			);
1439
+		}
1403 1440
 
1404
-		if (!empty($context['topics']) && !$context['showing_all_topics'])
1405
-			$context['recent_buttons']['readall'] = array('text' => 'unread_topics_all', 'image' => 'markreadall.png', 'url' => $scripturl . '?action=unread;all' . $context['querystring_board_limits'], 'active' => true);
1406
-	}
1407
-	elseif (!$is_topics && isset($context['topics_to_mark']))
1441
+		if (!empty($context['topics']) && !$context['showing_all_topics']) {
1442
+					$context['recent_buttons']['readall'] = array('text' => 'unread_topics_all', 'image' => 'markreadall.png', 'url' => $scripturl . '?action=unread;all' . $context['querystring_board_limits'], 'active' => true);
1443
+		}
1444
+	} elseif (!$is_topics && isset($context['topics_to_mark']))
1408 1445
 	{
1409 1446
 		$context['recent_buttons'] = array(
1410 1447
 			'markread' => array('text' => 'mark_as_read', 'image' => 'markread.png', 'custom' => 'data-confirm="'. $txt['are_sure_mark_read']  .'"', 'class' => 'you_sure', 'url' => $scripturl . '?action=markasread;sa=unreadreplies;topics=' . $context['topics_to_mark'] . ';' . $context['session_var'] . '=' . $context['session_id']),
1411 1448
 		);
1412 1449
 
1413
-		if ($context['showCheckboxes'])
1414
-			$context['recent_buttons']['markselectread'] = array(
1450
+		if ($context['showCheckboxes']) {
1451
+					$context['recent_buttons']['markselectread'] = array(
1415 1452
 				'text' => 'quick_mod_markread',
1416 1453
 				'image' => 'markselectedread.png',
1417 1454
 				'url' => 'javascript:document.quickModForm.submit();',
1418 1455
 			);
1456
+		}
1419 1457
 	}
1420 1458
 
1421 1459
 	// Allow mods to add additional buttons here
Please login to merge, or discard this patch.
Sources/Modlog.php 2 patches
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -256,7 +256,7 @@  discard block
 block discarded – undo
256 256
 					'class' => 'centercol',
257 257
 				),
258 258
 				'data' => array(
259
-					'function' => function ($entry)
259
+					'function' => function($entry)
260 260
 					{
261 261
 						return '<input type="checkbox" class="input_check" name="delete[]" value="' . $entry['id'] . '"' . ($entry['editable'] ? '' : ' disabled') . '>';
262 262
 					},
@@ -638,7 +638,7 @@  discard block
 block discarded – undo
638 638
 		if (empty($entries[$k]['action_text']))
639 639
 			$entries[$k]['action_text'] = isset($txt['modlog_ac_' . $entry['action']]) ? $txt['modlog_ac_' . $entry['action']] : $entry['action'];
640 640
 		$entries[$k]['action_text'] = preg_replace_callback('~\{([A-Za-z\d_]+)\}~i',
641
-			function ($matches) use ($entries, $k)
641
+			function($matches) use ($entries, $k)
642 642
 			{
643 643
 				return isset($entries[$k]['extra'][$matches[1]]) ? $entries[$k]['extra'][$matches[1]] : '';
644 644
 			}, $entries[$k]['action_text']);
Please login to merge, or discard this patch.
Braces   +97 added lines, -73 removed lines patch added patch discarded remove patch
@@ -14,8 +14,9 @@  discard block
 block discarded – undo
14 14
  * @version 2.1 Beta 3
15 15
  */
16 16
 
17
-if (!defined('SMF'))
17
+if (!defined('SMF')) {
18 18
 	die('No direct access...');
19
+}
19 20
 
20 21
 /**
21 22
  * Prepares the information from the moderation log for viewing.
@@ -32,14 +33,16 @@  discard block
 block discarded – undo
32 33
 
33 34
 	// Are we looking at the moderation log or the administration log.
34 35
 	$context['log_type'] = isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'adminlog' ? 3 : 1;
35
-	if ($context['log_type'] == 3)
36
-		isAllowedTo('admin_forum');
36
+	if ($context['log_type'] == 3) {
37
+			isAllowedTo('admin_forum');
38
+	}
37 39
 
38 40
 	// These change dependant on whether we are viewing the moderation or admin log.
39
-	if ($context['log_type'] == 3 || $_REQUEST['action'] == 'admin')
40
-		$context['url_start'] = '?action=admin;area=logs;sa=' . ($context['log_type'] == 3 ? 'adminlog' : 'modlog') . ';type=' . $context['log_type'];
41
-	else
42
-		$context['url_start'] = '?action=moderate;area=modlog;type=' . $context['log_type'];
41
+	if ($context['log_type'] == 3 || $_REQUEST['action'] == 'admin') {
42
+			$context['url_start'] = '?action=admin;area=logs;sa=' . ($context['log_type'] == 3 ? 'adminlog' : 'modlog') . ';type=' . $context['log_type'];
43
+	} else {
44
+			$context['url_start'] = '?action=moderate;area=modlog;type=' . $context['log_type'];
45
+	}
43 46
 
44 47
 	$context['can_delete'] = allowedTo('admin_forum');
45 48
 
@@ -67,8 +70,7 @@  discard block
 block discarded – undo
67 70
 		$log_type = isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'adminlog' ? 'admin' : 'moderate';
68 71
 		logAction('clearlog_' . $log_type, array(), $log_type);
69 72
 
70
-	}
71
-	elseif (!empty($_POST['remove']) && isset($_POST['delete']) && $context['can_delete'])
73
+	} elseif (!empty($_POST['remove']) && isset($_POST['delete']) && $context['can_delete'])
72 74
 	{
73 75
 		checkSession();
74 76
 		validateToken('mod-ml');
@@ -114,15 +116,17 @@  discard block
 block discarded – undo
114 116
 		'ip' => array('sql' => 'lm.ip', 'label' => $txt['modlog_ip'])
115 117
 	);
116 118
 
117
-	if (!isset($search_params['string']) || (!empty($_REQUEST['search']) && $search_params['string'] != $_REQUEST['search']))
118
-		$search_params_string = empty($_REQUEST['search']) ? '' : $_REQUEST['search'];
119
-	else
120
-		$search_params_string = $search_params['string'];
119
+	if (!isset($search_params['string']) || (!empty($_REQUEST['search']) && $search_params['string'] != $_REQUEST['search'])) {
120
+			$search_params_string = empty($_REQUEST['search']) ? '' : $_REQUEST['search'];
121
+	} else {
122
+			$search_params_string = $search_params['string'];
123
+	}
121 124
 
122
-	if (isset($_REQUEST['search_type']) || empty($search_params['type']) || !isset($searchTypes[$search_params['type']]))
123
-		$search_params_type = isset($_REQUEST['search_type']) && isset($searchTypes[$_REQUEST['search_type']]) ? $_REQUEST['search_type'] : (isset($searchTypes[$context['order']]) ? $context['order'] : 'member');
124
-	else
125
-		$search_params_type = $search_params['type'];
125
+	if (isset($_REQUEST['search_type']) || empty($search_params['type']) || !isset($searchTypes[$search_params['type']])) {
126
+			$search_params_type = isset($_REQUEST['search_type']) && isset($searchTypes[$_REQUEST['search_type']]) ? $_REQUEST['search_type'] : (isset($searchTypes[$context['order']]) ? $context['order'] : 'member');
127
+	} else {
128
+			$search_params_type = $search_params['type'];
129
+	}
126 130
 
127 131
 	$search_params_column = $searchTypes[$search_params_type]['sql'];
128 132
 	$search_params = array(
@@ -297,13 +301,14 @@  discard block
 block discarded – undo
297 301
 	$context['sub_template'] = 'show_list';
298 302
 	$context['default_list'] = 'moderation_log_list';
299 303
 
300
-	if (isset($context['moderation_menu_name']))
301
-		$context[$context['moderation_menu_name']]['tab_data'] = array(
304
+	if (isset($context['moderation_menu_name'])) {
305
+			$context[$context['moderation_menu_name']]['tab_data'] = array(
302 306
 			'title' => $txt['modlog_' . ($context['log_type'] == 3 ? 'admin' : 'moderation') . '_log'],
303 307
 			'help' => $context['log_type'] == 3 ? 'adminlog' : 'modlog',
304 308
 			'description' => $txt['modlog_' . ($context['log_type'] == 3 ? 'admin' : 'moderation') . '_log_desc']
305 309
 		);
306
-}
310
+	}
311
+	}
307 312
 
308 313
 /**
309 314
  * Get the number of mod log entries.
@@ -407,30 +412,35 @@  discard block
 block discarded – undo
407 412
 		// Add on some of the column stuff info
408 413
 		if (!empty($row['id_board']))
409 414
 		{
410
-			if ($row['action'] == 'move')
411
-				$row['extra']['board_to'] = $row['id_board'];
412
-			else
413
-				$row['extra']['board'] = $row['id_board'];
415
+			if ($row['action'] == 'move') {
416
+							$row['extra']['board_to'] = $row['id_board'];
417
+			} else {
418
+							$row['extra']['board'] = $row['id_board'];
419
+			}
414 420
 		}
415 421
 
416
-		if (!empty($row['id_topic']))
417
-			$row['extra']['topic'] = $row['id_topic'];
418
-		if (!empty($row['id_msg']))
419
-			$row['extra']['message'] = $row['id_msg'];
422
+		if (!empty($row['id_topic'])) {
423
+					$row['extra']['topic'] = $row['id_topic'];
424
+		}
425
+		if (!empty($row['id_msg'])) {
426
+					$row['extra']['message'] = $row['id_msg'];
427
+		}
420 428
 
421 429
 		// Is this associated with a topic?
422
-		if (isset($row['extra']['topic']))
423
-			$topics[(int) $row['extra']['topic']][] = $row['id_action'];
424
-		if (isset($row['extra']['new_topic']))
425
-			$topics[(int) $row['extra']['new_topic']][] = $row['id_action'];
430
+		if (isset($row['extra']['topic'])) {
431
+					$topics[(int) $row['extra']['topic']][] = $row['id_action'];
432
+		}
433
+		if (isset($row['extra']['new_topic'])) {
434
+					$topics[(int) $row['extra']['new_topic']][] = $row['id_action'];
435
+		}
426 436
 
427 437
 		// How about a member?
428 438
 		if (isset($row['extra']['member']))
429 439
 		{
430 440
 			// Guests don't have names!
431
-			if (empty($row['extra']['member']))
432
-				$row['extra']['member'] = $txt['modlog_parameter_guest'];
433
-			else
441
+			if (empty($row['extra']['member'])) {
442
+							$row['extra']['member'] = $txt['modlog_parameter_guest'];
443
+			} else
434 444
 			{
435 445
 				// Try to find it...
436 446
 				$members[(int) $row['extra']['member']][] = $row['id_action'];
@@ -438,35 +448,42 @@  discard block
 block discarded – undo
438 448
 		}
439 449
 
440 450
 		// Associated with a board?
441
-		if (isset($row['extra']['board_to']))
442
-			$boards[(int) $row['extra']['board_to']][] = $row['id_action'];
443
-		if (isset($row['extra']['board_from']))
444
-			$boards[(int) $row['extra']['board_from']][] = $row['id_action'];
445
-		if (isset($row['extra']['board']))
446
-			$boards[(int) $row['extra']['board']][] = $row['id_action'];
451
+		if (isset($row['extra']['board_to'])) {
452
+					$boards[(int) $row['extra']['board_to']][] = $row['id_action'];
453
+		}
454
+		if (isset($row['extra']['board_from'])) {
455
+					$boards[(int) $row['extra']['board_from']][] = $row['id_action'];
456
+		}
457
+		if (isset($row['extra']['board'])) {
458
+					$boards[(int) $row['extra']['board']][] = $row['id_action'];
459
+		}
447 460
 
448 461
 		// A message?
449
-		if (isset($row['extra']['message']))
450
-			$messages[(int) $row['extra']['message']][] = $row['id_action'];
462
+		if (isset($row['extra']['message'])) {
463
+					$messages[(int) $row['extra']['message']][] = $row['id_action'];
464
+		}
451 465
 
452 466
 		// IP Info?
453
-		if (isset($row['extra']['ip_range']))
454
-			if ($seeIP)
467
+		if (isset($row['extra']['ip_range'])) {
468
+					if ($seeIP)
455 469
 				$row['extra']['ip_range'] = '<a href="' . $scripturl . '?action=trackip;searchip=' . $row['extra']['ip_range'] . '">' . $row['extra']['ip_range'] . '</a>';
456
-			else
457
-				$row['extra']['ip_range'] = $txt['logged'];
470
+		} else {
471
+							$row['extra']['ip_range'] = $txt['logged'];
472
+			}
458 473
 
459 474
 		// Email?
460
-		if (isset($row['extra']['email']))
461
-			$row['extra']['email'] = '<a href="mailto:' . $row['extra']['email'] . '">' . $row['extra']['email'] . '</a>';
475
+		if (isset($row['extra']['email'])) {
476
+					$row['extra']['email'] = '<a href="mailto:' . $row['extra']['email'] . '">' . $row['extra']['email'] . '</a>';
477
+		}
462 478
 
463 479
 		// Bans are complex.
464 480
 		if ($row['action'] == 'ban' || $row['action'] == 'banremove')
465 481
 		{
466 482
 			$row['action_text'] = $txt['modlog_ac_ban' . ($row['action'] == 'banremove' ? '_remove' : '')];
467
-			foreach (array('member', 'email', 'ip_range', 'hostname') as $type)
468
-				if (isset($row['extra'][$type]))
483
+			foreach (array('member', 'email', 'ip_range', 'hostname') as $type) {
484
+							if (isset($row['extra'][$type]))
469 485
 					$row['action_text'] .= $txt['modlog_ac_ban_trigger_' . $type];
486
+			}
470 487
 		}
471 488
 
472 489
 		// The array to go to the template. Note here that action is set to a "default" value of the action doesn't match anything in the descriptions. Allows easy adding of logging events with basic details.
@@ -502,12 +519,13 @@  discard block
 block discarded – undo
502 519
 			foreach ($boards[$row['id_board']] as $action)
503 520
 			{
504 521
 				// Make the board number into a link - dealing with moving too.
505
-				if (isset($entries[$action]['extra']['board_to']) && $entries[$action]['extra']['board_to'] == $row['id_board'])
506
-					$entries[$action]['extra']['board_to'] = '<a href="' . $scripturl . '?board=' . $row['id_board'] . '.0">' . $row['name'] . '</a>';
507
-				elseif (isset($entries[$action]['extra']['board_from']) && $entries[$action]['extra']['board_from'] == $row['id_board'])
508
-					$entries[$action]['extra']['board_from'] = '<a href="' . $scripturl . '?board=' . $row['id_board'] . '.0">' . $row['name'] . '</a>';
509
-				elseif (isset($entries[$action]['extra']['board']) && $entries[$action]['extra']['board'] == $row['id_board'])
510
-					$entries[$action]['extra']['board'] = '<a href="' . $scripturl . '?board=' . $row['id_board'] . '.0">' . $row['name'] . '</a>';
522
+				if (isset($entries[$action]['extra']['board_to']) && $entries[$action]['extra']['board_to'] == $row['id_board']) {
523
+									$entries[$action]['extra']['board_to'] = '<a href="' . $scripturl . '?board=' . $row['id_board'] . '.0">' . $row['name'] . '</a>';
524
+				} elseif (isset($entries[$action]['extra']['board_from']) && $entries[$action]['extra']['board_from'] == $row['id_board']) {
525
+									$entries[$action]['extra']['board_from'] = '<a href="' . $scripturl . '?board=' . $row['id_board'] . '.0">' . $row['name'] . '</a>';
526
+				} elseif (isset($entries[$action]['extra']['board']) && $entries[$action]['extra']['board'] == $row['id_board']) {
527
+									$entries[$action]['extra']['board'] = '<a href="' . $scripturl . '?board=' . $row['id_board'] . '.0">' . $row['name'] . '</a>';
528
+				}
511 529
 			}
512 530
 		}
513 531
 		$smcFunc['db_free_result']($request);
@@ -541,10 +559,11 @@  discard block
 block discarded – undo
541 559
 				);
542 560
 
543 561
 				// Make the topic number into a link - dealing with splitting too.
544
-				if (isset($this_action['extra']['topic']) && $this_action['extra']['topic'] == $row['id_topic'])
545
-					$this_action['extra']['topic'] = '<a href="' . $scripturl . '?topic=' . $row['id_topic'] . '.' . (isset($this_action['extra']['message']) ? 'msg' . $this_action['extra']['message'] . '#msg' . $this_action['extra']['message'] : '0') . '">' . $row['subject'] . '</a>';
546
-				elseif (isset($this_action['extra']['new_topic']) && $this_action['extra']['new_topic'] == $row['id_topic'])
547
-					$this_action['extra']['new_topic'] = '<a href="' . $scripturl . '?topic=' . $row['id_topic'] . '.' . (isset($this_action['extra']['message']) ? 'msg' . $this_action['extra']['message'] . '#msg' . $this_action['extra']['message'] : '0') . '">' . $row['subject'] . '</a>';
562
+				if (isset($this_action['extra']['topic']) && $this_action['extra']['topic'] == $row['id_topic']) {
563
+									$this_action['extra']['topic'] = '<a href="' . $scripturl . '?topic=' . $row['id_topic'] . '.' . (isset($this_action['extra']['message']) ? 'msg' . $this_action['extra']['message'] . '#msg' . $this_action['extra']['message'] : '0') . '">' . $row['subject'] . '</a>';
564
+				} elseif (isset($this_action['extra']['new_topic']) && $this_action['extra']['new_topic'] == $row['id_topic']) {
565
+									$this_action['extra']['new_topic'] = '<a href="' . $scripturl . '?topic=' . $row['id_topic'] . '.' . (isset($this_action['extra']['message']) ? 'msg' . $this_action['extra']['message'] . '#msg' . $this_action['extra']['message'] : '0') . '">' . $row['subject'] . '</a>';
566
+				}
548 567
 			}
549 568
 		}
550 569
 		$smcFunc['db_free_result']($request);
@@ -577,8 +596,9 @@  discard block
 block discarded – undo
577 596
 				);
578 597
 
579 598
 				// Make the message number into a link.
580
-				if (isset($this_action['extra']['message']) && $this_action['extra']['message'] == $row['id_msg'])
581
-					$this_action['extra']['message'] = '<a href="' . $scripturl . '?msg=' . $row['id_msg'] . '">' . $row['subject'] . '</a>';
599
+				if (isset($this_action['extra']['message']) && $this_action['extra']['message'] == $row['id_msg']) {
600
+									$this_action['extra']['message'] = '<a href="' . $scripturl . '?msg=' . $row['id_msg'] . '">' . $row['subject'] . '</a>';
601
+				}
582 602
 			}
583 603
 		}
584 604
 		$smcFunc['db_free_result']($request);
@@ -618,25 +638,29 @@  discard block
 block discarded – undo
618 638
 	foreach ($entries as $k => $entry)
619 639
 	{
620 640
 		// Make any message info links so its easier to go find that message.
621
-		if (isset($entry['extra']['message']) && (empty($entry['message']) || empty($entry['message']['id'])))
622
-			$entries[$k]['extra']['message'] = '<a href="' . $scripturl . '?msg=' . $entry['extra']['message'] . '">' . $entry['extra']['message'] . '</a>';
641
+		if (isset($entry['extra']['message']) && (empty($entry['message']) || empty($entry['message']['id']))) {
642
+					$entries[$k]['extra']['message'] = '<a href="' . $scripturl . '?msg=' . $entry['extra']['message'] . '">' . $entry['extra']['message'] . '</a>';
643
+		}
623 644
 
624 645
 		// Mark up any deleted members, topics and boards.
625
-		foreach (array('board', 'board_from', 'board_to', 'member', 'topic', 'new_topic') as $type)
626
-			if (!empty($entry['extra'][$type]) && is_numeric($entry['extra'][$type]))
646
+		foreach (array('board', 'board_from', 'board_to', 'member', 'topic', 'new_topic') as $type) {
647
+					if (!empty($entry['extra'][$type]) && is_numeric($entry['extra'][$type]))
627 648
 				$entries[$k]['extra'][$type] = sprintf($txt['modlog_id'], $entry['extra'][$type]);
649
+		}
628 650
 
629 651
 		if (isset($entry['extra']['report']))
630 652
 		{
631 653
 			// Member profile reports go in a different area
632
-			if (stristr($entry['action'], 'user_report'))
633
-				$entries[$k]['extra']['report'] = '<a href="' . $scripturl . '?action=moderate;area=reportedmembers;sa=details;rid=' . $entry['extra']['report'] . '">' . $txt['modlog_report'] . '</a>';
634
-			else
635
-				$entries[$k]['extra']['report'] = '<a href="' . $scripturl . '?action=moderate;area=reportedposts;sa=details;rid=' . $entry['extra']['report'] . '">' . $txt['modlog_report'] . '</a>';
654
+			if (stristr($entry['action'], 'user_report')) {
655
+							$entries[$k]['extra']['report'] = '<a href="' . $scripturl . '?action=moderate;area=reportedmembers;sa=details;rid=' . $entry['extra']['report'] . '">' . $txt['modlog_report'] . '</a>';
656
+			} else {
657
+							$entries[$k]['extra']['report'] = '<a href="' . $scripturl . '?action=moderate;area=reportedposts;sa=details;rid=' . $entry['extra']['report'] . '">' . $txt['modlog_report'] . '</a>';
658
+			}
636 659
 		}
637 660
 
638
-		if (empty($entries[$k]['action_text']))
639
-			$entries[$k]['action_text'] = isset($txt['modlog_ac_' . $entry['action']]) ? $txt['modlog_ac_' . $entry['action']] : $entry['action'];
661
+		if (empty($entries[$k]['action_text'])) {
662
+					$entries[$k]['action_text'] = isset($txt['modlog_ac_' . $entry['action']]) ? $txt['modlog_ac_' . $entry['action']] : $entry['action'];
663
+		}
640 664
 		$entries[$k]['action_text'] = preg_replace_callback('~\{([A-Za-z\d_]+)\}~i',
641 665
 			function ($matches) use ($entries, $k)
642 666
 			{
Please login to merge, or discard this patch.
Sources/Class-BrowserDetect.php 2 patches
Indentation   +33 added lines, -33 removed lines patch added patch discarded remove patch
@@ -101,9 +101,9 @@  discard block
 block discarded – undo
101 101
 	}
102 102
 
103 103
 	/**
104
-	* Determine if the browser is Opera or not
105
-	* @return boolean Whether or not this is Opera
106
-	*/
104
+	 * Determine if the browser is Opera or not
105
+	 * @return boolean Whether or not this is Opera
106
+	 */
107 107
 	function isOpera()
108 108
 	{
109 109
 		if (!isset($this->_browsers['is_opera']))
@@ -112,9 +112,9 @@  discard block
 block discarded – undo
112 112
 	}
113 113
 
114 114
 	/**
115
-	* Determine if the browser is IE or not
116
-	* @return boolean true Whether or not the browser is IE
117
-	*/
115
+	 * Determine if the browser is IE or not
116
+	 * @return boolean true Whether or not the browser is IE
117
+	 */
118 118
 	function isIe()
119 119
 	{
120 120
 		// I'm IE, Yes I'm the real IE; All you other IEs are just imitating.
@@ -124,9 +124,9 @@  discard block
 block discarded – undo
124 124
 	}
125 125
 
126 126
 	/**
127
-	* Determine if the browser is IE11 or not
128
-	* @return boolean Whether or not the browser is IE11
129
-	*/
127
+	 * Determine if the browser is IE11 or not
128
+	 * @return boolean Whether or not the browser is IE11
129
+	 */
130 130
 	function isIe11()
131 131
 	{
132 132
 		// IE11 is a bit different than earlier versions
@@ -137,9 +137,9 @@  discard block
 block discarded – undo
137 137
  	}
138 138
 
139 139
 	/**
140
-	* Determine if the browser is Edge or not
141
-	* @return boolean Whether or not the browser is Edge
142
-	*/
140
+	 * Determine if the browser is Edge or not
141
+	 * @return boolean Whether or not the browser is Edge
142
+	 */
143 143
 	function isEdge()
144 144
 	{
145 145
 		if (!isset($this->_browsers['is_edge']))
@@ -148,9 +148,9 @@  discard block
 block discarded – undo
148 148
 	}
149 149
 
150 150
 	/**
151
-	* Determine if the browser is a Webkit based one or not
152
-	* @return boolean Whether or not this is a Webkit-based browser
153
-	*/
151
+	 * Determine if the browser is a Webkit based one or not
152
+	 * @return boolean Whether or not this is a Webkit-based browser
153
+	 */
154 154
 	function isWebkit()
155 155
 	{
156 156
 		if (!isset($this->_browsers['is_webkit']))
@@ -159,9 +159,9 @@  discard block
 block discarded – undo
159 159
 	}
160 160
 
161 161
 	/**
162
-	* Determine if the browser is Firefox or one of its variants
163
-	* @return boolean Whether or not this is Firefox (or one of its variants)
164
-	*/
162
+	 * Determine if the browser is Firefox or one of its variants
163
+	 * @return boolean Whether or not this is Firefox (or one of its variants)
164
+	 */
165 165
 	function isFirefox()
166 166
 	{
167 167
 		if (!isset($this->_browsers['is_firefox']))
@@ -170,9 +170,9 @@  discard block
 block discarded – undo
170 170
 	}
171 171
 
172 172
 	/**
173
-	* Determine if the browser is WebTv or not
174
-	* @return boolean Whether or not this is WebTV
175
-	*/
173
+	 * Determine if the browser is WebTv or not
174
+	 * @return boolean Whether or not this is WebTV
175
+	 */
176 176
 	function isWebTv()
177 177
 	{
178 178
 		if (!isset($this->_browsers['is_web_tv']))
@@ -181,9 +181,9 @@  discard block
 block discarded – undo
181 181
 	}
182 182
 
183 183
 	/**
184
-	* Determine if the browser is konqueror or not
185
-	* @return boolean Whether or not this is Konqueror
186
-	*/
184
+	 * Determine if the browser is konqueror or not
185
+	 * @return boolean Whether or not this is Konqueror
186
+	 */
187 187
 	function isKonqueror()
188 188
 	{
189 189
 		if (!isset($this->_browsers['is_konqueror']))
@@ -192,9 +192,9 @@  discard block
 block discarded – undo
192 192
 	}
193 193
 
194 194
 	/**
195
-	* Determine if the browser is Gecko or not
196
-	* @return boolean Whether or not this is a Gecko-based browser
197
-	*/
195
+	 * Determine if the browser is Gecko or not
196
+	 * @return boolean Whether or not this is a Gecko-based browser
197
+	 */
198 198
 	function isGecko()
199 199
 	{
200 200
 		if (!isset($this->_browsers['is_gecko']))
@@ -203,9 +203,9 @@  discard block
 block discarded – undo
203 203
 	}
204 204
 
205 205
 	/**
206
-	* Determine if the browser is Opera Mini or not
207
-	* @return boolean Whether or not this is Opera Mini
208
-	*/
206
+	 * Determine if the browser is Opera Mini or not
207
+	 * @return boolean Whether or not this is Opera Mini
208
+	 */
209 209
 	function isOperaMini()
210 210
 	{
211 211
 		if (!isset($this->_browsers['is_opera_mini']))
@@ -216,9 +216,9 @@  discard block
 block discarded – undo
216 216
 	}
217 217
 
218 218
 	/**
219
-	* Determine if the browser is Opera Mobile or not
220
-	* @return boolean Whether or not this is Opera Mobile
221
-	*/
219
+	 * Determine if the browser is Opera Mobile or not
220
+	 * @return boolean Whether or not this is Opera Mobile
221
+	 */
222 222
 	function isOperaMobi()
223 223
 	{
224 224
 		if (!isset($this->_browsers['is_opera_mobi']))
Please login to merge, or discard this patch.
Braces   +88 added lines, -60 removed lines patch added patch discarded remove patch
@@ -11,8 +11,9 @@  discard block
 block discarded – undo
11 11
  * @version 2.1 Beta 3
12 12
  */
13 13
 
14
-if (!defined('SMF'))
14
+if (!defined('SMF')) {
15 15
 	die('No direct access...');
16
+}
16 17
 
17 18
 /**
18 19
  * Class browser_detector
@@ -55,20 +56,25 @@  discard block
 block discarded – undo
55 56
 		$this->_browsers['needs_size_fix'] = false;
56 57
 
57 58
 		// One at a time, one at a time, and in this order too
58
-		if ($this->isOpera())
59
-			$this->setupOpera();
59
+		if ($this->isOpera()) {
60
+					$this->setupOpera();
61
+		}
60 62
 		// Meh...
61
-		elseif ($this->isEdge())
62
-			$this->setupEdge();
63
+		elseif ($this->isEdge()) {
64
+					$this->setupEdge();
65
+		}
63 66
 		// Them webkits need to be set up too
64
-		elseif ($this->isWebkit())
65
-			$this->setupWebkit();
67
+		elseif ($this->isWebkit()) {
68
+					$this->setupWebkit();
69
+		}
66 70
 		// We may have work to do on Firefox...
67
-		elseif ($this->isFirefox())
68
-			$this->setupFirefox();
71
+		elseif ($this->isFirefox()) {
72
+					$this->setupFirefox();
73
+		}
69 74
 		// Old friend, old frenemy
70
-		elseif ($this->isIe())
71
-			$this->setupIe();
75
+		elseif ($this->isIe()) {
76
+					$this->setupIe();
77
+		}
72 78
 
73 79
 		// Just a few mobile checks
74 80
 		$this->isOperaMini();
@@ -84,11 +90,12 @@  discard block
 block discarded – undo
84 90
 			$this->_browsers['possibly_robot'] = !empty($user_info['possibly_robot']);
85 91
 
86 92
 			// Robots shouldn't be logging in or registering.  So, they aren't a bot.  Better to be wrong than sorry (or people won't be able to log in!), anyway.
87
-			if ((isset($_REQUEST['action']) && in_array($_REQUEST['action'], array('login', 'login2', 'register', 'signup'))) || !$user_info['is_guest'])
88
-				$this->_browsers['possibly_robot'] = false;
93
+			if ((isset($_REQUEST['action']) && in_array($_REQUEST['action'], array('login', 'login2', 'register', 'signup'))) || !$user_info['is_guest']) {
94
+							$this->_browsers['possibly_robot'] = false;
95
+			}
96
+		} else {
97
+					$this->_browsers['possibly_robot'] = false;
89 98
 		}
90
-		else
91
-			$this->_browsers['possibly_robot'] = false;
92 99
 
93 100
 		// Fill out the historical array as needed to support old mods that don't use isBrowser
94 101
 		$this->fillInformation();
@@ -106,8 +113,9 @@  discard block
 block discarded – undo
106 113
 	*/
107 114
 	function isOpera()
108 115
 	{
109
-		if (!isset($this->_browsers['is_opera']))
110
-			$this->_browsers['is_opera'] = strpos($_SERVER['HTTP_USER_AGENT'], 'Opera') !== false;
116
+		if (!isset($this->_browsers['is_opera'])) {
117
+					$this->_browsers['is_opera'] = strpos($_SERVER['HTTP_USER_AGENT'], 'Opera') !== false;
118
+		}
111 119
 		return $this->_browsers['is_opera'];
112 120
 	}
113 121
 
@@ -118,8 +126,9 @@  discard block
 block discarded – undo
118 126
 	function isIe()
119 127
 	{
120 128
 		// I'm IE, Yes I'm the real IE; All you other IEs are just imitating.
121
-		if (!isset($this->_browsers['is_ie']))
122
-			$this->_browsers['is_ie'] = !$this->isOpera() && !$this->isGecko() && !$this->isWebTv() && preg_match('~MSIE \d+~', $_SERVER['HTTP_USER_AGENT']) === 1;
129
+		if (!isset($this->_browsers['is_ie'])) {
130
+					$this->_browsers['is_ie'] = !$this->isOpera() && !$this->isGecko() && !$this->isWebTv() && preg_match('~MSIE \d+~', $_SERVER['HTTP_USER_AGENT']) === 1;
131
+		}
123 132
 		return $this->_browsers['is_ie'];
124 133
 	}
125 134
 
@@ -131,8 +140,9 @@  discard block
 block discarded – undo
131 140
 	{
132 141
 		// IE11 is a bit different than earlier versions
133 142
 		// The isGecko() part is to ensure we get this right...
134
-		if (!isset($this->_browsers['is_ie11']))
135
-			$this->_browsers['is_ie11'] = strpos($_SERVER['HTTP_USER_AGENT'], 'Trident') !== false && $this->isGecko();
143
+		if (!isset($this->_browsers['is_ie11'])) {
144
+					$this->_browsers['is_ie11'] = strpos($_SERVER['HTTP_USER_AGENT'], 'Trident') !== false && $this->isGecko();
145
+		}
136 146
 		return $this->_browsers['is_ie11'];
137 147
  	}
138 148
 
@@ -142,8 +152,9 @@  discard block
 block discarded – undo
142 152
 	*/
143 153
 	function isEdge()
144 154
 	{
145
-		if (!isset($this->_browsers['is_edge']))
146
-			$this->_browsers['is_edge'] = strpos($_SERVER['HTTP_USER_AGENT'], 'Edge') !== false;
155
+		if (!isset($this->_browsers['is_edge'])) {
156
+					$this->_browsers['is_edge'] = strpos($_SERVER['HTTP_USER_AGENT'], 'Edge') !== false;
157
+		}
147 158
 		return $this->_browsers['is_edge'];
148 159
 	}
149 160
 
@@ -153,8 +164,9 @@  discard block
 block discarded – undo
153 164
 	*/
154 165
 	function isWebkit()
155 166
 	{
156
-		if (!isset($this->_browsers['is_webkit']))
157
-			$this->_browsers['is_webkit'] = strpos($_SERVER['HTTP_USER_AGENT'], 'AppleWebKit') !== false;
167
+		if (!isset($this->_browsers['is_webkit'])) {
168
+					$this->_browsers['is_webkit'] = strpos($_SERVER['HTTP_USER_AGENT'], 'AppleWebKit') !== false;
169
+		}
158 170
 		return $this->_browsers['is_webkit'];
159 171
 	}
160 172
 
@@ -164,8 +176,9 @@  discard block
 block discarded – undo
164 176
 	*/
165 177
 	function isFirefox()
166 178
 	{
167
-		if (!isset($this->_browsers['is_firefox']))
168
-			$this->_browsers['is_firefox'] = preg_match('~(?:Firefox|Ice[wW]easel|IceCat|Shiretoko|Minefield)/~', $_SERVER['HTTP_USER_AGENT']) === 1 && $this->isGecko();
179
+		if (!isset($this->_browsers['is_firefox'])) {
180
+					$this->_browsers['is_firefox'] = preg_match('~(?:Firefox|Ice[wW]easel|IceCat|Shiretoko|Minefield)/~', $_SERVER['HTTP_USER_AGENT']) === 1 && $this->isGecko();
181
+		}
169 182
 		return $this->_browsers['is_firefox'];
170 183
 	}
171 184
 
@@ -175,8 +188,9 @@  discard block
 block discarded – undo
175 188
 	*/
176 189
 	function isWebTv()
177 190
 	{
178
-		if (!isset($this->_browsers['is_web_tv']))
179
-			$this->_browsers['is_web_tv'] = strpos($_SERVER['HTTP_USER_AGENT'], 'WebTV') !== false;
191
+		if (!isset($this->_browsers['is_web_tv'])) {
192
+					$this->_browsers['is_web_tv'] = strpos($_SERVER['HTTP_USER_AGENT'], 'WebTV') !== false;
193
+		}
180 194
 		return $this->_browsers['is_web_tv'];
181 195
 	}
182 196
 
@@ -186,8 +200,9 @@  discard block
 block discarded – undo
186 200
 	*/
187 201
 	function isKonqueror()
188 202
 	{
189
-		if (!isset($this->_browsers['is_konqueror']))
190
-			$this->_browsers['is_konqueror'] = strpos($_SERVER['HTTP_USER_AGENT'], 'Konqueror') !== false;
203
+		if (!isset($this->_browsers['is_konqueror'])) {
204
+					$this->_browsers['is_konqueror'] = strpos($_SERVER['HTTP_USER_AGENT'], 'Konqueror') !== false;
205
+		}
191 206
 		return $this->_browsers['is_konqueror'];
192 207
 	}
193 208
 
@@ -197,8 +212,9 @@  discard block
 block discarded – undo
197 212
 	*/
198 213
 	function isGecko()
199 214
 	{
200
-		if (!isset($this->_browsers['is_gecko']))
201
-			$this->_browsers['is_gecko'] = strpos($_SERVER['HTTP_USER_AGENT'], 'Gecko') !== false && !$this->isWebkit() && !$this->isKonqueror();
215
+		if (!isset($this->_browsers['is_gecko'])) {
216
+					$this->_browsers['is_gecko'] = strpos($_SERVER['HTTP_USER_AGENT'], 'Gecko') !== false && !$this->isWebkit() && !$this->isKonqueror();
217
+		}
202 218
 		return $this->_browsers['is_gecko'];
203 219
 	}
204 220
 
@@ -208,10 +224,12 @@  discard block
 block discarded – undo
208 224
 	*/
209 225
 	function isOperaMini()
210 226
 	{
211
-		if (!isset($this->_browsers['is_opera_mini']))
212
-			$this->_browsers['is_opera_mini'] = (isset($_SERVER['HTTP_X_OPERAMINI_PHONE_UA']) || stripos($_SERVER['HTTP_USER_AGENT'], 'opera mini') !== false);
213
-		if ($this->_browsers['is_opera_mini'])
214
-			$this->_is_mobile = true;
227
+		if (!isset($this->_browsers['is_opera_mini'])) {
228
+					$this->_browsers['is_opera_mini'] = (isset($_SERVER['HTTP_X_OPERAMINI_PHONE_UA']) || stripos($_SERVER['HTTP_USER_AGENT'], 'opera mini') !== false);
229
+		}
230
+		if ($this->_browsers['is_opera_mini']) {
231
+					$this->_is_mobile = true;
232
+		}
215 233
 		return $this->_browsers['is_opera_mini'];
216 234
 	}
217 235
 
@@ -221,10 +239,12 @@  discard block
 block discarded – undo
221 239
 	*/
222 240
 	function isOperaMobi()
223 241
 	{
224
-		if (!isset($this->_browsers['is_opera_mobi']))
225
-			$this->_browsers['is_opera_mobi'] = stripos($_SERVER['HTTP_USER_AGENT'], 'opera mobi') !== false;
226
-		if ($this->_browsers['is_opera_mobi'])
227
-			$this->_is_mobile = true;
242
+		if (!isset($this->_browsers['is_opera_mobi'])) {
243
+					$this->_browsers['is_opera_mobi'] = stripos($_SERVER['HTTP_USER_AGENT'], 'opera mobi') !== false;
244
+		}
245
+		if ($this->_browsers['is_opera_mobi']) {
246
+					$this->_is_mobile = true;
247
+		}
228 248
 		return $this->_browsers['is_opera_mini'];
229 249
 	}
230 250
 
@@ -244,8 +264,9 @@  discard block
 block discarded – undo
244 264
 		);
245 265
 
246 266
 		// blackberry, playbook, iphone, nokia, android and ipods set a mobile flag
247
-		if ($this->_browsers['is_iphone'] || $this->_browsers['is_blackberry'] || $this->_browsers['is_android'] || $this->_browsers['is_nokia'])
248
-			$this->_is_mobile = true;
267
+		if ($this->_browsers['is_iphone'] || $this->_browsers['is_blackberry'] || $this->_browsers['is_android'] || $this->_browsers['is_nokia']) {
268
+					$this->_is_mobile = true;
269
+		}
249 270
 
250 271
 		// @todo what to do with the blaPad? ... for now leave it detected as Safari ...
251 272
 		$this->_browsers['is_safari'] = strpos($_SERVER['HTTP_USER_AGENT'], 'Safari') !== false && !$this->_browsers['is_chrome'] && !$this->_browsers['is_iphone'];
@@ -254,15 +275,17 @@  discard block
 block discarded – undo
254 275
 		// if Chrome, get the major version
255 276
 		if ($this->_browsers['is_chrome'])
256 277
 		{
257
-			if (preg_match('~chrome[/]([0-9][0-9]?[.])~i', $_SERVER['HTTP_USER_AGENT'], $match) === 1)
258
-				$this->_browsers['is_chrome' . (int) $match[1]] = true;
278
+			if (preg_match('~chrome[/]([0-9][0-9]?[.])~i', $_SERVER['HTTP_USER_AGENT'], $match) === 1) {
279
+							$this->_browsers['is_chrome' . (int) $match[1]] = true;
280
+			}
259 281
 		}
260 282
 
261 283
 		// or if Safari get its major version
262 284
 		if ($this->_browsers['is_safari'])
263 285
 		{
264
-			if (preg_match('~version/?(.*)safari.*~i', $_SERVER['HTTP_USER_AGENT'], $match) === 1)
265
-				$this->_browsers['is_safari' . (int) trim($match[1])] = true;
286
+			if (preg_match('~version/?(.*)safari.*~i', $_SERVER['HTTP_USER_AGENT'], $match) === 1) {
287
+							$this->_browsers['is_safari' . (int) trim($match[1])] = true;
288
+			}
266 289
 		}
267 290
 	}
268 291
 
@@ -291,8 +314,9 @@  discard block
 block discarded – undo
291 314
 			$this->_browsers['is_ie' . ((int) $trident_match[1] + 4)] = true;
292 315
 
293 316
 			// If trident is set, see the (if any) msie tag in the user agent matches ... if not its in some compatibility view
294
-			if (isset($msie_match[1]) && ($msie_match[1] < $trident_match[1] + 4))
295
-				$this->_browsers['is_ie_compat_view'] = true;
317
+			if (isset($msie_match[1]) && ($msie_match[1] < $trident_match[1] + 4)) {
318
+							$this->_browsers['is_ie_compat_view'] = true;
319
+			}
296 320
 		}
297 321
 
298 322
 		// Detect true IE6 and IE7 and not IE in compat mode.
@@ -326,8 +350,9 @@  discard block
 block discarded – undo
326 350
 	 */
327 351
 	private function setupFirefox()
328 352
 	{
329
-		if (preg_match('~(?:Firefox|Ice[wW]easel|IceCat|Shiretoko|Minefield)[\/ \(]([^ ;\)]+)~', $_SERVER['HTTP_USER_AGENT'], $match) === 1)
330
-			$this->_browsers['is_firefox' . (int) $match[1]] = true;
353
+		if (preg_match('~(?:Firefox|Ice[wW]easel|IceCat|Shiretoko|Minefield)[\/ \(]([^ ;\)]+)~', $_SERVER['HTTP_USER_AGENT'], $match) === 1) {
354
+					$this->_browsers['is_firefox' . (int) $match[1]] = true;
355
+		}
331 356
 	}
332 357
 
333 358
 	/**
@@ -338,11 +363,13 @@  discard block
 block discarded – undo
338 363
 	private function setupOpera()
339 364
 	{
340 365
 		// Opera 10+ uses the version tag at the end of the string
341
-		if (preg_match('~\sVersion/([0-9]+)\.[0-9]+(?:\s*|$)~', $_SERVER['HTTP_USER_AGENT'], $match))
342
-			$this->_browsers['is_opera' . (int) $match[1]] = true;
366
+		if (preg_match('~\sVersion/([0-9]+)\.[0-9]+(?:\s*|$)~', $_SERVER['HTTP_USER_AGENT'], $match)) {
367
+					$this->_browsers['is_opera' . (int) $match[1]] = true;
368
+		}
343 369
 		// Opera pre 10 is supposed to uses the Opera tag alone, as do some spoofers
344
-		elseif (preg_match('~Opera[ /]([0-9]+)(?!\\.[89])~', $_SERVER['HTTP_USER_AGENT'], $match))
345
-			$this->_browsers['is_opera' . (int) $match[1]] = true;
370
+		elseif (preg_match('~Opera[ /]([0-9]+)(?!\\.[89])~', $_SERVER['HTTP_USER_AGENT'], $match)) {
371
+					$this->_browsers['is_opera' . (int) $match[1]] = true;
372
+		}
346 373
 
347 374
 		// Needs size fix?
348 375
 		$this->_browsers['needs_size_fix'] = !empty($this->_browsers['is_opera6']);
@@ -353,8 +380,9 @@  discard block
 block discarded – undo
353 380
 	 */
354 381
 	private function setupEdge()
355 382
 	{
356
-		if (preg_match('~Edge[\/]([0-9][0-9]?[\.][0-9][0-9])~i', $_SERVER['HTTP_USER_AGENT'], $match) === 1)
357
-			$this->_browsers['is_edge' . (int) $match[1]] = true;
383
+		if (preg_match('~Edge[\/]([0-9][0-9]?[\.][0-9][0-9])~i', $_SERVER['HTTP_USER_AGENT'], $match) === 1) {
384
+					$this->_browsers['is_edge' . (int) $match[1]] = true;
385
+		}
358 386
 	}
359 387
 
360 388
 	/**
@@ -367,9 +395,9 @@  discard block
 block discarded – undo
367 395
 	{
368 396
 		global $context;
369 397
 
370
-		if ($this->_is_mobile)
371
-			$context['browser_body_id'] = 'mobile';
372
-		else
398
+		if ($this->_is_mobile) {
399
+					$context['browser_body_id'] = 'mobile';
400
+		} else
373 401
 		{
374 402
 			// add in any specific detection conversions here if you want a special body id e.g. 'is_opera9' => 'opera9'
375 403
 			$browser_priority = array(
Please login to merge, or discard this patch.
Sources/ManageRegistration.php 1 patch
Braces   +27 added lines, -19 removed lines patch added patch discarded remove patch
@@ -14,8 +14,9 @@  discard block
 block discarded – undo
14 14
  * @version 2.1 Beta 3
15 15
  */
16 16
 
17
-if (!defined('SMF'))
17
+if (!defined('SMF')) {
18 18
 	die('No direct access...');
19
+}
19 20
 
20 21
 /**
21 22
  * Entrance point for the registration center, it checks permissions and forwards
@@ -31,8 +32,9 @@  discard block
 block discarded – undo
31 32
 	global $context, $txt;
32 33
 
33 34
 	// Old templates might still request this.
34
-	if (isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'browse')
35
-		redirectexit('action=admin;area=viewmembers;sa=browse' . (isset($_REQUEST['type']) ? ';type=' . $_REQUEST['type'] : ''));
35
+	if (isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'browse') {
36
+			redirectexit('action=admin;area=viewmembers;sa=browse' . (isset($_REQUEST['type']) ? ';type=' . $_REQUEST['type'] : ''));
37
+	}
36 38
 
37 39
 	$subActions = array(
38 40
 		'register' => array('AdminRegister', 'moderate_forum'),
@@ -99,9 +101,10 @@  discard block
 block discarded – undo
99 101
 		checkSession();
100 102
 		validateToken('admin-regc');
101 103
 
102
-		foreach ($_POST as $key => $value)
103
-			if (!is_array($_POST[$key]))
104
+		foreach ($_POST as $key => $value) {
105
+					if (!is_array($_POST[$key]))
104 106
 				$_POST[$key] = htmltrim__recursive(str_replace(array("\n", "\r"), '', $_POST[$key]));
107
+		}
105 108
 
106 109
 		$regOptions = array(
107 110
 			'interface' => 'admin',
@@ -161,12 +164,13 @@  discard block
 block discarded – undo
161 164
 			)
162 165
 		);
163 166
 		$context['member_groups'] = array(0 => $txt['admin_register_group_none']);
164
-		while ($row = $smcFunc['db_fetch_assoc']($request))
165
-			$context['member_groups'][$row['id_group']] = $row['group_name'];
167
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
168
+					$context['member_groups'][$row['id_group']] = $row['group_name'];
169
+		}
166 170
 		$smcFunc['db_free_result']($request);
171
+	} else {
172
+			$context['member_groups'] = array();
167 173
 	}
168
-	else
169
-		$context['member_groups'] = array();
170 174
 
171 175
 	// Basic stuff.
172 176
 	$context['sub_template'] = 'admin_register';
@@ -207,8 +211,9 @@  discard block
 block discarded – undo
207 211
 		{
208 212
 			$context['editable_agreements']['.' . $lang['filename']] = $lang['name'];
209 213
 			// Are we editing this?
210
-			if (isset($_POST['agree_lang']) && $_POST['agree_lang'] == '.' . $lang['filename'])
211
-				$context['current_agreement'] = '.' . $lang['filename'];
214
+			if (isset($_POST['agree_lang']) && $_POST['agree_lang'] == '.' . $lang['filename']) {
215
+							$context['current_agreement'] = '.' . $lang['filename'];
216
+			}
212 217
 		}
213 218
 	}
214 219
 
@@ -223,10 +228,11 @@  discard block
 block discarded – undo
223 228
 
224 229
 		updateSettings(array('requireAgreement' => !empty($_POST['requireAgreement'])));
225 230
 
226
-		if ($bytes == strlen($to_write))
227
-			$context['saved_successful'] = true;
228
-		else
229
-			$context['could_not_save'] = true;
231
+		if ($bytes == strlen($to_write)) {
232
+					$context['saved_successful'] = true;
233
+		} else {
234
+					$context['could_not_save'] = true;
235
+		}
230 236
 	}
231 237
 
232 238
 	$context['agreement'] = file_exists($boarddir . '/agreement' . $context['current_agreement'] . '.txt') ? $smcFunc['htmlspecialchars'](file_get_contents($boarddir . '/agreement' . $context['current_agreement'] . '.txt')) : '';
@@ -310,8 +316,9 @@  discard block
 block discarded – undo
310 316
 
311 317
 	call_integration_hook('integrate_modify_registration_settings', array(&$config_vars));
312 318
 
313
-	if ($return_config)
314
-		return $config_vars;
319
+	if ($return_config) {
320
+			return $config_vars;
321
+	}
315 322
 
316 323
 	// Setup the template
317 324
 	$context['sub_template'] = 'show_settings';
@@ -322,8 +329,9 @@  discard block
 block discarded – undo
322 329
 		checkSession();
323 330
 
324 331
 		// Are there some contacts missing?
325
-		if (!empty($_POST['coppaAge']) && !empty($_POST['coppaType']) && empty($_POST['coppaPost']) && empty($_POST['coppaFax']))
326
-			fatal_lang_error('admin_setting_coppa_require_contact');
332
+		if (!empty($_POST['coppaAge']) && !empty($_POST['coppaType']) && empty($_POST['coppaPost']) && empty($_POST['coppaFax'])) {
333
+					fatal_lang_error('admin_setting_coppa_require_contact');
334
+		}
327 335
 
328 336
 		// Post needs to take into account line breaks.
329 337
 		$_POST['coppaPost'] = str_replace("\n", '<br>', empty($_POST['coppaPost']) ? '' : $_POST['coppaPost']);
Please login to merge, or discard this patch.
Sources/ManageBoards.php 2 patches
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -842,7 +842,7 @@
 block discarded – undo
842 842
 	require_once($sourcedir . '/Subs-Boards.php');
843 843
 	sortBoards($recycle_boards);
844 844
 
845
-        $recycle_boards = array('') + $recycle_boards;
845
+		$recycle_boards = array('') + $recycle_boards;
846 846
 
847 847
 	// Here and the board settings...
848 848
 	$config_vars = array(
Please login to merge, or discard this patch.
Braces   +145 added lines, -112 removed lines patch added patch discarded remove patch
@@ -13,8 +13,9 @@  discard block
 block discarded – undo
13 13
  * @version 2.1 Beta 3
14 14
  */
15 15
 
16
-if (!defined('SMF'))
16
+if (!defined('SMF')) {
17 17
 	die('No direct access...');
18
+}
18 19
 
19 20
 /**
20 21
  * The main dispatcher; doesn't do anything, just delegates.
@@ -92,18 +93,19 @@  discard block
 block discarded – undo
92 93
 		checkSession('get');
93 94
 		validateToken('admin-bm-' . (int) $_REQUEST['src_board'], 'request');
94 95
 
95
-		if ($_REQUEST['move_to'] === 'top')
96
-			$boardOptions = array(
96
+		if ($_REQUEST['move_to'] === 'top') {
97
+					$boardOptions = array(
97 98
 				'move_to' => $_REQUEST['move_to'],
98 99
 				'target_category' => (int) $_REQUEST['target_cat'],
99 100
 				'move_first_child' => true,
100 101
 			);
101
-		else
102
-			$boardOptions = array(
102
+		} else {
103
+					$boardOptions = array(
103 104
 				'move_to' => $_REQUEST['move_to'],
104 105
 				'target_board' => (int) $_REQUEST['target_board'],
105 106
 				'move_first_child' => true,
106 107
 			);
108
+		}
107 109
 		modifyBoard((int) $_REQUEST['src_board'], $boardOptions);
108 110
 	}
109 111
 
@@ -148,15 +150,16 @@  discard block
 block discarded – undo
148 150
 			$security = $context['session_var'] . '=' . $context['session_id'] . ';' . $context['admin-bm-' . $context['move_board'] . '_token_var'] . '=' . $context['admin-bm-' . $context['move_board'] . '_token'];
149 151
 			foreach ($boardList[$catid] as $boardid)
150 152
 			{
151
-				if (!isset($context['categories'][$catid]['move_link']))
152
-					$context['categories'][$catid]['move_link'] = array(
153
+				if (!isset($context['categories'][$catid]['move_link'])) {
154
+									$context['categories'][$catid]['move_link'] = array(
153 155
 						'child_level' => 0,
154 156
 						'label' => $txt['mboards_order_before'] . ' \'' . $smcFunc['htmlspecialchars']($boards[$boardid]['name']) . '\'',
155 157
 						'href' => $scripturl . '?action=admin;area=manageboards;sa=move;src_board=' . $context['move_board'] . ';target_board=' . $boardid . ';move_to=before;' . $security,
156 158
 					);
159
+				}
157 160
 
158
-				if (!$context['categories'][$catid]['boards'][$boardid]['move'])
159
-				$context['categories'][$catid]['boards'][$boardid]['move_links'] = array(
161
+				if (!$context['categories'][$catid]['boards'][$boardid]['move']) {
162
+								$context['categories'][$catid]['boards'][$boardid]['move_links'] = array(
160 163
 					array(
161 164
 						'child_level' => $boards[$boardid]['level'],
162 165
 						'label' => $txt['mboards_order_after'] . '\'' . $smcFunc['htmlspecialchars']($boards[$boardid]['name']) . '\'',
@@ -170,34 +173,39 @@  discard block
 block discarded – undo
170 173
 						'class' => 'here',
171 174
 					),
172 175
 				);
176
+				}
173 177
 
174 178
 				$difference = $boards[$boardid]['level'] - $prev_child_level;
175
-				if ($difference == 1)
176
-					array_push($stack, !empty($context['categories'][$catid]['boards'][$prev_board]['move_links']) ? array_shift($context['categories'][$catid]['boards'][$prev_board]['move_links']) : null);
177
-				elseif ($difference < 0)
179
+				if ($difference == 1) {
180
+									array_push($stack, !empty($context['categories'][$catid]['boards'][$prev_board]['move_links']) ? array_shift($context['categories'][$catid]['boards'][$prev_board]['move_links']) : null);
181
+				} elseif ($difference < 0)
178 182
 				{
179
-					if (empty($context['categories'][$catid]['boards'][$prev_board]['move_links']))
180
-						$context['categories'][$catid]['boards'][$prev_board]['move_links'] = array();
181
-					for ($i = 0; $i < -$difference; $i++)
182
-						if (($temp = array_pop($stack)) != null)
183
+					if (empty($context['categories'][$catid]['boards'][$prev_board]['move_links'])) {
184
+											$context['categories'][$catid]['boards'][$prev_board]['move_links'] = array();
185
+					}
186
+					for ($i = 0; $i < -$difference; $i++) {
187
+											if (($temp = array_pop($stack)) != null)
183 188
 							array_unshift($context['categories'][$catid]['boards'][$prev_board]['move_links'], $temp);
189
+					}
184 190
 				}
185 191
 
186 192
 				$prev_board = $boardid;
187 193
 				$prev_child_level = $boards[$boardid]['level'];
188 194
 
189 195
 			}
190
-			if (!empty($stack) && !empty($context['categories'][$catid]['boards'][$prev_board]['move_links']))
191
-				$context['categories'][$catid]['boards'][$prev_board]['move_links'] = array_merge($stack, $context['categories'][$catid]['boards'][$prev_board]['move_links']);
192
-			elseif (!empty($stack))
193
-				$context['categories'][$catid]['boards'][$prev_board]['move_links'] = $stack;
196
+			if (!empty($stack) && !empty($context['categories'][$catid]['boards'][$prev_board]['move_links'])) {
197
+							$context['categories'][$catid]['boards'][$prev_board]['move_links'] = array_merge($stack, $context['categories'][$catid]['boards'][$prev_board]['move_links']);
198
+			} elseif (!empty($stack)) {
199
+							$context['categories'][$catid]['boards'][$prev_board]['move_links'] = $stack;
200
+			}
194 201
 
195
-			if (empty($boardList[$catid]))
196
-				$context['categories'][$catid]['move_link'] = array(
202
+			if (empty($boardList[$catid])) {
203
+							$context['categories'][$catid]['move_link'] = array(
197 204
 					'child_level' => 0,
198 205
 					'label' => $txt['mboards_order_before'] . ' \'' . $smcFunc['htmlspecialchars']($tree['node']['name']) . '\'',
199 206
 					'href' => $scripturl . '?action=admin;area=manageboards;sa=move;src_board=' . $context['move_board'] . ';target_cat=' . $catid . ';move_to=top;' . $security,
200 207
 				);
208
+			}
201 209
 		}
202 210
 	}
203 211
 
@@ -253,9 +261,9 @@  discard block
 block discarded – undo
253 261
 		);
254 262
 	}
255 263
 	// Category doesn't exist, man... sorry.
256
-	elseif (!isset($cat_tree[$_REQUEST['cat']]))
257
-		redirectexit('action=admin;area=manageboards');
258
-	else
264
+	elseif (!isset($cat_tree[$_REQUEST['cat']])) {
265
+			redirectexit('action=admin;area=manageboards');
266
+	} else
259 267
 	{
260 268
 		$context['category'] = array(
261 269
 			'id' => $_REQUEST['cat'],
@@ -267,30 +275,31 @@  discard block
 block discarded – undo
267 275
 			'is_empty' => empty($cat_tree[$_REQUEST['cat']]['children'])
268 276
 		);
269 277
 
270
-		foreach ($boardList[$_REQUEST['cat']] as $child_board)
271
-			$context['category']['children'][] = str_repeat('-', $boards[$child_board]['level']) . ' ' . $boards[$child_board]['name'];
278
+		foreach ($boardList[$_REQUEST['cat']] as $child_board) {
279
+					$context['category']['children'][] = str_repeat('-', $boards[$child_board]['level']) . ' ' . $boards[$child_board]['name'];
280
+		}
272 281
 	}
273 282
 
274 283
 	$prevCat = 0;
275 284
 	foreach ($cat_tree as $catid => $tree)
276 285
 	{
277
-		if ($catid == $_REQUEST['cat'] && $prevCat > 0)
278
-			$context['category_order'][$prevCat]['selected'] = true;
279
-		elseif ($catid != $_REQUEST['cat'])
280
-			$context['category_order'][$catid] = array(
286
+		if ($catid == $_REQUEST['cat'] && $prevCat > 0) {
287
+					$context['category_order'][$prevCat]['selected'] = true;
288
+		} elseif ($catid != $_REQUEST['cat']) {
289
+					$context['category_order'][$catid] = array(
281 290
 				'id' => $catid,
282 291
 				'name' => $txt['mboards_order_after'] . $tree['node']['name'],
283 292
 				'selected' => false,
284 293
 				'true_name' => $tree['node']['name']
285 294
 			);
295
+		}
286 296
 		$prevCat = $catid;
287 297
 	}
288 298
 	if (!isset($_REQUEST['delete']))
289 299
 	{
290 300
 		$context['sub_template'] = 'modify_category';
291 301
 		$context['page_title'] = $_REQUEST['sa'] == 'newcat' ? $txt['mboards_new_cat_name'] : $txt['catEdit'];
292
-	}
293
-	else
302
+	} else
294 303
 	{
295 304
 		$context['sub_template'] = 'confirm_category_delete';
296 305
 		$context['page_title'] = $txt['mboards_delete_cat'];
@@ -327,8 +336,9 @@  discard block
 block discarded – undo
327 336
 	{
328 337
 		$catOptions = array();
329 338
 
330
-		if (isset($_POST['cat_order']))
331
-			$catOptions['move_after'] = (int) $_POST['cat_order'];
339
+		if (isset($_POST['cat_order'])) {
340
+					$catOptions['move_after'] = (int) $_POST['cat_order'];
341
+		}
332 342
 
333 343
 		// Change "This & That" to "This &amp; That" but don't change "&cent" to "&amp;cent;"...
334 344
 		$catOptions['cat_name'] = parse_bbc($smcFunc['htmlspecialchars']($_POST['cat_name']), false, '', $context['description_allowed_tags']);
@@ -336,10 +346,11 @@  discard block
 block discarded – undo
336 346
 
337 347
 		$catOptions['is_collapsible'] = isset($_POST['collapse']);
338 348
 
339
-		if (isset($_POST['add']))
340
-			createCategory($catOptions);
341
-		else
342
-			modifyCategory($_POST['cat'], $catOptions);
349
+		if (isset($_POST['add'])) {
350
+					createCategory($catOptions);
351
+		} else {
352
+					modifyCategory($_POST['cat'], $catOptions);
353
+		}
343 354
 	}
344 355
 	// If they want to delete - first give them confirmation.
345 356
 	elseif (isset($_POST['delete']) && !isset($_POST['confirmation']) && !isset($_POST['empty']))
@@ -353,13 +364,14 @@  discard block
 block discarded – undo
353 364
 		// First off - check if we are moving all the current boards first - before we start deleting!
354 365
 		if (isset($_POST['delete_action']) && $_POST['delete_action'] == 1)
355 366
 		{
356
-			if (empty($_POST['cat_to']))
357
-				fatal_lang_error('mboards_delete_error');
367
+			if (empty($_POST['cat_to'])) {
368
+							fatal_lang_error('mboards_delete_error');
369
+			}
358 370
 
359 371
 			deleteCategories(array($_POST['cat']), (int) $_POST['cat_to']);
372
+		} else {
373
+					deleteCategories(array($_POST['cat']));
360 374
 		}
361
-		else
362
-			deleteCategories(array($_POST['cat']));
363 375
 	}
364 376
 
365 377
 	redirectexit('action=admin;area=manageboards');
@@ -404,8 +416,9 @@  discard block
 block discarded – undo
404 416
 	if ($_REQUEST['sa'] == 'newboard')
405 417
 	{
406 418
 		// Category doesn't exist, man... sorry.
407
-		if (empty($_REQUEST['cat']))
408
-			redirectexit('action=admin;area=manageboards');
419
+		if (empty($_REQUEST['cat'])) {
420
+					redirectexit('action=admin;area=manageboards');
421
+		}
409 422
 
410 423
 		// Some things that need to be setup for a new board.
411 424
 		$curBoard = array(
@@ -429,8 +442,7 @@  discard block
 block discarded – undo
429 442
 			'category' => (int) $_REQUEST['cat'],
430 443
 			'no_children' => true,
431 444
 		);
432
-	}
433
-	else
445
+	} else
434 446
 	{
435 447
 		// Just some easy shortcuts.
436 448
 		$curBoard = &$boards[$_REQUEST['boardid']];
@@ -478,8 +490,9 @@  discard block
 block discarded – undo
478 490
 	);
479 491
 	while ($row = $smcFunc['db_fetch_assoc']($request))
480 492
 	{
481
-		if ($_REQUEST['sa'] == 'newboard' && $row['min_posts'] == -1)
482
-			$curBoard['member_groups'][] = $row['id_group'];
493
+		if ($_REQUEST['sa'] == 'newboard' && $row['min_posts'] == -1) {
494
+					$curBoard['member_groups'][] = $row['id_group'];
495
+		}
483 496
 
484 497
 		$context['groups'][(int) $row['id_group']] = array(
485 498
 			'id' => $row['id_group'],
@@ -492,8 +505,9 @@  discard block
 block discarded – undo
492 505
 	$smcFunc['db_free_result']($request);
493 506
 
494 507
 	// Category doesn't exist, man... sorry.
495
-	if (!isset($boardList[$curBoard['category']]))
496
-		redirectexit('action=admin;area=manageboards');
508
+	if (!isset($boardList[$curBoard['category']])) {
509
+			redirectexit('action=admin;area=manageboards');
510
+	}
497 511
 
498 512
 	foreach ($boardList[$curBoard['category']] as $boardid)
499 513
 	{
@@ -507,8 +521,7 @@  discard block
 block discarded – undo
507 521
 				'is_child' => false,
508 522
 				'selected' => true
509 523
 			);
510
-		}
511
-		else
524
+		} else
512 525
 		{
513 526
 			$context['board_order'][] = array(
514 527
 				'id' => $boardid,
@@ -525,19 +538,21 @@  discard block
 block discarded – undo
525 538
 		$context['can_move_children'] = false;
526 539
 		$context['children'] = $boards[$_REQUEST['boardid']]['tree']['children'];
527 540
 
528
-		foreach ($context['board_order'] as $lBoard)
529
-			if ($lBoard['is_child'] == false && $lBoard['selected'] == false)
541
+		foreach ($context['board_order'] as $lBoard) {
542
+					if ($lBoard['is_child'] == false && $lBoard['selected'] == false)
530 543
 				$context['can_move_children'] = true;
544
+		}
531 545
 	}
532 546
 
533 547
 	// Get other available categories.
534 548
 	$context['categories'] = array();
535
-	foreach ($cat_tree as $catID => $tree)
536
-		$context['categories'][] = array(
549
+	foreach ($cat_tree as $catID => $tree) {
550
+			$context['categories'][] = array(
537 551
 			'id' => $catID == $curBoard['category'] ? 0 : $catID,
538 552
 			'name' => $tree['node']['name'],
539 553
 			'selected' => $catID == $curBoard['category']
540 554
 		);
555
+	}
541 556
 
542 557
 	$request = $smcFunc['db_query']('', '
543 558
 		SELECT mem.id_member, mem.real_name
@@ -549,14 +564,16 @@  discard block
 block discarded – undo
549 564
 		)
550 565
 	);
551 566
 	$context['board']['moderators'] = array();
552
-	while ($row = $smcFunc['db_fetch_assoc']($request))
553
-		$context['board']['moderators'][$row['id_member']] = $row['real_name'];
567
+	while ($row = $smcFunc['db_fetch_assoc']($request)) {
568
+			$context['board']['moderators'][$row['id_member']] = $row['real_name'];
569
+	}
554 570
 	$smcFunc['db_free_result']($request);
555 571
 
556 572
 	$context['board']['moderator_list'] = empty($context['board']['moderators']) ? '' : '&quot;' . implode('&quot;, &quot;', $context['board']['moderators']) . '&quot;';
557 573
 
558
-	if (!empty($context['board']['moderators']))
559
-		list ($context['board']['last_moderator_id']) = array_slice(array_keys($context['board']['moderators']), -1);
574
+	if (!empty($context['board']['moderators'])) {
575
+			list ($context['board']['last_moderator_id']) = array_slice(array_keys($context['board']['moderators']), -1);
576
+	}
560 577
 
561 578
 	// Get all the groups assigned as moderators
562 579
 	$request = $smcFunc['db_query']('', '
@@ -568,14 +585,16 @@  discard block
 block discarded – undo
568 585
 		)
569 586
 	);
570 587
 	$context['board']['moderator_groups'] = array();
571
-	while ($row = $smcFunc['db_fetch_assoc']($request))
572
-		$context['board']['moderator_groups'][$row['id_group']] = $context['groups'][$row['id_group']]['name'];
588
+	while ($row = $smcFunc['db_fetch_assoc']($request)) {
589
+			$context['board']['moderator_groups'][$row['id_group']] = $context['groups'][$row['id_group']]['name'];
590
+	}
573 591
 	$smcFunc['db_free_result']($request);
574 592
 
575 593
 	$context['board']['moderator_groups_list'] = empty($context['board']['moderator_groups']) ? '' : '&quot;' . implode('&quot;, &qout;', $context['board']['moderator_groups']) . '&quot;';
576 594
 
577
-	if (!empty($context['board']['moderator_groups']))
578
-		list ($context['board']['last_moderator_group_id']) = array_slice(array_keys($context['board']['moderator_groups']), -1);
595
+	if (!empty($context['board']['moderator_groups'])) {
596
+			list ($context['board']['last_moderator_group_id']) = array_slice(array_keys($context['board']['moderator_groups']), -1);
597
+	}
579 598
 
580 599
 	// Get all the themes...
581 600
 	$request = $smcFunc['db_query']('', '
@@ -587,8 +606,9 @@  discard block
 block discarded – undo
587 606
 		)
588 607
 	);
589 608
 	$context['themes'] = array();
590
-	while ($row = $smcFunc['db_fetch_assoc']($request))
591
-		$context['themes'][] = $row;
609
+	while ($row = $smcFunc['db_fetch_assoc']($request)) {
610
+			$context['themes'][] = $row;
611
+	}
592 612
 	$smcFunc['db_free_result']($request);
593 613
 
594 614
 	if (!isset($_REQUEST['delete']))
@@ -596,8 +616,7 @@  discard block
 block discarded – undo
596 616
 		$context['sub_template'] = 'modify_board';
597 617
 		$context['page_title'] = $txt['boardsEdit'];
598 618
 		loadJavaScriptFile('suggest.js', array('defer' => false), 'smf_suggest');
599
-	}
600
-	else
619
+	} else
601 620
 	{
602 621
 		$context['sub_template'] = 'confirm_board_delete';
603 622
 		$context['page_title'] = $txt['mboards_delete_board'];
@@ -641,8 +660,9 @@  discard block
 block discarded – undo
641 660
 		// Change the boardorder of this board?
642 661
 		elseif (!empty($_POST['placement']) && !empty($_POST['board_order']))
643 662
 		{
644
-			if (!in_array($_POST['placement'], array('before', 'after', 'child')))
645
-				fatal_lang_error('mangled_post', false);
663
+			if (!in_array($_POST['placement'], array('before', 'after', 'child'))) {
664
+							fatal_lang_error('mangled_post', false);
665
+			}
646 666
 
647 667
 			$boardOptions['move_to'] = $_POST['placement'];
648 668
 			$boardOptions['target_board'] = (int) $_POST['board_order'];
@@ -655,13 +675,14 @@  discard block
 block discarded – undo
655 675
 		$boardOptions['access_groups'] = array();
656 676
 		$boardOptions['deny_groups'] = array();
657 677
 
658
-		if (!empty($_POST['groups']))
659
-			foreach ($_POST['groups'] as $group => $action)
678
+		if (!empty($_POST['groups'])) {
679
+					foreach ($_POST['groups'] as $group => $action)
660 680
 			{
661 681
 				if ($action == 'allow')
662 682
 					$boardOptions['access_groups'][] = (int) $group;
663
-				elseif ($action == 'deny')
664
-					$boardOptions['deny_groups'][] = (int) $group;
683
+		} elseif ($action == 'deny') {
684
+									$boardOptions['deny_groups'][] = (int) $group;
685
+				}
665 686
 			}
666 687
 
667 688
 		// People with manage-boards are special.
@@ -673,8 +694,9 @@  discard block
 block discarded – undo
673 694
 		// Secondly, make sure those with super cow powers (like apt-get, or in this case manage boards) are upgraded.
674 695
 		$boardOptions['access_groups'] = array_unique(array_merge($boardOptions['access_groups'], $board_managers));
675 696
 
676
-		if (strlen(implode(',', $boardOptions['access_groups'])) > 255 || strlen(implode(',', $boardOptions['deny_groups'])) > 255)
677
-			fatal_lang_error('too_many_groups', false);
697
+		if (strlen(implode(',', $boardOptions['access_groups'])) > 255 || strlen(implode(',', $boardOptions['deny_groups'])) > 255) {
698
+					fatal_lang_error('too_many_groups', false);
699
+		}
678 700
 
679 701
 		// Do not allow HTML tags. Parse the string.
680 702
 		$boardOptions['board_name'] = parse_bbc($smcFunc['htmlspecialchars']($_POST['board_name']), false, '', $context['description_allowed_tags']);
@@ -685,8 +707,9 @@  discard block
 block discarded – undo
685 707
 		if (isset($_POST['moderator_list']) && is_array($_POST['moderator_list']))
686 708
 		{
687 709
 			$moderators = array();
688
-			foreach ($_POST['moderator_list'] as $moderator)
689
-				$moderators[(int) $moderator] = (int) $moderator;
710
+			foreach ($_POST['moderator_list'] as $moderator) {
711
+							$moderators[(int) $moderator] = (int) $moderator;
712
+			}
690 713
 			$boardOptions['moderators'] = $moderators;
691 714
 		}
692 715
 
@@ -695,8 +718,9 @@  discard block
 block discarded – undo
695 718
 		if (isset($_POST['moderator_group_list']) && is_array($_POST['moderator_group_list']))
696 719
 		{
697 720
 			$moderator_groups = array();
698
-			foreach ($_POST['moderator_group_list'] as $moderator_group)
699
-				$moderator_groups[(int) $moderator_group] = (int) $moderator_group;
721
+			foreach ($_POST['moderator_group_list'] as $moderator_group) {
722
+							$moderator_groups[(int) $moderator_group] = (int) $moderator_group;
723
+			}
700 724
 			$boardOptions['moderator_groups'] = $moderator_groups;
701 725
 		}
702 726
 
@@ -722,56 +746,62 @@  discard block
 block discarded – undo
722 746
 			$smcFunc['db_free_result']($request);
723 747
 
724 748
 			// If we're turning redirection on check the board doesn't have posts in it - if it does don't make it a redirection board.
725
-			if ($boardOptions['redirect'] && empty($oldRedirect) && $numPosts)
726
-				unset($boardOptions['redirect']);
749
+			if ($boardOptions['redirect'] && empty($oldRedirect) && $numPosts) {
750
+							unset($boardOptions['redirect']);
751
+			}
727 752
 			// Reset the redirection count when switching on/off.
728
-			elseif (empty($boardOptions['redirect']) != empty($oldRedirect))
729
-				$boardOptions['num_posts'] = 0;
753
+			elseif (empty($boardOptions['redirect']) != empty($oldRedirect)) {
754
+							$boardOptions['num_posts'] = 0;
755
+			}
730 756
 			// Resetting the count?
731
-			elseif ($boardOptions['redirect'] && !empty($_POST['reset_redirect']))
732
-				$boardOptions['num_posts'] = 0;
757
+			elseif ($boardOptions['redirect'] && !empty($_POST['reset_redirect'])) {
758
+							$boardOptions['num_posts'] = 0;
759
+			}
733 760
 		}
734 761
 
735 762
 		// Create a new board...
736 763
 		if (isset($_POST['add']))
737 764
 		{
738 765
 			// New boards by default go to the bottom of the category.
739
-			if (empty($_POST['new_cat']))
740
-				$boardOptions['target_category'] = (int) $_POST['cur_cat'];
741
-			if (!isset($boardOptions['move_to']))
742
-				$boardOptions['move_to'] = 'bottom';
766
+			if (empty($_POST['new_cat'])) {
767
+							$boardOptions['target_category'] = (int) $_POST['cur_cat'];
768
+			}
769
+			if (!isset($boardOptions['move_to'])) {
770
+							$boardOptions['move_to'] = 'bottom';
771
+			}
743 772
 
744 773
 			createBoard($boardOptions);
745 774
 		}
746 775
 
747 776
 		// ...or update an existing board.
748
-		else
749
-			modifyBoard($_POST['boardid'], $boardOptions);
750
-	}
751
-	elseif (isset($_POST['delete']) && !isset($_POST['confirmation']) && !isset($_POST['no_children']))
777
+		else {
778
+					modifyBoard($_POST['boardid'], $boardOptions);
779
+		}
780
+	} elseif (isset($_POST['delete']) && !isset($_POST['confirmation']) && !isset($_POST['no_children']))
752 781
 	{
753 782
 		EditBoard();
754 783
 		return;
755
-	}
756
-	elseif (isset($_POST['delete']))
784
+	} elseif (isset($_POST['delete']))
757 785
 	{
758 786
 		// First off - check if we are moving all the current child boards first - before we start deleting!
759 787
 		if (isset($_POST['delete_action']) && $_POST['delete_action'] == 1)
760 788
 		{
761
-			if (empty($_POST['board_to']))
762
-				fatal_lang_error('mboards_delete_board_error');
789
+			if (empty($_POST['board_to'])) {
790
+							fatal_lang_error('mboards_delete_board_error');
791
+			}
763 792
 
764 793
 			deleteBoards(array($_POST['boardid']), (int) $_POST['board_to']);
794
+		} else {
795
+					deleteBoards(array($_POST['boardid']), 0);
765 796
 		}
766
-		else
767
-			deleteBoards(array($_POST['boardid']), 0);
768 797
 	}
769 798
 
770
-	if (isset($_REQUEST['rid']) && $_REQUEST['rid'] == 'permissions')
771
-		redirectexit('action=admin;area=permissions;sa=board;' . $context['session_var'] . '=' . $context['session_id']);
772
-	else
773
-		redirectexit('action=admin;area=manageboards');
774
-}
799
+	if (isset($_REQUEST['rid']) && $_REQUEST['rid'] == 'permissions') {
800
+			redirectexit('action=admin;area=permissions;sa=board;' . $context['session_var'] . '=' . $context['session_id']);
801
+	} else {
802
+			redirectexit('action=admin;area=manageboards');
803
+	}
804
+	}
775 805
 
776 806
 /**
777 807
  * Used to retrieve data for modifying a board category
@@ -808,8 +838,9 @@  discard block
 block discarded – undo
808 838
 	$smcFunc['db_free_result']($request);
809 839
 
810 840
 	// This would probably never happen, but just to be sure.
811
-	if ($cat .= $allowed_sa[1])
812
-		die(str_replace(',', ' to', $cat));
841
+	if ($cat .= $allowed_sa[1]) {
842
+			die(str_replace(',', ' to', $cat));
843
+	}
813 844
 
814 845
 	redirectexit();
815 846
 }
@@ -835,8 +866,9 @@  discard block
 block discarded – undo
835 866
 			'empty_string' => '',
836 867
 		)
837 868
 	);
838
-	while ($row = $smcFunc['db_fetch_assoc']($request))
839
-		$recycle_boards[$row['id_board']] = $row['cat_name'] . ' - ' . $row['board_name'];
869
+	while ($row = $smcFunc['db_fetch_assoc']($request)) {
870
+			$recycle_boards[$row['id_board']] = $row['cat_name'] . ' - ' . $row['board_name'];
871
+	}
840 872
 	$smcFunc['db_free_result']($request);
841 873
 
842 874
 	require_once($sourcedir . '/Subs-Boards.php');
@@ -860,8 +892,9 @@  discard block
 block discarded – undo
860 892
 
861 893
 	call_integration_hook('integrate_modify_board_settings', array(&$config_vars));
862 894
 
863
-	if ($return_config)
864
-		return $config_vars;
895
+	if ($return_config) {
896
+			return $config_vars;
897
+	}
865 898
 
866 899
 	// Needed for the settings template.
867 900
 	require_once($sourcedir . '/ManageServer.php');
Please login to merge, or discard this patch.
Sources/ManageMaintenance.php 2 patches
Indentation   -1 removed lines patch added patch discarded remove patch
@@ -694,7 +694,6 @@
 block discarded – undo
694 694
  * It shows as the maintain_forum admin area.
695 695
  * It is accessed from ?action=admin;area=maintain;sa=database;activity=optimize.
696 696
  * It also updates the optimize scheduled task such that the tables are not automatically optimized again too soon.
697
-
698 697
  * @uses the optimize sub template
699 698
  */
700 699
 function OptimizeTables()
Please login to merge, or discard this patch.
Braces   +266 added lines, -197 removed lines patch added patch discarded remove patch
@@ -13,8 +13,9 @@  discard block
 block discarded – undo
13 13
  * @version 2.1 Beta 3
14 14
  */
15 15
 
16
-if (!defined('SMF'))
16
+if (!defined('SMF')) {
17 17
 	die('No direct access...');
18
+}
18 19
 
19 20
 /**
20 21
  * Main dispatcher, the maintenance access point.
@@ -96,14 +97,16 @@  discard block
 block discarded – undo
96 97
 	call_integration_hook('integrate_manage_maintenance', array(&$subActions));
97 98
 
98 99
 	// Yep, sub-action time!
99
-	if (isset($_REQUEST['sa']) && isset($subActions[$_REQUEST['sa']]))
100
-		$subAction = $_REQUEST['sa'];
101
-	else
102
-		$subAction = 'routine';
100
+	if (isset($_REQUEST['sa']) && isset($subActions[$_REQUEST['sa']])) {
101
+			$subAction = $_REQUEST['sa'];
102
+	} else {
103
+			$subAction = 'routine';
104
+	}
103 105
 
104 106
 	// Doing something special?
105
-	if (isset($_REQUEST['activity']) && isset($subActions[$subAction]['activities'][$_REQUEST['activity']]))
106
-		$activity = $_REQUEST['activity'];
107
+	if (isset($_REQUEST['activity']) && isset($subActions[$subAction]['activities'][$_REQUEST['activity']])) {
108
+			$activity = $_REQUEST['activity'];
109
+	}
107 110
 
108 111
 	// Set a few things.
109 112
 	$context['page_title'] = $txt['maintain_title'];
@@ -114,12 +117,14 @@  discard block
 block discarded – undo
114 117
 	call_helper($subActions[$subAction]['function']);
115 118
 
116 119
 	// Any special activity?
117
-	if (isset($activity))
118
-		call_helper($subActions[$subAction]['activities'][$activity]);
120
+	if (isset($activity)) {
121
+			call_helper($subActions[$subAction]['activities'][$activity]);
122
+	}
119 123
 
120 124
 	//converted to UTF-8? show a small maintenance info
121
-	if (isset($_GET['done']) && $_GET['done'] == 'convertutf8')
122
-		$context['maintenance_finished'] = $txt['utf8_title'];
125
+	if (isset($_GET['done']) && $_GET['done'] == 'convertutf8') {
126
+			$context['maintenance_finished'] = $txt['utf8_title'];
127
+	}
123 128
 
124 129
 	// Create a maintenance token.  Kinda hard to do it any other way.
125 130
 	createToken('admin-maint');
@@ -141,19 +146,22 @@  discard block
 block discarded – undo
141 146
 		db_extend('packages');
142 147
 
143 148
 		$colData = $smcFunc['db_list_columns']('{db_prefix}messages', true);
144
-		foreach ($colData as $column)
145
-			if ($column['name'] == 'body')
149
+		foreach ($colData as $column) {
150
+					if ($column['name'] == 'body')
146 151
 				$body_type = $column['type'];
152
+		}
147 153
 
148 154
 		$context['convert_to'] = $body_type == 'text' ? 'mediumtext' : 'text';
149 155
 		$context['convert_to_suggest'] = ($body_type != 'text' && !empty($modSettings['max_messageLength']) && $modSettings['max_messageLength'] < 65536);
150 156
 	}
151 157
 
152
-	if (isset($_GET['done']) && $_GET['done'] == 'convertutf8')
153
-		$context['maintenance_finished'] = $txt['utf8_title'];
154
-	if (isset($_GET['done']) && $_GET['done'] == 'convertentities')
155
-		$context['maintenance_finished'] = $txt['entity_convert_title'];
156
-}
158
+	if (isset($_GET['done']) && $_GET['done'] == 'convertutf8') {
159
+			$context['maintenance_finished'] = $txt['utf8_title'];
160
+	}
161
+	if (isset($_GET['done']) && $_GET['done'] == 'convertentities') {
162
+			$context['maintenance_finished'] = $txt['entity_convert_title'];
163
+	}
164
+	}
157 165
 
158 166
 /**
159 167
  * Supporting function for the routine maintenance area.
@@ -162,9 +170,10 @@  discard block
 block discarded – undo
162 170
 {
163 171
 	global $context, $txt;
164 172
 
165
-	if (isset($_GET['done']) && $_GET['done'] == 'recount')
166
-		$context['maintenance_finished'] = $txt['maintain_recount'];
167
-}
173
+	if (isset($_GET['done']) && $_GET['done'] == 'recount') {
174
+			$context['maintenance_finished'] = $txt['maintain_recount'];
175
+	}
176
+	}
168 177
 
169 178
 /**
170 179
  * Supporting function for the members maintenance area.
@@ -195,8 +204,9 @@  discard block
 block discarded – undo
195 204
 	}
196 205
 	$smcFunc['db_free_result']($result);
197 206
 
198
-	if (isset($_GET['done']) && $_GET['done'] == 'recountposts')
199
-		$context['maintenance_finished'] = $txt['maintain_recountposts'];
207
+	if (isset($_GET['done']) && $_GET['done'] == 'recountposts') {
208
+			$context['maintenance_finished'] = $txt['maintain_recountposts'];
209
+	}
200 210
 
201 211
 	loadJavaScriptFile('suggest.js', array('defer' => false), 'smf_suggest');
202 212
 }
@@ -222,11 +232,12 @@  discard block
 block discarded – undo
222 232
 	$context['categories'] = array();
223 233
 	while ($row = $smcFunc['db_fetch_assoc']($result))
224 234
 	{
225
-		if (!isset($context['categories'][$row['id_cat']]))
226
-			$context['categories'][$row['id_cat']] = array(
235
+		if (!isset($context['categories'][$row['id_cat']])) {
236
+					$context['categories'][$row['id_cat']] = array(
227 237
 				'name' => $row['cat_name'],
228 238
 				'boards' => array()
229 239
 			);
240
+		}
230 241
 
231 242
 		$context['categories'][$row['id_cat']]['boards'][$row['id_board']] = array(
232 243
 			'id' => $row['id_board'],
@@ -239,11 +250,12 @@  discard block
 block discarded – undo
239 250
 	require_once($sourcedir . '/Subs-Boards.php');
240 251
 	sortCategories($context['categories']);
241 252
 
242
-	if (isset($_GET['done']) && $_GET['done'] == 'purgeold')
243
-		$context['maintenance_finished'] = $txt['maintain_old'];
244
-	elseif (isset($_GET['done']) && $_GET['done'] == 'massmove')
245
-		$context['maintenance_finished'] = $txt['move_topics_maintenance'];
246
-}
253
+	if (isset($_GET['done']) && $_GET['done'] == 'purgeold') {
254
+			$context['maintenance_finished'] = $txt['maintain_old'];
255
+	} elseif (isset($_GET['done']) && $_GET['done'] == 'massmove') {
256
+			$context['maintenance_finished'] = $txt['move_topics_maintenance'];
257
+	}
258
+	}
247 259
 
248 260
 /**
249 261
  * Find and fix all errors on the forum.
@@ -351,15 +363,17 @@  discard block
 block discarded – undo
351 363
 	// Show me your badge!
352 364
 	isAllowedTo('admin_forum');
353 365
 
354
-	if ($db_type != 'mysql')
355
-		return;
366
+	if ($db_type != 'mysql') {
367
+			return;
368
+	}
356 369
 
357 370
 	db_extend('packages');
358 371
 
359 372
 	$colData = $smcFunc['db_list_columns']('{db_prefix}messages', true);
360
-	foreach ($colData as $column)
361
-		if ($column['name'] == 'body')
373
+	foreach ($colData as $column) {
374
+			if ($column['name'] == 'body')
362 375
 			$body_type = $column['type'];
376
+	}
363 377
 
364 378
 	$context['convert_to'] = $body_type == 'text' ? 'mediumtext' : 'text';
365 379
 
@@ -369,33 +383,36 @@  discard block
 block discarded – undo
369 383
 		validateToken('admin-maint');
370 384
 
371 385
 		// Make it longer so we can do their limit.
372
-		if ($body_type == 'text')
373
-			$smcFunc['db_change_column']('{db_prefix}messages', 'body', array('type' => 'mediumtext'));
386
+		if ($body_type == 'text') {
387
+					$smcFunc['db_change_column']('{db_prefix}messages', 'body', array('type' => 'mediumtext'));
388
+		}
374 389
 		// Shorten the column so we can have a bit (literally per record) less space occupied
375
-		else
376
-			$smcFunc['db_change_column']('{db_prefix}messages', 'body', array('type' => 'text'));
390
+		else {
391
+					$smcFunc['db_change_column']('{db_prefix}messages', 'body', array('type' => 'text'));
392
+		}
377 393
 
378 394
 		// 3rd party integrations may be interested in knowning about this.
379 395
 		call_integration_hook('integrate_convert_msgbody', array($body_type));
380 396
 
381 397
 		$colData = $smcFunc['db_list_columns']('{db_prefix}messages', true);
382
-		foreach ($colData as $column)
383
-			if ($column['name'] == 'body')
398
+		foreach ($colData as $column) {
399
+					if ($column['name'] == 'body')
384 400
 				$body_type = $column['type'];
401
+		}
385 402
 
386 403
 		$context['maintenance_finished'] = $txt[$context['convert_to'] . '_title'];
387 404
 		$context['convert_to'] = $body_type == 'text' ? 'mediumtext' : 'text';
388 405
 		$context['convert_to_suggest'] = ($body_type != 'text' && !empty($modSettings['max_messageLength']) && $modSettings['max_messageLength'] < 65536);
389 406
 
390 407
 		return;
391
-	}
392
-	elseif ($body_type != 'text' && (!isset($_POST['do_conversion']) || isset($_POST['cont'])))
408
+	} elseif ($body_type != 'text' && (!isset($_POST['do_conversion']) || isset($_POST['cont'])))
393 409
 	{
394 410
 		checkSession();
395
-		if (empty($_REQUEST['start']))
396
-			validateToken('admin-maint');
397
-		else
398
-			validateToken('admin-convertMsg');
411
+		if (empty($_REQUEST['start'])) {
412
+					validateToken('admin-maint');
413
+		} else {
414
+					validateToken('admin-convertMsg');
415
+		}
399 416
 
400 417
 		$context['page_title'] = $txt['not_done_title'];
401 418
 		$context['continue_post_data'] = '';
@@ -427,8 +444,9 @@  discard block
 block discarded – undo
427 444
 					'increment' => $increment - 1,
428 445
 				)
429 446
 			);
430
-			while ($row = $smcFunc['db_fetch_assoc']($request))
431
-				$id_msg_exceeding[] = $row['id_msg'];
447
+			while ($row = $smcFunc['db_fetch_assoc']($request)) {
448
+							$id_msg_exceeding[] = $row['id_msg'];
449
+			}
432 450
 			$smcFunc['db_free_result']($request);
433 451
 
434 452
 			$_REQUEST['start'] += $increment;
@@ -457,9 +475,9 @@  discard block
 block discarded – undo
457 475
 			{
458 476
 				$query_msg = array_slice($id_msg_exceeding, 0, 100);
459 477
 				$context['exceeding_messages_morethan'] = sprintf($txt['exceeding_messages_morethan'], count($id_msg_exceeding));
478
+			} else {
479
+							$query_msg = $id_msg_exceeding;
460 480
 			}
461
-			else
462
-				$query_msg = $id_msg_exceeding;
463 481
 
464 482
 			$context['exceeding_messages'] = array();
465 483
 			$request = $smcFunc['db_query']('', '
@@ -470,8 +488,9 @@  discard block
 block discarded – undo
470 488
 					'messages' => $query_msg,
471 489
 				)
472 490
 			);
473
-			while ($row = $smcFunc['db_fetch_assoc']($request))
474
-				$context['exceeding_messages'][] = '<a href="' . $scripturl . '?topic=' . $row['id_topic'] . '.msg' . $row['id_msg'] . '#msg' . $row['id_msg'] . '">' . $row['subject'] . '</a>';
491
+			while ($row = $smcFunc['db_fetch_assoc']($request)) {
492
+							$context['exceeding_messages'][] = '<a href="' . $scripturl . '?topic=' . $row['id_topic'] . '.msg' . $row['id_msg'] . '#msg' . $row['id_msg'] . '">' . $row['subject'] . '</a>';
493
+			}
475 494
 			$smcFunc['db_free_result']($request);
476 495
 		}
477 496
 	}
@@ -495,8 +514,9 @@  discard block
 block discarded – undo
495 514
 	isAllowedTo('admin_forum');
496 515
 
497 516
 	// Check to see if UTF-8 is currently the default character set.
498
-	if ($modSettings['global_character_set'] !== 'UTF-8' || !isset($db_character_set) || $db_character_set !== 'utf8')
499
-		fatal_lang_error('entity_convert_only_utf8');
517
+	if ($modSettings['global_character_set'] !== 'UTF-8' || !isset($db_character_set) || $db_character_set !== 'utf8') {
518
+			fatal_lang_error('entity_convert_only_utf8');
519
+	}
500 520
 
501 521
 	// Some starting values.
502 522
 	$context['table'] = empty($_REQUEST['table']) ? 0 : (int) $_REQUEST['table'];
@@ -558,8 +578,9 @@  discard block
 block discarded – undo
558 578
 		// Make sure we keep stuff unique!
559 579
 		$primary_keys = array();
560 580
 
561
-		if (function_exists('apache_reset_timeout'))
562
-			@apache_reset_timeout();
581
+		if (function_exists('apache_reset_timeout')) {
582
+					@apache_reset_timeout();
583
+		}
563 584
 
564 585
 		// Get a list of text columns.
565 586
 		$columns = array();
@@ -570,9 +591,10 @@  discard block
 block discarded – undo
570 591
 				'cur_table' => $cur_table,
571 592
 			)
572 593
 		);
573
-		while ($column_info = $smcFunc['db_fetch_assoc']($request))
574
-			if (strpos($column_info['Type'], 'text') !== false || strpos($column_info['Type'], 'char') !== false)
594
+		while ($column_info = $smcFunc['db_fetch_assoc']($request)) {
595
+					if (strpos($column_info['Type'], 'text') !== false || strpos($column_info['Type'], 'char') !== false)
575 596
 				$columns[] = strtolower($column_info['Field']);
597
+		}
576 598
 
577 599
 		// Get the column with the (first) primary key.
578 600
 		$request = $smcFunc['db_query']('', '
@@ -586,8 +608,9 @@  discard block
 block discarded – undo
586 608
 		{
587 609
 			if ($row['Key_name'] === 'PRIMARY')
588 610
 			{
589
-				if (empty($primary_key) || ($row['Seq_in_index'] == 1 && !in_array(strtolower($row['Column_name']), $columns)))
590
-					$primary_key = $row['Column_name'];
611
+				if (empty($primary_key) || ($row['Seq_in_index'] == 1 && !in_array(strtolower($row['Column_name']), $columns))) {
612
+									$primary_key = $row['Column_name'];
613
+				}
591 614
 
592 615
 				$primary_keys[] = $row['Column_name'];
593 616
 			}
@@ -596,8 +619,9 @@  discard block
 block discarded – undo
596 619
 
597 620
 		// No primary key, no glory.
598 621
 		// Same for columns. Just to be sure we've work to do!
599
-		if (empty($primary_key) || empty($columns))
600
-			continue;
622
+		if (empty($primary_key) || empty($columns)) {
623
+					continue;
624
+		}
601 625
 
602 626
 		// Get the maximum value for the primary key.
603 627
 		$request = $smcFunc['db_query']('', '
@@ -611,8 +635,9 @@  discard block
 block discarded – undo
611 635
 		list($max_value) = $smcFunc['db_fetch_row']($request);
612 636
 		$smcFunc['db_free_result']($request);
613 637
 
614
-		if (empty($max_value))
615
-			continue;
638
+		if (empty($max_value)) {
639
+					continue;
640
+		}
616 641
 
617 642
 		while ($context['start'] <= $max_value)
618 643
 		{
@@ -636,10 +661,11 @@  discard block
 block discarded – undo
636 661
 			{
637 662
 				$insertion_variables = array();
638 663
 				$changes = array();
639
-				foreach ($row as $column_name => $column_value)
640
-					if ($column_name !== $primary_key && strpos($column_value, '&#') !== false)
664
+				foreach ($row as $column_name => $column_value) {
665
+									if ($column_name !== $primary_key && strpos($column_value, '&#') !== false)
641 666
 					{
642 667
 						$changes[] = $column_name . ' = {string:changes_' . $column_name . '}';
668
+				}
643 669
 						$insertion_variables['changes_' . $column_name] = preg_replace_callback('~&#(\d{1,7}|x[0-9a-fA-F]{1,6});~', 'fixchar__callback', $column_value);
644 670
 					}
645 671
 
@@ -651,8 +677,8 @@  discard block
 block discarded – undo
651 677
 				}
652 678
 
653 679
 				// Update the row.
654
-				if (!empty($changes))
655
-					$smcFunc['db_query']('', '
680
+				if (!empty($changes)) {
681
+									$smcFunc['db_query']('', '
656 682
 						UPDATE {db_prefix}' . $cur_table . '
657 683
 						SET
658 684
 							' . implode(',
@@ -660,6 +686,7 @@  discard block
 block discarded – undo
660 686
 						WHERE ' . implode(' AND ', $where),
661 687
 						$insertion_variables
662 688
 					);
689
+				}
663 690
 			}
664 691
 			$smcFunc['db_free_result']($request);
665 692
 			$context['start'] += 500;
@@ -704,10 +731,11 @@  discard block
 block discarded – undo
704 731
 
705 732
 	checkSession('request');
706 733
 
707
-	if (!isset($_SESSION['optimized_tables']))
708
-		validateToken('admin-maint');
709
-	else
710
-		validateToken('admin-optimize', 'post', false);
734
+	if (!isset($_SESSION['optimized_tables'])) {
735
+			validateToken('admin-maint');
736
+	} else {
737
+			validateToken('admin-optimize', 'post', false);
738
+	}
711 739
 
712 740
 	ignore_user_abort(true);
713 741
 	db_extend();
@@ -723,13 +751,15 @@  discard block
 block discarded – undo
723 751
 	// Get a list of tables, as well as how many there are.
724 752
 	$temp_tables = $smcFunc['db_list_tables'](false, $real_prefix . '%');
725 753
 	$tables = array();
726
-	foreach ($temp_tables as $table)
727
-		$tables[] = array('table_name' => $table);
754
+	foreach ($temp_tables as $table) {
755
+			$tables[] = array('table_name' => $table);
756
+	}
728 757
 
729 758
 	// If there aren't any tables then I believe that would mean the world has exploded...
730 759
 	$context['num_tables'] = count($tables);
731
-	if ($context['num_tables'] == 0)
732
-		fatal_error('You appear to be running SMF in a flat file mode... fantastic!', false);
760
+	if ($context['num_tables'] == 0) {
761
+			fatal_error('You appear to be running SMF in a flat file mode... fantastic!', false);
762
+	}
733 763
 
734 764
 	$_REQUEST['start'] = empty($_REQUEST['start']) ? 0 : (int) $_REQUEST['start'];
735 765
 
@@ -740,8 +770,9 @@  discard block
 block discarded – undo
740 770
 	$_SESSION['optimized_tables'] = !empty($_SESSION['optimized_tables']) ? $_SESSION['optimized_tables'] : array();
741 771
 	for ($key = $_REQUEST['start']; $context['num_tables'] - 1; $key++)
742 772
 	{
743
-		if (empty($tables[$key]))
744
-			break;
773
+		if (empty($tables[$key])) {
774
+					break;
775
+		}
745 776
 
746 777
 		// Continue?
747 778
 		if (array_sum(explode(' ', microtime())) - array_sum(explode(' ', $time_start)) > 10)
@@ -755,8 +786,9 @@  discard block
 block discarded – undo
755 786
 			createToken('admin-optimize');
756 787
 			$context['continue_post_data'] = '<input type="hidden" name="' . $context['admin-optimize_token_var'] . '" value="' . $context['admin-optimize_token'] . '">';
757 788
 
758
-			if (function_exists('apache_reset_timeout'))
759
-				apache_reset_timeout();
789
+			if (function_exists('apache_reset_timeout')) {
790
+							apache_reset_timeout();
791
+			}
760 792
 
761 793
 			return;
762 794
 		}
@@ -764,11 +796,12 @@  discard block
 block discarded – undo
764 796
 		// Optimize the table!  We use backticks here because it might be a custom table.
765 797
 		$data_freed = $smcFunc['db_optimize_table']($tables[$key]['table_name']);
766 798
 
767
-		if ($data_freed > 0)
768
-			$_SESSION['optimized_tables'][] = array(
799
+		if ($data_freed > 0) {
800
+					$_SESSION['optimized_tables'][] = array(
769 801
 				'name' => $tables[$key]['table_name'],
770 802
 				'data_freed' => $data_freed,
771 803
 			);
804
+		}
772 805
 	}
773 806
 
774 807
 	// Number of tables, etc...
@@ -803,10 +836,11 @@  discard block
 block discarded – undo
803 836
 	checkSession('request');
804 837
 
805 838
 	// validate the request or the loop
806
-	if (!isset($_REQUEST['step']))
807
-		validateToken('admin-maint');
808
-	else
809
-		validateToken('admin-boardrecount');
839
+	if (!isset($_REQUEST['step'])) {
840
+			validateToken('admin-maint');
841
+	} else {
842
+			validateToken('admin-boardrecount');
843
+	}
810 844
 
811 845
 	$context['page_title'] = $txt['not_done_title'];
812 846
 	$context['continue_post_data'] = '';
@@ -827,8 +861,9 @@  discard block
 block discarded – undo
827 861
 	$smcFunc['db_free_result']($request);
828 862
 
829 863
 	$increment = min(max(50, ceil($max_topics / 4)), 2000);
830
-	if (empty($_REQUEST['start']))
831
-		$_REQUEST['start'] = 0;
864
+	if (empty($_REQUEST['start'])) {
865
+			$_REQUEST['start'] = 0;
866
+	}
832 867
 
833 868
 	$total_steps = 8;
834 869
 
@@ -855,8 +890,8 @@  discard block
 block discarded – undo
855 890
 					'max_id' => $_REQUEST['start'] + $increment,
856 891
 				)
857 892
 			);
858
-			while ($row = $smcFunc['db_fetch_assoc']($request))
859
-				$smcFunc['db_query']('', '
893
+			while ($row = $smcFunc['db_fetch_assoc']($request)) {
894
+							$smcFunc['db_query']('', '
860 895
 					UPDATE {db_prefix}topics
861 896
 					SET num_replies = {int:num_replies}
862 897
 					WHERE id_topic = {int:id_topic}',
@@ -865,6 +900,7 @@  discard block
 block discarded – undo
865 900
 						'id_topic' => $row['id_topic'],
866 901
 					)
867 902
 				);
903
+			}
868 904
 			$smcFunc['db_free_result']($request);
869 905
 
870 906
 			// Recount unapproved messages
@@ -883,8 +919,8 @@  discard block
 block discarded – undo
883 919
 					'max_id' => $_REQUEST['start'] + $increment,
884 920
 				)
885 921
 			);
886
-			while ($row = $smcFunc['db_fetch_assoc']($request))
887
-				$smcFunc['db_query']('', '
922
+			while ($row = $smcFunc['db_fetch_assoc']($request)) {
923
+							$smcFunc['db_query']('', '
888 924
 					UPDATE {db_prefix}topics
889 925
 					SET unapproved_posts = {int:unapproved_posts}
890 926
 					WHERE id_topic = {int:id_topic}',
@@ -893,6 +929,7 @@  discard block
 block discarded – undo
893 929
 						'id_topic' => $row['id_topic'],
894 930
 					)
895 931
 				);
932
+			}
896 933
 			$smcFunc['db_free_result']($request);
897 934
 
898 935
 			$_REQUEST['start'] += $increment;
@@ -915,8 +952,8 @@  discard block
 block discarded – undo
915 952
 	// Update the post count of each board.
916 953
 	if ($_REQUEST['step'] <= 1)
917 954
 	{
918
-		if (empty($_REQUEST['start']))
919
-			$smcFunc['db_query']('', '
955
+		if (empty($_REQUEST['start'])) {
956
+					$smcFunc['db_query']('', '
920 957
 				UPDATE {db_prefix}boards
921 958
 				SET num_posts = {int:num_posts}
922 959
 				WHERE redirect = {string:redirect}',
@@ -925,6 +962,7 @@  discard block
 block discarded – undo
925 962
 					'redirect' => '',
926 963
 				)
927 964
 			);
965
+		}
928 966
 
929 967
 		while ($_REQUEST['start'] < $max_topics)
930 968
 		{
@@ -941,8 +979,8 @@  discard block
 block discarded – undo
941 979
 					'is_approved' => 1,
942 980
 				)
943 981
 			);
944
-			while ($row = $smcFunc['db_fetch_assoc']($request))
945
-				$smcFunc['db_query']('', '
982
+			while ($row = $smcFunc['db_fetch_assoc']($request)) {
983
+							$smcFunc['db_query']('', '
946 984
 					UPDATE {db_prefix}boards
947 985
 					SET num_posts = num_posts + {int:real_num_posts}
948 986
 					WHERE id_board = {int:id_board}',
@@ -951,6 +989,7 @@  discard block
 block discarded – undo
951 989
 						'real_num_posts' => $row['real_num_posts'],
952 990
 					)
953 991
 				);
992
+			}
954 993
 			$smcFunc['db_free_result']($request);
955 994
 
956 995
 			$_REQUEST['start'] += $increment;
@@ -973,14 +1012,15 @@  discard block
 block discarded – undo
973 1012
 	// Update the topic count of each board.
974 1013
 	if ($_REQUEST['step'] <= 2)
975 1014
 	{
976
-		if (empty($_REQUEST['start']))
977
-			$smcFunc['db_query']('', '
1015
+		if (empty($_REQUEST['start'])) {
1016
+					$smcFunc['db_query']('', '
978 1017
 				UPDATE {db_prefix}boards
979 1018
 				SET num_topics = {int:num_topics}',
980 1019
 				array(
981 1020
 					'num_topics' => 0,
982 1021
 				)
983 1022
 			);
1023
+		}
984 1024
 
985 1025
 		while ($_REQUEST['start'] < $max_topics)
986 1026
 		{
@@ -997,8 +1037,8 @@  discard block
 block discarded – undo
997 1037
 					'id_topic_max' => $_REQUEST['start'] + $increment,
998 1038
 				)
999 1039
 			);
1000
-			while ($row = $smcFunc['db_fetch_assoc']($request))
1001
-				$smcFunc['db_query']('', '
1040
+			while ($row = $smcFunc['db_fetch_assoc']($request)) {
1041
+							$smcFunc['db_query']('', '
1002 1042
 					UPDATE {db_prefix}boards
1003 1043
 					SET num_topics = num_topics + {int:real_num_topics}
1004 1044
 					WHERE id_board = {int:id_board}',
@@ -1007,6 +1047,7 @@  discard block
 block discarded – undo
1007 1047
 						'real_num_topics' => $row['real_num_topics'],
1008 1048
 					)
1009 1049
 				);
1050
+			}
1010 1051
 			$smcFunc['db_free_result']($request);
1011 1052
 
1012 1053
 			$_REQUEST['start'] += $increment;
@@ -1029,14 +1070,15 @@  discard block
 block discarded – undo
1029 1070
 	// Update the unapproved post count of each board.
1030 1071
 	if ($_REQUEST['step'] <= 3)
1031 1072
 	{
1032
-		if (empty($_REQUEST['start']))
1033
-			$smcFunc['db_query']('', '
1073
+		if (empty($_REQUEST['start'])) {
1074
+					$smcFunc['db_query']('', '
1034 1075
 				UPDATE {db_prefix}boards
1035 1076
 				SET unapproved_posts = {int:unapproved_posts}',
1036 1077
 				array(
1037 1078
 					'unapproved_posts' => 0,
1038 1079
 				)
1039 1080
 			);
1081
+		}
1040 1082
 
1041 1083
 		while ($_REQUEST['start'] < $max_topics)
1042 1084
 		{
@@ -1053,8 +1095,8 @@  discard block
 block discarded – undo
1053 1095
 					'is_approved' => 0,
1054 1096
 				)
1055 1097
 			);
1056
-			while ($row = $smcFunc['db_fetch_assoc']($request))
1057
-				$smcFunc['db_query']('', '
1098
+			while ($row = $smcFunc['db_fetch_assoc']($request)) {
1099
+							$smcFunc['db_query']('', '
1058 1100
 					UPDATE {db_prefix}boards
1059 1101
 					SET unapproved_posts = unapproved_posts + {int:unapproved_posts}
1060 1102
 					WHERE id_board = {int:id_board}',
@@ -1063,6 +1105,7 @@  discard block
 block discarded – undo
1063 1105
 						'unapproved_posts' => $row['real_unapproved_posts'],
1064 1106
 					)
1065 1107
 				);
1108
+			}
1066 1109
 			$smcFunc['db_free_result']($request);
1067 1110
 
1068 1111
 			$_REQUEST['start'] += $increment;
@@ -1085,14 +1128,15 @@  discard block
 block discarded – undo
1085 1128
 	// Update the unapproved topic count of each board.
1086 1129
 	if ($_REQUEST['step'] <= 4)
1087 1130
 	{
1088
-		if (empty($_REQUEST['start']))
1089
-			$smcFunc['db_query']('', '
1131
+		if (empty($_REQUEST['start'])) {
1132
+					$smcFunc['db_query']('', '
1090 1133
 				UPDATE {db_prefix}boards
1091 1134
 				SET unapproved_topics = {int:unapproved_topics}',
1092 1135
 				array(
1093 1136
 					'unapproved_topics' => 0,
1094 1137
 				)
1095 1138
 			);
1139
+		}
1096 1140
 
1097 1141
 		while ($_REQUEST['start'] < $max_topics)
1098 1142
 		{
@@ -1109,8 +1153,8 @@  discard block
 block discarded – undo
1109 1153
 					'id_topic_max' => $_REQUEST['start'] + $increment,
1110 1154
 				)
1111 1155
 			);
1112
-			while ($row = $smcFunc['db_fetch_assoc']($request))
1113
-				$smcFunc['db_query']('', '
1156
+			while ($row = $smcFunc['db_fetch_assoc']($request)) {
1157
+							$smcFunc['db_query']('', '
1114 1158
 					UPDATE {db_prefix}boards
1115 1159
 					SET unapproved_topics = unapproved_topics + {int:real_unapproved_topics}
1116 1160
 					WHERE id_board = {int:id_board}',
@@ -1119,6 +1163,7 @@  discard block
 block discarded – undo
1119 1163
 						'real_unapproved_topics' => $row['real_unapproved_topics'],
1120 1164
 					)
1121 1165
 				);
1166
+			}
1122 1167
 			$smcFunc['db_free_result']($request);
1123 1168
 
1124 1169
 			$_REQUEST['start'] += $increment;
@@ -1152,8 +1197,9 @@  discard block
 block discarded – undo
1152 1197
 				'is_not_deleted' => 0,
1153 1198
 			)
1154 1199
 		);
1155
-		while ($row = $smcFunc['db_fetch_assoc']($request))
1156
-			updateMemberData($row['id_member'], array('instant_messages' => $row['real_num']));
1200
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
1201
+					updateMemberData($row['id_member'], array('instant_messages' => $row['real_num']));
1202
+		}
1157 1203
 		$smcFunc['db_free_result']($request);
1158 1204
 
1159 1205
 		$request = $smcFunc['db_query']('', '
@@ -1168,8 +1214,9 @@  discard block
 block discarded – undo
1168 1214
 				'is_not_read' => 0,
1169 1215
 			)
1170 1216
 		);
1171
-		while ($row = $smcFunc['db_fetch_assoc']($request))
1172
-			updateMemberData($row['id_member'], array('unread_messages' => $row['real_num']));
1217
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
1218
+					updateMemberData($row['id_member'], array('unread_messages' => $row['real_num']));
1219
+		}
1173 1220
 		$smcFunc['db_free_result']($request);
1174 1221
 
1175 1222
 		if (array_sum(explode(' ', microtime())) - array_sum(explode(' ', $time_start)) > 3)
@@ -1201,12 +1248,13 @@  discard block
 block discarded – undo
1201 1248
 				)
1202 1249
 			);
1203 1250
 			$boards = array();
1204
-			while ($row = $smcFunc['db_fetch_assoc']($request))
1205
-				$boards[$row['id_board']][] = $row['id_msg'];
1251
+			while ($row = $smcFunc['db_fetch_assoc']($request)) {
1252
+							$boards[$row['id_board']][] = $row['id_msg'];
1253
+			}
1206 1254
 			$smcFunc['db_free_result']($request);
1207 1255
 
1208
-			foreach ($boards as $board_id => $messages)
1209
-				$smcFunc['db_query']('', '
1256
+			foreach ($boards as $board_id => $messages) {
1257
+							$smcFunc['db_query']('', '
1210 1258
 					UPDATE {db_prefix}messages
1211 1259
 					SET id_board = {int:id_board}
1212 1260
 					WHERE id_msg IN ({array_int:id_msg_array})',
@@ -1215,6 +1263,7 @@  discard block
 block discarded – undo
1215 1263
 						'id_board' => $board_id,
1216 1264
 					)
1217 1265
 				);
1266
+			}
1218 1267
 
1219 1268
 			$_REQUEST['start'] += $increment;
1220 1269
 
@@ -1244,8 +1293,9 @@  discard block
 block discarded – undo
1244 1293
 		)
1245 1294
 	);
1246 1295
 	$realBoardCounts = array();
1247
-	while ($row = $smcFunc['db_fetch_assoc']($request))
1248
-		$realBoardCounts[$row['id_board']] = $row['local_last_msg'];
1296
+	while ($row = $smcFunc['db_fetch_assoc']($request)) {
1297
+			$realBoardCounts[$row['id_board']] = $row['local_last_msg'];
1298
+	}
1249 1299
 	$smcFunc['db_free_result']($request);
1250 1300
 
1251 1301
 	$request = $smcFunc['db_query']('', '
@@ -1265,18 +1315,20 @@  discard block
 block discarded – undo
1265 1315
 	krsort($resort_me);
1266 1316
 
1267 1317
 	$lastModifiedMsg = array();
1268
-	foreach ($resort_me as $rows)
1269
-		foreach ($rows as $row)
1318
+	foreach ($resort_me as $rows) {
1319
+			foreach ($rows as $row)
1270 1320
 		{
1271 1321
 			// The latest message is the latest of the current board and its children.
1272 1322
 			if (isset($lastModifiedMsg[$row['id_board']]))
1273 1323
 				$curLastModifiedMsg = max($row['local_last_msg'], $lastModifiedMsg[$row['id_board']]);
1274
-			else
1275
-				$curLastModifiedMsg = $row['local_last_msg'];
1324
+	}
1325
+			else {
1326
+							$curLastModifiedMsg = $row['local_last_msg'];
1327
+			}
1276 1328
 
1277 1329
 			// If what is and what should be the latest message differ, an update is necessary.
1278
-			if ($row['local_last_msg'] != $row['id_last_msg'] || $curLastModifiedMsg != $row['id_msg_updated'])
1279
-				$smcFunc['db_query']('', '
1330
+			if ($row['local_last_msg'] != $row['id_last_msg'] || $curLastModifiedMsg != $row['id_msg_updated']) {
1331
+							$smcFunc['db_query']('', '
1280 1332
 					UPDATE {db_prefix}boards
1281 1333
 					SET id_last_msg = {int:id_last_msg}, id_msg_updated = {int:id_msg_updated}
1282 1334
 					WHERE id_board = {int:id_board}',
@@ -1286,12 +1338,14 @@  discard block
 block discarded – undo
1286 1338
 						'id_board' => $row['id_board'],
1287 1339
 					)
1288 1340
 				);
1341
+			}
1289 1342
 
1290 1343
 			// Parent boards inherit the latest modified message of their children.
1291
-			if (isset($lastModifiedMsg[$row['id_parent']]))
1292
-				$lastModifiedMsg[$row['id_parent']] = max($row['local_last_msg'], $lastModifiedMsg[$row['id_parent']]);
1293
-			else
1294
-				$lastModifiedMsg[$row['id_parent']] = $row['local_last_msg'];
1344
+			if (isset($lastModifiedMsg[$row['id_parent']])) {
1345
+							$lastModifiedMsg[$row['id_parent']] = max($row['local_last_msg'], $lastModifiedMsg[$row['id_parent']]);
1346
+			} else {
1347
+							$lastModifiedMsg[$row['id_parent']] = $row['local_last_msg'];
1348
+			}
1295 1349
 		}
1296 1350
 
1297 1351
 	// Update all the basic statistics.
@@ -1363,8 +1417,9 @@  discard block
 block discarded – undo
1363 1417
 	require_once($sourcedir . '/Subs-Auth.php');
1364 1418
 	$members = findMembers($_POST['to']);
1365 1419
 
1366
-	if (empty($members))
1367
-		fatal_lang_error('reattribute_cannot_find_member');
1420
+	if (empty($members)) {
1421
+			fatal_lang_error('reattribute_cannot_find_member');
1422
+	}
1368 1423
 
1369 1424
 	$memID = array_shift($members);
1370 1425
 	$memID = $memID['id'];
@@ -1394,8 +1449,9 @@  discard block
 block discarded – undo
1394 1449
 		validateToken('admin-maint');
1395 1450
 
1396 1451
 		$groups = array();
1397
-		foreach ($_POST['groups'] as $id => $dummy)
1398
-			$groups[] = (int) $id;
1452
+		foreach ($_POST['groups'] as $id => $dummy) {
1453
+					$groups[] = (int) $id;
1454
+		}
1399 1455
 		$time_limit = (time() - ($_POST['maxdays'] * 24 * 3600));
1400 1456
 		$where_vars = array(
1401 1457
 			'time_limit' => $time_limit,
@@ -1404,9 +1460,9 @@  discard block
 block discarded – undo
1404 1460
 		{
1405 1461
 			$where = 'mem.date_registered < {int:time_limit} AND mem.is_activated = {int:is_activated}';
1406 1462
 			$where_vars['is_activated'] = 0;
1463
+		} else {
1464
+					$where = 'mem.last_login < {int:time_limit} AND (mem.last_login != 0 OR mem.date_registered < {int:time_limit})';
1407 1465
 		}
1408
-		else
1409
-			$where = 'mem.last_login < {int:time_limit} AND (mem.last_login != 0 OR mem.date_registered < {int:time_limit})';
1410 1466
 
1411 1467
 		// Need to get *all* groups then work out which (if any) we avoid.
1412 1468
 		$request = $smcFunc['db_query']('', '
@@ -1425,8 +1481,7 @@  discard block
 block discarded – undo
1425 1481
 				{
1426 1482
 					$where .= ' AND mem.id_post_group != {int:id_post_group_' . $row['id_group'] . '}';
1427 1483
 					$where_vars['id_post_group_' . $row['id_group']] = $row['id_group'];
1428
-				}
1429
-				else
1484
+				} else
1430 1485
 				{
1431 1486
 					$where .= ' AND mem.id_group != {int:id_group_' . $row['id_group'] . '} AND FIND_IN_SET({int:id_group_' . $row['id_group'] . '}, mem.additional_groups) = 0';
1432 1487
 					$where_vars['id_group_' . $row['id_group']] = $row['id_group'];
@@ -1453,8 +1508,9 @@  discard block
 block discarded – undo
1453 1508
 		$members = array();
1454 1509
 		while ($row = $smcFunc['db_fetch_assoc']($request))
1455 1510
 		{
1456
-			if (!$row['is_mod'] || !in_array(3, $groups))
1457
-				$members[] = $row['id_member'];
1511
+			if (!$row['is_mod'] || !in_array(3, $groups)) {
1512
+							$members[] = $row['id_member'];
1513
+			}
1458 1514
 		}
1459 1515
 		$smcFunc['db_free_result']($request);
1460 1516
 
@@ -1501,8 +1557,9 @@  discard block
 block discarded – undo
1501 1557
 		)
1502 1558
 	);
1503 1559
 
1504
-	while ($row = $smcFunc['db_fetch_row']($request))
1505
-		$drafts[] = (int) $row[0];
1560
+	while ($row = $smcFunc['db_fetch_row']($request)) {
1561
+			$drafts[] = (int) $row[0];
1562
+	}
1506 1563
 	$smcFunc['db_free_result']($request);
1507 1564
 
1508 1565
 	// If we have old drafts, remove them
@@ -1545,8 +1602,9 @@  discard block
 block discarded – undo
1545 1602
 	$sticky = isset($_POST['move_type_sticky']) || isset($_GET['sticky']);
1546 1603
 
1547 1604
 	// No boards then this is your stop.
1548
-	if (empty($id_board_from) || empty($id_board_to))
1549
-		return;
1605
+	if (empty($id_board_from) || empty($id_board_to)) {
1606
+			return;
1607
+	}
1550 1608
 
1551 1609
 	// The big WHERE clause
1552 1610
 	$conditions = 'WHERE t.id_board = {int:id_board_from}
@@ -1594,18 +1652,20 @@  discard block
 block discarded – undo
1594 1652
 		);
1595 1653
 		list ($total_topics) = $smcFunc['db_fetch_row']($request);
1596 1654
 		$smcFunc['db_free_result']($request);
1655
+	} else {
1656
+			$total_topics = (int) $_REQUEST['totaltopics'];
1597 1657
 	}
1598
-	else
1599
-		$total_topics = (int) $_REQUEST['totaltopics'];
1600 1658
 
1601 1659
 	// Seems like we need this here.
1602 1660
 	$context['continue_get_data'] = '?action=admin;area=maintain;sa=topics;activity=massmove;id_board_from=' . $id_board_from . ';id_board_to=' . $id_board_to . ';totaltopics=' . $total_topics . ';max_days=' . $max_days;
1603 1661
 
1604
-	if ($locked)
1605
-		$context['continue_get_data'] .= ';locked';
1662
+	if ($locked) {
1663
+			$context['continue_get_data'] .= ';locked';
1664
+	}
1606 1665
 
1607
-	if ($sticky)
1608
-		$context['continue_get_data'] .= ';sticky';
1666
+	if ($sticky) {
1667
+			$context['continue_get_data'] .= ';sticky';
1668
+	}
1609 1669
 
1610 1670
 	$context['continue_get_data'] .= ';start=' . $context['start'] . ';' . $context['session_var'] . '=' . $context['session_id'];
1611 1671
 
@@ -1626,8 +1686,9 @@  discard block
 block discarded – undo
1626 1686
 
1627 1687
 			// Get the ids.
1628 1688
 			$topics = array();
1629
-			while ($row = $smcFunc['db_fetch_assoc']($request))
1630
-				$topics[] = $row['id_topic'];
1689
+			while ($row = $smcFunc['db_fetch_assoc']($request)) {
1690
+							$topics[] = $row['id_topic'];
1691
+			}
1631 1692
 
1632 1693
 			// Just return if we don't have any topics left to move.
1633 1694
 			if (empty($topics))
@@ -1718,9 +1779,9 @@  discard block
 block discarded – undo
1718 1779
 		// save it so we don't do this again for this task
1719 1780
 		list ($_SESSION['total_members']) = $smcFunc['db_fetch_row']($request);
1720 1781
 		$smcFunc['db_free_result']($request);
1782
+	} else {
1783
+			validateToken('admin-recountposts');
1721 1784
 	}
1722
-	else
1723
-		validateToken('admin-recountposts');
1724 1785
 
1725 1786
 	// Lets get a group of members and determine their post count (from the boards that have post count enabled of course).
1726 1787
 	$request = $smcFunc['db_query']('', '
@@ -1766,8 +1827,9 @@  discard block
 block discarded – undo
1766 1827
 		createToken('admin-recountposts');
1767 1828
 		$context['continue_post_data'] = '<input type="hidden" name="' . $context['admin-recountposts_token_var'] . '" value="' . $context['admin-recountposts_token'] . '">';
1768 1829
 
1769
-		if (function_exists('apache_reset_timeout'))
1770
-			apache_reset_timeout();
1830
+		if (function_exists('apache_reset_timeout')) {
1831
+					apache_reset_timeout();
1832
+		}
1771 1833
 		return;
1772 1834
 	}
1773 1835
 
@@ -1853,10 +1915,9 @@  discard block
 block discarded – undo
1853 1915
 		checkSession('request');
1854 1916
 		validateToken('admin-hook', 'request');
1855 1917
 
1856
-		if ($_REQUEST['do'] == 'remove')
1857
-			remove_integration_function($_REQUEST['hook'], urldecode($_REQUEST['function']));
1858
-
1859
-		else
1918
+		if ($_REQUEST['do'] == 'remove') {
1919
+					remove_integration_function($_REQUEST['hook'], urldecode($_REQUEST['function']));
1920
+		} else
1860 1921
 		{
1861 1922
 			$function_remove = urldecode($_REQUEST['function']) . (($_REQUEST['do'] == 'disable') ? '' : '!');
1862 1923
 			$function_add = urldecode($_REQUEST['function']) . (($_REQUEST['do'] == 'disable') ? '!' : '');
@@ -1906,11 +1967,11 @@  discard block
 block discarded – undo
1906 1967
 						// Show a nice icon to indicate this is an instance.
1907 1968
 						$instance = (!empty($data['instance']) ? '<span class="generic_icons news" title="' . $txt['hooks_field_function_method'] . '"></span> ' : '');
1908 1969
 
1909
-						if (!empty($data['included_file']))
1910
-							return $instance . $txt['hooks_field_function'] . ': ' . $data['real_function'] . '<br>' . $txt['hooks_field_included_file'] . ': ' . $data['included_file'];
1911
-
1912
-						else
1913
-							return $instance . $data['real_function'];
1970
+						if (!empty($data['included_file'])) {
1971
+													return $instance . $txt['hooks_field_function'] . ': ' . $data['real_function'] . '<br>' . $txt['hooks_field_included_file'] . ': ' . $data['included_file'];
1972
+						} else {
1973
+													return $instance . $data['real_function'];
1974
+						}
1914 1975
 					},
1915 1976
 				),
1916 1977
 				'sort' =>  array(
@@ -1975,11 +2036,12 @@  discard block
 block discarded – undo
1975 2036
 		'data' => array(
1976 2037
 			'function' => function($data) use ($txt, $scripturl, $context)
1977 2038
 			{
1978
-				if (!$data['hook_exists'])
1979
-					return '
2039
+				if (!$data['hook_exists']) {
2040
+									return '
1980 2041
 					<a href="' . $scripturl . '?action=admin;area=maintain;sa=hooks;do=remove;hook=' . $data['hook_name'] . ';function=' . urlencode($data['function_name']) . $context['filter_url'] . ';' . $context['admin-hook_token_var'] . '=' . $context['admin-hook_token'] . ';' . $context['session_var'] . '=' . $context['session_id'] . '" data-confirm="' . $txt['quickmod_confirm'] . '" class="you_sure">
1981 2042
 						<span class="generic_icons delete" title="' . $txt['hooks_button_remove'] . '"></span>
1982 2043
 					</a>';
2044
+				}
1983 2045
 			},
1984 2046
 			'class' => 'centertext',
1985 2047
 		),
@@ -2014,10 +2076,11 @@  discard block
 block discarded – undo
2014 2076
 		{
2015 2077
 			if ($file != '.' && $file != '..')
2016 2078
 			{
2017
-				if (is_dir($dir_path . '/' . $file))
2018
-					$files = array_merge($files, get_files_recursive($dir_path . '/' . $file));
2019
-				else
2020
-					$files[] = array('dir' => $dir_path, 'name' => $file);
2079
+				if (is_dir($dir_path . '/' . $file)) {
2080
+									$files = array_merge($files, get_files_recursive($dir_path . '/' . $file));
2081
+				} else {
2082
+									$files[] = array('dir' => $dir_path, 'name' => $file);
2083
+				}
2021 2084
 			}
2022 2085
 		}
2023 2086
 	}
@@ -2066,16 +2129,16 @@  discard block
 block discarded – undo
2066 2129
 							// I need to know if there is at least one function called in this file.
2067 2130
 							$temp_data['include'][$hookParsedData['pureFunc']] = array('hook' => $hook, 'function' => $hookParsedData['pureFunc']);
2068 2131
 							unset($temp_hooks[$hook][$rawFunc]);
2069
-						}
2070
-						elseif (strpos(str_replace(' (', '(', $fc), 'function ' . trim($hookParsedData['pureFunc']) . '(') !== false)
2132
+						} elseif (strpos(str_replace(' (', '(', $fc), 'function ' . trim($hookParsedData['pureFunc']) . '(') !== false)
2071 2133
 						{
2072 2134
 							$hook_status[$hook][$hookParsedData['pureFunc']] = $hookParsedData;
2073 2135
 							$hook_status[$hook][$hookParsedData['pureFunc']]['exists'] = true;
2074 2136
 							$hook_status[$hook][$hookParsedData['pureFunc']]['in_file'] = (!empty($file['name']) ? $file['name'] : (!empty($hookParsedData['hookFile']) ? $hookParsedData['hookFile'] : ''));
2075 2137
 
2076 2138
 							// Does the hook has its own file?
2077
-							if (!empty($hookParsedData['hookFile']))
2078
-								$temp_data['include'][$hookParsedData['pureFunc']] = array('hook' => $hook, 'function' => $hookParsedData['pureFunc']);
2139
+							if (!empty($hookParsedData['hookFile'])) {
2140
+															$temp_data['include'][$hookParsedData['pureFunc']] = array('hook' => $hook, 'function' => $hookParsedData['pureFunc']);
2141
+							}
2079 2142
 
2080 2143
 							// I want to remember all the functions called within this file (to check later if they are enabled or disabled and decide if the integrare_*_include of that file can be disabled too)
2081 2144
 							$temp_data['function'][$file['name']][$hookParsedData['pureFunc']] = $hookParsedData['enabled'];
@@ -2102,15 +2165,17 @@  discard block
 block discarded – undo
2102 2165
 	$sort = array();
2103 2166
 	$hooks_filters = array();
2104 2167
 
2105
-	foreach ($hooks as $hook => $functions)
2106
-		$hooks_filters[] = '<option' . ($context['current_filter'] == $hook ? ' selected ' : '') . ' value="' . $hook . '">' . $hook . '</option>';
2168
+	foreach ($hooks as $hook => $functions) {
2169
+			$hooks_filters[] = '<option' . ($context['current_filter'] == $hook ? ' selected ' : '') . ' value="' . $hook . '">' . $hook . '</option>';
2170
+	}
2107 2171
 
2108
-	if (!empty($hooks_filters))
2109
-		$context['insert_after_template'] .= '
2172
+	if (!empty($hooks_filters)) {
2173
+			$context['insert_after_template'] .= '
2110 2174
 		<script>
2111 2175
 			var hook_name_header = document.getElementById(\'header_list_integration_hooks_hook_name\');
2112 2176
 			hook_name_header.innerHTML += ' . JavaScriptEscape('<select style="margin-left:15px;" onchange="window.location=(\'' . $scripturl . '?action=admin;area=maintain;sa=hooks\' + (this.value ? \';filter=\' + this.value : \'\'));"><option value="">' . $txt['hooks_reset_filter'] . '</option>' . implode('', $hooks_filters) . '</select>') . ';
2113 2177
 		</script>';
2178
+	}
2114 2179
 
2115 2180
 	$temp_data = array();
2116 2181
 	$id = 0;
@@ -2152,10 +2217,11 @@  discard block
 block discarded – undo
2152 2217
 
2153 2218
 	foreach ($temp_data as $data)
2154 2219
 	{
2155
-		if (++$counter < $start)
2156
-			continue;
2157
-		elseif ($counter == $start + $per_page)
2158
-			break;
2220
+		if (++$counter < $start) {
2221
+					continue;
2222
+		} elseif ($counter == $start + $per_page) {
2223
+					break;
2224
+		}
2159 2225
 
2160 2226
 		$hooks_data[] = $data;
2161 2227
 	}
@@ -2177,13 +2243,15 @@  discard block
 block discarded – undo
2177 2243
 	$hooks_count = 0;
2178 2244
 
2179 2245
 	$context['filter'] = false;
2180
-	if (isset($_GET['filter']))
2181
-		$context['filter'] = $_GET['filter'];
2246
+	if (isset($_GET['filter'])) {
2247
+			$context['filter'] = $_GET['filter'];
2248
+	}
2182 2249
 
2183 2250
 	foreach ($hooks as $hook => $functions)
2184 2251
 	{
2185
-		if (empty($context['filter']) || (!empty($context['filter']) && $context['filter'] == $hook))
2186
-			$hooks_count += count($functions);
2252
+		if (empty($context['filter']) || (!empty($context['filter']) && $context['filter'] == $hook)) {
2253
+					$hooks_count += count($functions);
2254
+		}
2187 2255
 	}
2188 2256
 
2189 2257
 	return $hooks_count;
@@ -2204,8 +2272,9 @@  discard block
 block discarded – undo
2204 2272
 		$integration_hooks = array();
2205 2273
 		foreach ($modSettings as $key => $value)
2206 2274
 		{
2207
-			if (!empty($value) && substr($key, 0, 10) === 'integrate_')
2208
-				$integration_hooks[$key] = explode(',', $value);
2275
+			if (!empty($value) && substr($key, 0, 10) === 'integrate_') {
2276
+							$integration_hooks[$key] = explode(',', $value);
2277
+			}
2209 2278
 		}
2210 2279
 	}
2211 2280
 
@@ -2236,8 +2305,9 @@  discard block
 block discarded – undo
2236 2305
 	);
2237 2306
 
2238 2307
 	// Meh...
2239
-	if (empty($rawData))
2240
-		return $hookData;
2308
+	if (empty($rawData)) {
2309
+			return $hookData;
2310
+	}
2241 2311
 
2242 2312
 	// For convenience purposes only!
2243 2313
 	$modFunc = $rawData;
@@ -2248,11 +2318,11 @@  discard block
 block discarded – undo
2248 2318
 		list ($hookData['hookFile'], $modFunc) = explode('|', $modFunc);
2249 2319
 
2250 2320
 		// Does the file exists? who knows!
2251
-		if (empty($settings['theme_dir']))
2252
-			$hookData['absPath'] = strtr(trim($hookData['hookFile']), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir));
2253
-
2254
-		else
2255
-			$hookData['absPath'] = strtr(trim($hookData['hookFile']), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir, '$themedir' => $settings['theme_dir']));
2321
+		if (empty($settings['theme_dir'])) {
2322
+					$hookData['absPath'] = strtr(trim($hookData['hookFile']), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir));
2323
+		} else {
2324
+					$hookData['absPath'] = strtr(trim($hookData['hookFile']), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir, '$themedir' => $settings['theme_dir']));
2325
+		}
2256 2326
 
2257 2327
 		$hookData['fileExists'] = file_exists($hookData['absPath']);
2258 2328
 		$hookData['hookFile'] = basename($hookData['hookFile']);
@@ -2277,11 +2347,10 @@  discard block
 block discarded – undo
2277 2347
 	{
2278 2348
 		list ($hookData['class'], $hookData['method']) = explode('::', $modFunc);
2279 2349
 		$hookData['pureFunc'] = $hookData['method'];
2350
+	} else {
2351
+			$hookData['pureFunc'] = $modFunc;
2280 2352
 	}
2281 2353
 
2282
-	else
2283
-		$hookData['pureFunc'] = $modFunc;
2284
-
2285 2354
 	return $hookData;
2286 2355
 }
2287 2356
 
Please login to merge, or discard this patch.
Sources/Subs-Charset.php 2 patches
Spacing   +506 added lines, -506 removed lines patch added patch discarded remove patch
@@ -24,259 +24,259 @@  discard block
 block discarded – undo
24 24
 function utf8_strtolower($string)
25 25
 {
26 26
 	static $case_folding = array(
27
-		'A' => 'a',		'B' => 'b',		'C' => 'c',		'D' => 'd',
28
-		'E' => 'e',		'F' => 'f',		'G' => 'g',		'H' => 'h',
29
-		'I' => 'i',		'J' => 'j',		'K' => 'k',		'L' => 'l',
30
-		'M' => 'm',		'N' => 'n',		'O' => 'o',		'P' => 'p',
31
-		'Q' => 'q',		'R' => 'r',		'S' => 's',		'T' => 't',
32
-		'U' => 'u',		'V' => 'v',		'W' => 'w',		'X' => 'x',
33
-		'Y' => 'y',		'Z' => 'z',		"\xc2\xb5" => "\xce\xbc",		"\xc3\x80" => "\xc3\xa0",
34
-		"\xc3\x81" => "\xc3\xa1",		"\xc3\x82" => "\xc3\xa2",		"\xc3\x83" => "\xc3\xa3",		"\xc3\x84" => "\xc3\xa4",
35
-		"\xc3\x85" => "\xc3\xa5",		"\xc3\x86" => "\xc3\xa6",		"\xc3\x87" => "\xc3\xa7",		"\xc3\x88" => "\xc3\xa8",
36
-		"\xc3\x89" => "\xc3\xa9",		"\xc3\x8a" => "\xc3\xaa",		"\xc3\x8b" => "\xc3\xab",		"\xc3\x8c" => "\xc3\xac",
37
-		"\xc3\x8d" => "\xc3\xad",		"\xc3\x8e" => "\xc3\xae",		"\xc3\x8f" => "\xc3\xaf",		"\xc3\x90" => "\xc3\xb0",
38
-		"\xc3\x91" => "\xc3\xb1",		"\xc3\x92" => "\xc3\xb2",		"\xc3\x93" => "\xc3\xb3",		"\xc3\x94" => "\xc3\xb4",
39
-		"\xc3\x95" => "\xc3\xb5",		"\xc3\x96" => "\xc3\xb6",		"\xc3\x98" => "\xc3\xb8",		"\xc3\x99" => "\xc3\xb9",
40
-		"\xc3\x9a" => "\xc3\xba",		"\xc3\x9b" => "\xc3\xbb",		"\xc3\x9c" => "\xc3\xbc",		"\xc3\x9d" => "\xc3\xbd",
41
-		"\xc3\x9e" => "\xc3\xbe",		"\xc3\x9f" => "ss",	"\xc4\x80" => "\xc4\x81",		"\xc4\x82" => "\xc4\x83",
42
-		"\xc4\x84" => "\xc4\x85",		"\xc4\x86" => "\xc4\x87",		"\xc4\x88" => "\xc4\x89",		"\xc4\x8a" => "\xc4\x8b",
43
-		"\xc4\x8c" => "\xc4\x8d",		"\xc4\x8e" => "\xc4\x8f",		"\xc4\x90" => "\xc4\x91",		"\xc4\x92" => "\xc4\x93",
44
-		"\xc4\x94" => "\xc4\x95",		"\xc4\x96" => "\xc4\x97",		"\xc4\x98" => "\xc4\x99",		"\xc4\x9a" => "\xc4\x9b",
45
-		"\xc4\x9c" => "\xc4\x9d",		"\xc4\x9e" => "\xc4\x9f",		"\xc4\xa0" => "\xc4\xa1",		"\xc4\xa2" => "\xc4\xa3",
46
-		"\xc4\xa4" => "\xc4\xa5",		"\xc4\xa6" => "\xc4\xa7",		"\xc4\xa8" => "\xc4\xa9",		"\xc4\xaa" => "\xc4\xab",
47
-		"\xc4\xac" => "\xc4\xad",		"\xc4\xae" => "\xc4\xaf",		"\xc4\xb0" => "i\xcc\x87",		"\xc4\xb2" => "\xc4\xb3",
48
-		"\xc4\xb4" => "\xc4\xb5",		"\xc4\xb6" => "\xc4\xb7",		"\xc4\xb9" => "\xc4\xba",		"\xc4\xbb" => "\xc4\xbc",
49
-		"\xc4\xbd" => "\xc4\xbe",		"\xc4\xbf" => "\xc5\x80",		"\xc5\x81" => "\xc5\x82",		"\xc5\x83" => "\xc5\x84",
50
-		"\xc5\x85" => "\xc5\x86",		"\xc5\x87" => "\xc5\x88",		"\xc5\x89" => "\xca\xbcn",	"\xc5\x8a" => "\xc5\x8b",
51
-		"\xc5\x8c" => "\xc5\x8d",		"\xc5\x8e" => "\xc5\x8f",		"\xc5\x90" => "\xc5\x91",		"\xc5\x92" => "\xc5\x93",
52
-		"\xc5\x94" => "\xc5\x95",		"\xc5\x96" => "\xc5\x97",		"\xc5\x98" => "\xc5\x99",		"\xc5\x9a" => "\xc5\x9b",
53
-		"\xc5\x9c" => "\xc5\x9d",		"\xc5\x9e" => "\xc5\x9f",		"\xc5\xa0" => "\xc5\xa1",		"\xc5\xa2" => "\xc5\xa3",
54
-		"\xc5\xa4" => "\xc5\xa5",		"\xc5\xa6" => "\xc5\xa7",		"\xc5\xa8" => "\xc5\xa9",		"\xc5\xaa" => "\xc5\xab",
55
-		"\xc5\xac" => "\xc5\xad",		"\xc5\xae" => "\xc5\xaf",		"\xc5\xb0" => "\xc5\xb1",		"\xc5\xb2" => "\xc5\xb3",
56
-		"\xc5\xb4" => "\xc5\xb5",		"\xc5\xb6" => "\xc5\xb7",		"\xc5\xb8" => "\xc3\xbf",		"\xc5\xb9" => "\xc5\xba",
57
-		"\xc5\xbb" => "\xc5\xbc",		"\xc5\xbd" => "\xc5\xbe",		"\xc5\xbf" => "s",		"\xc6\x81" => "\xc9\x93",
58
-		"\xc6\x82" => "\xc6\x83",		"\xc6\x84" => "\xc6\x85",		"\xc6\x86" => "\xc9\x94",		"\xc6\x87" => "\xc6\x88",
59
-		"\xc6\x89" => "\xc9\x96",		"\xc6\x8a" => "\xc9\x97",		"\xc6\x8b" => "\xc6\x8c",		"\xc6\x8e" => "\xc7\x9d",
60
-		"\xc6\x8f" => "\xc9\x99",		"\xc6\x90" => "\xc9\x9b",		"\xc6\x91" => "\xc6\x92",		"\xc6\x93" => "\xc9\xa0",
61
-		"\xc6\x94" => "\xc9\xa3",		"\xc6\x96" => "\xc9\xa9",		"\xc6\x97" => "\xc9\xa8",		"\xc6\x98" => "\xc6\x99",
62
-		"\xc6\x9c" => "\xc9\xaf",		"\xc6\x9d" => "\xc9\xb2",		"\xc6\x9f" => "\xc9\xb5",		"\xc6\xa0" => "\xc6\xa1",
63
-		"\xc6\xa2" => "\xc6\xa3",		"\xc6\xa4" => "\xc6\xa5",		"\xc6\xa6" => "\xca\x80",		"\xc6\xa7" => "\xc6\xa8",
64
-		"\xc6\xa9" => "\xca\x83",		"\xc6\xac" => "\xc6\xad",		"\xc6\xae" => "\xca\x88",		"\xc6\xaf" => "\xc6\xb0",
65
-		"\xc6\xb1" => "\xca\x8a",		"\xc6\xb2" => "\xca\x8b",		"\xc6\xb3" => "\xc6\xb4",		"\xc6\xb5" => "\xc6\xb6",
66
-		"\xc6\xb7" => "\xca\x92",		"\xc6\xb8" => "\xc6\xb9",		"\xc6\xbc" => "\xc6\xbd",		"\xc7\x84" => "\xc7\x86",
67
-		"\xc7\x85" => "\xc7\x86",		"\xc7\x87" => "\xc7\x89",		"\xc7\x88" => "\xc7\x89",		"\xc7\x8a" => "\xc7\x8c",
68
-		"\xc7\x8b" => "\xc7\x8c",		"\xc7\x8d" => "\xc7\x8e",		"\xc7\x8f" => "\xc7\x90",		"\xc7\x91" => "\xc7\x92",
69
-		"\xc7\x93" => "\xc7\x94",		"\xc7\x95" => "\xc7\x96",		"\xc7\x97" => "\xc7\x98",		"\xc7\x99" => "\xc7\x9a",
70
-		"\xc7\x9b" => "\xc7\x9c",		"\xc7\x9e" => "\xc7\x9f",		"\xc7\xa0" => "\xc7\xa1",		"\xc7\xa2" => "\xc7\xa3",
71
-		"\xc7\xa4" => "\xc7\xa5",		"\xc7\xa6" => "\xc7\xa7",		"\xc7\xa8" => "\xc7\xa9",		"\xc7\xaa" => "\xc7\xab",
72
-		"\xc7\xac" => "\xc7\xad",		"\xc7\xae" => "\xc7\xaf",		"\xc7\xb0" => "j\xcc\x8c",		"\xc7\xb1" => "\xc7\xb3",
73
-		"\xc7\xb2" => "\xc7\xb3",		"\xc7\xb4" => "\xc7\xb5",		"\xc7\xb6" => "\xc6\x95",		"\xc7\xb7" => "\xc6\xbf",
74
-		"\xc7\xb8" => "\xc7\xb9",		"\xc7\xba" => "\xc7\xbb",		"\xc7\xbc" => "\xc7\xbd",		"\xc7\xbe" => "\xc7\xbf",
75
-		"\xc8\x80" => "\xc8\x81",		"\xc8\x82" => "\xc8\x83",		"\xc8\x84" => "\xc8\x85",		"\xc8\x86" => "\xc8\x87",
76
-		"\xc8\x88" => "\xc8\x89",		"\xc8\x8a" => "\xc8\x8b",		"\xc8\x8c" => "\xc8\x8d",		"\xc8\x8e" => "\xc8\x8f",
77
-		"\xc8\x90" => "\xc8\x91",		"\xc8\x92" => "\xc8\x93",		"\xc8\x94" => "\xc8\x95",		"\xc8\x96" => "\xc8\x97",
78
-		"\xc8\x98" => "\xc8\x99",		"\xc8\x9a" => "\xc8\x9b",		"\xc8\x9c" => "\xc8\x9d",		"\xc8\x9e" => "\xc8\x9f",
79
-		"\xc8\xa0" => "\xc6\x9e",		"\xc8\xa2" => "\xc8\xa3",		"\xc8\xa4" => "\xc8\xa5",		"\xc8\xa6" => "\xc8\xa7",
80
-		"\xc8\xa8" => "\xc8\xa9",		"\xc8\xaa" => "\xc8\xab",		"\xc8\xac" => "\xc8\xad",		"\xc8\xae" => "\xc8\xaf",
81
-		"\xc8\xb0" => "\xc8\xb1",		"\xc8\xb2" => "\xc8\xb3",		"\xc8\xba" => "\xe2\xb1\xa5",		"\xc8\xbb" => "\xc8\xbc",
82
-		"\xc8\xbd" => "\xc6\x9a",		"\xc8\xbe" => "\xe2\xb1\xa6",		"\xc9\x81" => "\xc9\x82",		"\xc9\x83" => "\xc6\x80",
83
-		"\xc9\x84" => "\xca\x89",		"\xc9\x85" => "\xca\x8c",		"\xc9\x86" => "\xc9\x87",		"\xc9\x88" => "\xc9\x89",
84
-		"\xc9\x8a" => "\xc9\x8b",		"\xc9\x8c" => "\xc9\x8d",		"\xc9\x8e" => "\xc9\x8f",		"\xcd\x85" => "\xce\xb9",
85
-		"\xce\x86" => "\xce\xac",		"\xce\x88" => "\xce\xad",		"\xce\x89" => "\xce\xae",		"\xce\x8a" => "\xce\xaf",
86
-		"\xce\x8c" => "\xcf\x8c",		"\xce\x8e" => "\xcf\x8d",		"\xce\x8f" => "\xcf\x8e",		"\xce\x90" => "\xce\xb9\xcc\x88\xcc\x81",
87
-		"\xce\x91" => "\xce\xb1",		"\xce\x92" => "\xce\xb2",		"\xce\x93" => "\xce\xb3",		"\xce\x94" => "\xce\xb4",
88
-		"\xce\x95" => "\xce\xb5",		"\xce\x96" => "\xce\xb6",		"\xce\x97" => "\xce\xb7",		"\xce\x98" => "\xce\xb8",
89
-		"\xce\x99" => "\xce\xb9",		"\xce\x9a" => "\xce\xba",		"\xce\x9b" => "\xce\xbb",		"\xce\x9c" => "\xce\xbc",
90
-		"\xce\x9d" => "\xce\xbd",		"\xce\x9e" => "\xce\xbe",		"\xce\x9f" => "\xce\xbf",		"\xce\xa0" => "\xcf\x80",
91
-		"\xce\xa1" => "\xcf\x81",		"\xce\xa3" => "\xcf\x83",		"\xce\xa4" => "\xcf\x84",		"\xce\xa5" => "\xcf\x85",
92
-		"\xce\xa6" => "\xcf\x86",		"\xce\xa7" => "\xcf\x87",		"\xce\xa8" => "\xcf\x88",		"\xce\xa9" => "\xcf\x89",
93
-		"\xce\xaa" => "\xcf\x8a",		"\xce\xab" => "\xcf\x8b",		"\xce\xb0" => "\xcf\x85\xcc\x88\xcc\x81",	"\xcf\x82" => "\xcf\x83",
94
-		"\xcf\x90" => "\xce\xb2",		"\xcf\x91" => "\xce\xb8",		"\xcf\x95" => "\xcf\x86",		"\xcf\x96" => "\xcf\x80",
95
-		"\xcf\x98" => "\xcf\x99",		"\xcf\x9a" => "\xcf\x9b",		"\xcf\x9c" => "\xcf\x9d",		"\xcf\x9e" => "\xcf\x9f",
96
-		"\xcf\xa0" => "\xcf\xa1",		"\xcf\xa2" => "\xcf\xa3",		"\xcf\xa4" => "\xcf\xa5",		"\xcf\xa6" => "\xcf\xa7",
97
-		"\xcf\xa8" => "\xcf\xa9",		"\xcf\xaa" => "\xcf\xab",		"\xcf\xac" => "\xcf\xad",		"\xcf\xae" => "\xcf\xaf",
98
-		"\xcf\xb0" => "\xce\xba",		"\xcf\xb1" => "\xcf\x81",		"\xcf\xb4" => "\xce\xb8",		"\xcf\xb5" => "\xce\xb5",
99
-		"\xcf\xb7" => "\xcf\xb8",		"\xcf\xb9" => "\xcf\xb2",		"\xcf\xba" => "\xcf\xbb",		"\xcf\xbd" => "\xcd\xbb",
100
-		"\xcf\xbe" => "\xcd\xbc",		"\xcf\xbf" => "\xcd\xbd",		"\xd0\x80" => "\xd1\x90",		"\xd0\x81" => "\xd1\x91",
101
-		"\xd0\x82" => "\xd1\x92",		"\xd0\x83" => "\xd1\x93",		"\xd0\x84" => "\xd1\x94",		"\xd0\x85" => "\xd1\x95",
102
-		"\xd0\x86" => "\xd1\x96",		"\xd0\x87" => "\xd1\x97",		"\xd0\x88" => "\xd1\x98",		"\xd0\x89" => "\xd1\x99",
103
-		"\xd0\x8a" => "\xd1\x9a",		"\xd0\x8b" => "\xd1\x9b",		"\xd0\x8c" => "\xd1\x9c",		"\xd0\x8d" => "\xd1\x9d",
104
-		"\xd0\x8e" => "\xd1\x9e",		"\xd0\x8f" => "\xd1\x9f",		"\xd0\x90" => "\xd0\xb0",		"\xd0\x91" => "\xd0\xb1",
105
-		"\xd0\x92" => "\xd0\xb2",		"\xd0\x93" => "\xd0\xb3",		"\xd0\x94" => "\xd0\xb4",		"\xd0\x95" => "\xd0\xb5",
106
-		"\xd0\x96" => "\xd0\xb6",		"\xd0\x97" => "\xd0\xb7",		"\xd0\x98" => "\xd0\xb8",		"\xd0\x99" => "\xd0\xb9",
107
-		"\xd0\x9a" => "\xd0\xba",		"\xd0\x9b" => "\xd0\xbb",		"\xd0\x9c" => "\xd0\xbc",		"\xd0\x9d" => "\xd0\xbd",
108
-		"\xd0\x9e" => "\xd0\xbe",		"\xd0\x9f" => "\xd0\xbf",		"\xd0\xa0" => "\xd1\x80",		"\xd0\xa1" => "\xd1\x81",
109
-		"\xd0\xa2" => "\xd1\x82",		"\xd0\xa3" => "\xd1\x83",		"\xd0\xa4" => "\xd1\x84",		"\xd0\xa5" => "\xd1\x85",
110
-		"\xd0\xa6" => "\xd1\x86",		"\xd0\xa7" => "\xd1\x87",		"\xd0\xa8" => "\xd1\x88",		"\xd0\xa9" => "\xd1\x89",
111
-		"\xd0\xaa" => "\xd1\x8a",		"\xd0\xab" => "\xd1\x8b",		"\xd0\xac" => "\xd1\x8c",		"\xd0\xad" => "\xd1\x8d",
112
-		"\xd0\xae" => "\xd1\x8e",		"\xd0\xaf" => "\xd1\x8f",		"\xd1\xa0" => "\xd1\xa1",		"\xd1\xa2" => "\xd1\xa3",
113
-		"\xd1\xa4" => "\xd1\xa5",		"\xd1\xa6" => "\xd1\xa7",		"\xd1\xa8" => "\xd1\xa9",		"\xd1\xaa" => "\xd1\xab",
114
-		"\xd1\xac" => "\xd1\xad",		"\xd1\xae" => "\xd1\xaf",		"\xd1\xb0" => "\xd1\xb1",		"\xd1\xb2" => "\xd1\xb3",
115
-		"\xd1\xb4" => "\xd1\xb5",		"\xd1\xb6" => "\xd1\xb7",		"\xd1\xb8" => "\xd1\xb9",		"\xd1\xba" => "\xd1\xbb",
116
-		"\xd1\xbc" => "\xd1\xbd",		"\xd1\xbe" => "\xd1\xbf",		"\xd2\x80" => "\xd2\x81",		"\xd2\x8a" => "\xd2\x8b",
117
-		"\xd2\x8c" => "\xd2\x8d",		"\xd2\x8e" => "\xd2\x8f",		"\xd2\x90" => "\xd2\x91",		"\xd2\x92" => "\xd2\x93",
118
-		"\xd2\x94" => "\xd2\x95",		"\xd2\x96" => "\xd2\x97",		"\xd2\x98" => "\xd2\x99",		"\xd2\x9a" => "\xd2\x9b",
119
-		"\xd2\x9c" => "\xd2\x9d",		"\xd2\x9e" => "\xd2\x9f",		"\xd2\xa0" => "\xd2\xa1",		"\xd2\xa2" => "\xd2\xa3",
120
-		"\xd2\xa4" => "\xd2\xa5",		"\xd2\xa6" => "\xd2\xa7",		"\xd2\xa8" => "\xd2\xa9",		"\xd2\xaa" => "\xd2\xab",
121
-		"\xd2\xac" => "\xd2\xad",		"\xd2\xae" => "\xd2\xaf",		"\xd2\xb0" => "\xd2\xb1",		"\xd2\xb2" => "\xd2\xb3",
122
-		"\xd2\xb4" => "\xd2\xb5",		"\xd2\xb6" => "\xd2\xb7",		"\xd2\xb8" => "\xd2\xb9",		"\xd2\xba" => "\xd2\xbb",
123
-		"\xd2\xbc" => "\xd2\xbd",		"\xd2\xbe" => "\xd2\xbf",		"\xd3\x80" => "\xd3\x8f",		"\xd3\x81" => "\xd3\x82",
124
-		"\xd3\x83" => "\xd3\x84",		"\xd3\x85" => "\xd3\x86",		"\xd3\x87" => "\xd3\x88",		"\xd3\x89" => "\xd3\x8a",
125
-		"\xd3\x8b" => "\xd3\x8c",		"\xd3\x8d" => "\xd3\x8e",		"\xd3\x90" => "\xd3\x91",		"\xd3\x92" => "\xd3\x93",
126
-		"\xd3\x94" => "\xd3\x95",		"\xd3\x96" => "\xd3\x97",		"\xd3\x98" => "\xd3\x99",		"\xd3\x9a" => "\xd3\x9b",
127
-		"\xd3\x9c" => "\xd3\x9d",		"\xd3\x9e" => "\xd3\x9f",		"\xd3\xa0" => "\xd3\xa1",		"\xd3\xa2" => "\xd3\xa3",
128
-		"\xd3\xa4" => "\xd3\xa5",		"\xd3\xa6" => "\xd3\xa7",		"\xd3\xa8" => "\xd3\xa9",		"\xd3\xaa" => "\xd3\xab",
129
-		"\xd3\xac" => "\xd3\xad",		"\xd3\xae" => "\xd3\xaf",		"\xd3\xb0" => "\xd3\xb1",		"\xd3\xb2" => "\xd3\xb3",
130
-		"\xd3\xb4" => "\xd3\xb5",		"\xd3\xb6" => "\xd3\xb7",		"\xd3\xb8" => "\xd3\xb9",		"\xd3\xba" => "\xd3\xbb",
131
-		"\xd3\xbc" => "\xd3\xbd",		"\xd3\xbe" => "\xd3\xbf",		"\xd4\x80" => "\xd4\x81",		"\xd4\x82" => "\xd4\x83",
132
-		"\xd4\x84" => "\xd4\x85",		"\xd4\x86" => "\xd4\x87",		"\xd4\x88" => "\xd4\x89",		"\xd4\x8a" => "\xd4\x8b",
133
-		"\xd4\x8c" => "\xd4\x8d",		"\xd4\x8e" => "\xd4\x8f",		"\xd4\x90" => "\xd4\x91",		"\xd4\x92" => "\xd4\x93",
134
-		"\xd4\xb1" => "\xd5\xa1",		"\xd4\xb2" => "\xd5\xa2",		"\xd4\xb3" => "\xd5\xa3",		"\xd4\xb4" => "\xd5\xa4",
135
-		"\xd4\xb5" => "\xd5\xa5",		"\xd4\xb6" => "\xd5\xa6",		"\xd4\xb7" => "\xd5\xa7",		"\xd4\xb8" => "\xd5\xa8",
136
-		"\xd4\xb9" => "\xd5\xa9",		"\xd4\xba" => "\xd5\xaa",		"\xd4\xbb" => "\xd5\xab",		"\xd4\xbc" => "\xd5\xac",
137
-		"\xd4\xbd" => "\xd5\xad",		"\xd4\xbe" => "\xd5\xae",		"\xd4\xbf" => "\xd5\xaf",		"\xd5\x80" => "\xd5\xb0",
138
-		"\xd5\x81" => "\xd5\xb1",		"\xd5\x82" => "\xd5\xb2",		"\xd5\x83" => "\xd5\xb3",		"\xd5\x84" => "\xd5\xb4",
139
-		"\xd5\x85" => "\xd5\xb5",		"\xd5\x86" => "\xd5\xb6",		"\xd5\x87" => "\xd5\xb7",		"\xd5\x88" => "\xd5\xb8",
140
-		"\xd5\x89" => "\xd5\xb9",		"\xd5\x8a" => "\xd5\xba",		"\xd5\x8b" => "\xd5\xbb",		"\xd5\x8c" => "\xd5\xbc",
141
-		"\xd5\x8d" => "\xd5\xbd",		"\xd5\x8e" => "\xd5\xbe",		"\xd5\x8f" => "\xd5\xbf",		"\xd5\x90" => "\xd6\x80",
142
-		"\xd5\x91" => "\xd6\x81",		"\xd5\x92" => "\xd6\x82",		"\xd5\x93" => "\xd6\x83",		"\xd5\x94" => "\xd6\x84",
143
-		"\xd5\x95" => "\xd6\x85",		"\xd5\x96" => "\xd6\x86",		"\xd6\x87" => "\xd5\xa5\xd6\x82",		"\xe1\x82\xa0" => "\xe2\xb4\x80",
144
-		"\xe1\x82\xa1" => "\xe2\xb4\x81",		"\xe1\x82\xa2" => "\xe2\xb4\x82",		"\xe1\x82\xa3" => "\xe2\xb4\x83",		"\xe1\x82\xa4" => "\xe2\xb4\x84",
145
-		"\xe1\x82\xa5" => "\xe2\xb4\x85",		"\xe1\x82\xa6" => "\xe2\xb4\x86",		"\xe1\x82\xa7" => "\xe2\xb4\x87",		"\xe1\x82\xa8" => "\xe2\xb4\x88",
146
-		"\xe1\x82\xa9" => "\xe2\xb4\x89",		"\xe1\x82\xaa" => "\xe2\xb4\x8a",		"\xe1\x82\xab" => "\xe2\xb4\x8b",		"\xe1\x82\xac" => "\xe2\xb4\x8c",
147
-		"\xe1\x82\xad" => "\xe2\xb4\x8d",		"\xe1\x82\xae" => "\xe2\xb4\x8e",		"\xe1\x82\xaf" => "\xe2\xb4\x8f",		"\xe1\x82\xb0" => "\xe2\xb4\x90",
148
-		"\xe1\x82\xb1" => "\xe2\xb4\x91",		"\xe1\x82\xb2" => "\xe2\xb4\x92",		"\xe1\x82\xb3" => "\xe2\xb4\x93",		"\xe1\x82\xb4" => "\xe2\xb4\x94",
149
-		"\xe1\x82\xb5" => "\xe2\xb4\x95",		"\xe1\x82\xb6" => "\xe2\xb4\x96",		"\xe1\x82\xb7" => "\xe2\xb4\x97",		"\xe1\x82\xb8" => "\xe2\xb4\x98",
150
-		"\xe1\x82\xb9" => "\xe2\xb4\x99",		"\xe1\x82\xba" => "\xe2\xb4\x9a",		"\xe1\x82\xbb" => "\xe2\xb4\x9b",		"\xe1\x82\xbc" => "\xe2\xb4\x9c",
151
-		"\xe1\x82\xbd" => "\xe2\xb4\x9d",		"\xe1\x82\xbe" => "\xe2\xb4\x9e",		"\xe1\x82\xbf" => "\xe2\xb4\x9f",		"\xe1\x83\x80" => "\xe2\xb4\xa0",
152
-		"\xe1\x83\x81" => "\xe2\xb4\xa1",		"\xe1\x83\x82" => "\xe2\xb4\xa2",		"\xe1\x83\x83" => "\xe2\xb4\xa3",		"\xe1\x83\x84" => "\xe2\xb4\xa4",
153
-		"\xe1\x83\x85" => "\xe2\xb4\xa5",		"\xe1\xb8\x80" => "\xe1\xb8\x81",		"\xe1\xb8\x82" => "\xe1\xb8\x83",		"\xe1\xb8\x84" => "\xe1\xb8\x85",
154
-		"\xe1\xb8\x86" => "\xe1\xb8\x87",		"\xe1\xb8\x88" => "\xe1\xb8\x89",		"\xe1\xb8\x8a" => "\xe1\xb8\x8b",		"\xe1\xb8\x8c" => "\xe1\xb8\x8d",
155
-		"\xe1\xb8\x8e" => "\xe1\xb8\x8f",		"\xe1\xb8\x90" => "\xe1\xb8\x91",		"\xe1\xb8\x92" => "\xe1\xb8\x93",		"\xe1\xb8\x94" => "\xe1\xb8\x95",
156
-		"\xe1\xb8\x96" => "\xe1\xb8\x97",		"\xe1\xb8\x98" => "\xe1\xb8\x99",		"\xe1\xb8\x9a" => "\xe1\xb8\x9b",		"\xe1\xb8\x9c" => "\xe1\xb8\x9d",
157
-		"\xe1\xb8\x9e" => "\xe1\xb8\x9f",		"\xe1\xb8\xa0" => "\xe1\xb8\xa1",		"\xe1\xb8\xa2" => "\xe1\xb8\xa3",		"\xe1\xb8\xa4" => "\xe1\xb8\xa5",
158
-		"\xe1\xb8\xa6" => "\xe1\xb8\xa7",		"\xe1\xb8\xa8" => "\xe1\xb8\xa9",		"\xe1\xb8\xaa" => "\xe1\xb8\xab",		"\xe1\xb8\xac" => "\xe1\xb8\xad",
159
-		"\xe1\xb8\xae" => "\xe1\xb8\xaf",		"\xe1\xb8\xb0" => "\xe1\xb8\xb1",		"\xe1\xb8\xb2" => "\xe1\xb8\xb3",		"\xe1\xb8\xb4" => "\xe1\xb8\xb5",
160
-		"\xe1\xb8\xb6" => "\xe1\xb8\xb7",		"\xe1\xb8\xb8" => "\xe1\xb8\xb9",		"\xe1\xb8\xba" => "\xe1\xb8\xbb",		"\xe1\xb8\xbc" => "\xe1\xb8\xbd",
161
-		"\xe1\xb8\xbe" => "\xe1\xb8\xbf",		"\xe1\xb9\x80" => "\xe1\xb9\x81",		"\xe1\xb9\x82" => "\xe1\xb9\x83",		"\xe1\xb9\x84" => "\xe1\xb9\x85",
162
-		"\xe1\xb9\x86" => "\xe1\xb9\x87",		"\xe1\xb9\x88" => "\xe1\xb9\x89",		"\xe1\xb9\x8a" => "\xe1\xb9\x8b",		"\xe1\xb9\x8c" => "\xe1\xb9\x8d",
163
-		"\xe1\xb9\x8e" => "\xe1\xb9\x8f",		"\xe1\xb9\x90" => "\xe1\xb9\x91",		"\xe1\xb9\x92" => "\xe1\xb9\x93",		"\xe1\xb9\x94" => "\xe1\xb9\x95",
164
-		"\xe1\xb9\x96" => "\xe1\xb9\x97",		"\xe1\xb9\x98" => "\xe1\xb9\x99",		"\xe1\xb9\x9a" => "\xe1\xb9\x9b",		"\xe1\xb9\x9c" => "\xe1\xb9\x9d",
165
-		"\xe1\xb9\x9e" => "\xe1\xb9\x9f",		"\xe1\xb9\xa0" => "\xe1\xb9\xa1",		"\xe1\xb9\xa2" => "\xe1\xb9\xa3",		"\xe1\xb9\xa4" => "\xe1\xb9\xa5",
166
-		"\xe1\xb9\xa6" => "\xe1\xb9\xa7",		"\xe1\xb9\xa8" => "\xe1\xb9\xa9",		"\xe1\xb9\xaa" => "\xe1\xb9\xab",		"\xe1\xb9\xac" => "\xe1\xb9\xad",
167
-		"\xe1\xb9\xae" => "\xe1\xb9\xaf",		"\xe1\xb9\xb0" => "\xe1\xb9\xb1",		"\xe1\xb9\xb2" => "\xe1\xb9\xb3",		"\xe1\xb9\xb4" => "\xe1\xb9\xb5",
168
-		"\xe1\xb9\xb6" => "\xe1\xb9\xb7",		"\xe1\xb9\xb8" => "\xe1\xb9\xb9",		"\xe1\xb9\xba" => "\xe1\xb9\xbb",		"\xe1\xb9\xbc" => "\xe1\xb9\xbd",
169
-		"\xe1\xb9\xbe" => "\xe1\xb9\xbf",		"\xe1\xba\x80" => "\xe1\xba\x81",		"\xe1\xba\x82" => "\xe1\xba\x83",		"\xe1\xba\x84" => "\xe1\xba\x85",
170
-		"\xe1\xba\x86" => "\xe1\xba\x87",		"\xe1\xba\x88" => "\xe1\xba\x89",		"\xe1\xba\x8a" => "\xe1\xba\x8b",		"\xe1\xba\x8c" => "\xe1\xba\x8d",
171
-		"\xe1\xba\x8e" => "\xe1\xba\x8f",		"\xe1\xba\x90" => "\xe1\xba\x91",		"\xe1\xba\x92" => "\xe1\xba\x93",		"\xe1\xba\x94" => "\xe1\xba\x95",
172
-		"\xe1\xba\x96" => "h\xcc\xb1",		"\xe1\xba\x97" => "t\xcc\x88",		"\xe1\xba\x98" => "w\xcc\x8a",		"\xe1\xba\x99" => "y\xcc\x8a",
173
-		"\xe1\xba\x9a" => "a\xca\xbe",	"\xe1\xba\x9b" => "\xe1\xb9\xa1",		"\xe1\xba\xa0" => "\xe1\xba\xa1",		"\xe1\xba\xa2" => "\xe1\xba\xa3",
174
-		"\xe1\xba\xa4" => "\xe1\xba\xa5",		"\xe1\xba\xa6" => "\xe1\xba\xa7",		"\xe1\xba\xa8" => "\xe1\xba\xa9",		"\xe1\xba\xaa" => "\xe1\xba\xab",
175
-		"\xe1\xba\xac" => "\xe1\xba\xad",		"\xe1\xba\xae" => "\xe1\xba\xaf",		"\xe1\xba\xb0" => "\xe1\xba\xb1",		"\xe1\xba\xb2" => "\xe1\xba\xb3",
176
-		"\xe1\xba\xb4" => "\xe1\xba\xb5",		"\xe1\xba\xb6" => "\xe1\xba\xb7",		"\xe1\xba\xb8" => "\xe1\xba\xb9",		"\xe1\xba\xba" => "\xe1\xba\xbb",
177
-		"\xe1\xba\xbc" => "\xe1\xba\xbd",		"\xe1\xba\xbe" => "\xe1\xba\xbf",		"\xe1\xbb\x80" => "\xe1\xbb\x81",		"\xe1\xbb\x82" => "\xe1\xbb\x83",
178
-		"\xe1\xbb\x84" => "\xe1\xbb\x85",		"\xe1\xbb\x86" => "\xe1\xbb\x87",		"\xe1\xbb\x88" => "\xe1\xbb\x89",		"\xe1\xbb\x8a" => "\xe1\xbb\x8b",
179
-		"\xe1\xbb\x8c" => "\xe1\xbb\x8d",		"\xe1\xbb\x8e" => "\xe1\xbb\x8f",		"\xe1\xbb\x90" => "\xe1\xbb\x91",		"\xe1\xbb\x92" => "\xe1\xbb\x93",
180
-		"\xe1\xbb\x94" => "\xe1\xbb\x95",		"\xe1\xbb\x96" => "\xe1\xbb\x97",		"\xe1\xbb\x98" => "\xe1\xbb\x99",		"\xe1\xbb\x9a" => "\xe1\xbb\x9b",
181
-		"\xe1\xbb\x9c" => "\xe1\xbb\x9d",		"\xe1\xbb\x9e" => "\xe1\xbb\x9f",		"\xe1\xbb\xa0" => "\xe1\xbb\xa1",		"\xe1\xbb\xa2" => "\xe1\xbb\xa3",
182
-		"\xe1\xbb\xa4" => "\xe1\xbb\xa5",		"\xe1\xbb\xa6" => "\xe1\xbb\xa7",		"\xe1\xbb\xa8" => "\xe1\xbb\xa9",		"\xe1\xbb\xaa" => "\xe1\xbb\xab",
183
-		"\xe1\xbb\xac" => "\xe1\xbb\xad",		"\xe1\xbb\xae" => "\xe1\xbb\xaf",		"\xe1\xbb\xb0" => "\xe1\xbb\xb1",		"\xe1\xbb\xb2" => "\xe1\xbb\xb3",
184
-		"\xe1\xbb\xb4" => "\xe1\xbb\xb5",		"\xe1\xbb\xb6" => "\xe1\xbb\xb7",		"\xe1\xbb\xb8" => "\xe1\xbb\xb9",		"\xe1\xbc\x88" => "\xe1\xbc\x80",
185
-		"\xe1\xbc\x89" => "\xe1\xbc\x81",		"\xe1\xbc\x8a" => "\xe1\xbc\x82",		"\xe1\xbc\x8b" => "\xe1\xbc\x83",		"\xe1\xbc\x8c" => "\xe1\xbc\x84",
186
-		"\xe1\xbc\x8d" => "\xe1\xbc\x85",		"\xe1\xbc\x8e" => "\xe1\xbc\x86",		"\xe1\xbc\x8f" => "\xe1\xbc\x87",		"\xe1\xbc\x98" => "\xe1\xbc\x90",
187
-		"\xe1\xbc\x99" => "\xe1\xbc\x91",		"\xe1\xbc\x9a" => "\xe1\xbc\x92",		"\xe1\xbc\x9b" => "\xe1\xbc\x93",		"\xe1\xbc\x9c" => "\xe1\xbc\x94",
188
-		"\xe1\xbc\x9d" => "\xe1\xbc\x95",		"\xe1\xbc\xa8" => "\xe1\xbc\xa0",		"\xe1\xbc\xa9" => "\xe1\xbc\xa1",		"\xe1\xbc\xaa" => "\xe1\xbc\xa2",
189
-		"\xe1\xbc\xab" => "\xe1\xbc\xa3",		"\xe1\xbc\xac" => "\xe1\xbc\xa4",		"\xe1\xbc\xad" => "\xe1\xbc\xa5",		"\xe1\xbc\xae" => "\xe1\xbc\xa6",
190
-		"\xe1\xbc\xaf" => "\xe1\xbc\xa7",		"\xe1\xbc\xb8" => "\xe1\xbc\xb0",		"\xe1\xbc\xb9" => "\xe1\xbc\xb1",		"\xe1\xbc\xba" => "\xe1\xbc\xb2",
191
-		"\xe1\xbc\xbb" => "\xe1\xbc\xb3",		"\xe1\xbc\xbc" => "\xe1\xbc\xb4",		"\xe1\xbc\xbd" => "\xe1\xbc\xb5",		"\xe1\xbc\xbe" => "\xe1\xbc\xb6",
192
-		"\xe1\xbc\xbf" => "\xe1\xbc\xb7",		"\xe1\xbd\x88" => "\xe1\xbd\x80",		"\xe1\xbd\x89" => "\xe1\xbd\x81",		"\xe1\xbd\x8a" => "\xe1\xbd\x82",
193
-		"\xe1\xbd\x8b" => "\xe1\xbd\x83",		"\xe1\xbd\x8c" => "\xe1\xbd\x84",		"\xe1\xbd\x8d" => "\xe1\xbd\x85",		"\xe1\xbd\x90" => "\xcf\x85\xcc\x93",
194
-		"\xe1\xbd\x92" => "\xcf\x85\xcc\x93\xcc\x80",	"\xe1\xbd\x94" => "\xcf\x85\xcc\x93\xcc\x81",	"\xe1\xbd\x96" => "\xcf\x85\xcc\x93\xcd\x82",		"\xe1\xbd\x99" => "\xe1\xbd\x91",
195
-		"\xe1\xbd\x9b" => "\xe1\xbd\x93",		"\xe1\xbd\x9d" => "\xe1\xbd\x95",		"\xe1\xbd\x9f" => "\xe1\xbd\x97",		"\xe1\xbd\xa8" => "\xe1\xbd\xa0",
196
-		"\xe1\xbd\xa9" => "\xe1\xbd\xa1",		"\xe1\xbd\xaa" => "\xe1\xbd\xa2",		"\xe1\xbd\xab" => "\xe1\xbd\xa3",		"\xe1\xbd\xac" => "\xe1\xbd\xa4",
197
-		"\xe1\xbd\xad" => "\xe1\xbd\xa5",		"\xe1\xbd\xae" => "\xe1\xbd\xa6",		"\xe1\xbd\xaf" => "\xe1\xbd\xa7",		"\xe1\xbe\x80" => "\xe1\xbc\x80\xce\xb9",
198
-		"\xe1\xbe\x81" => "\xe1\xbc\x81\xce\xb9",	"\xe1\xbe\x82" => "\xe1\xbc\x82\xce\xb9",	"\xe1\xbe\x83" => "\xe1\xbc\x83\xce\xb9",	"\xe1\xbe\x84" => "\xe1\xbc\x84\xce\xb9",
199
-		"\xe1\xbe\x85" => "\xe1\xbc\x85\xce\xb9",	"\xe1\xbe\x86" => "\xe1\xbc\x86\xce\xb9",	"\xe1\xbe\x87" => "\xe1\xbc\x87\xce\xb9",	"\xe1\xbe\x88" => "\xe1\xbe\x80",
200
-		"\xe1\xbe\x89" => "\xe1\xbe\x81",		"\xe1\xbe\x8a" => "\xe1\xbe\x82",		"\xe1\xbe\x8b" => "\xe1\xbe\x83",		"\xe1\xbe\x8c" => "\xe1\xbe\x84",
201
-		"\xe1\xbe\x8d" => "\xe1\xbe\x85",		"\xe1\xbe\x8e" => "\xe1\xbe\x86",		"\xe1\xbe\x8f" => "\xe1\xbe\x87",		"\xe1\xbe\x90" => "\xe1\xbc\xa0\xce\xb9",
202
-		"\xe1\xbe\x91" => "\xe1\xbc\xa1\xce\xb9",	"\xe1\xbe\x92" => "\xe1\xbc\xa2\xce\xb9",	"\xe1\xbe\x93" => "\xe1\xbc\xa3\xce\xb9",	"\xe1\xbe\x94" => "\xe1\xbc\xa4\xce\xb9",
203
-		"\xe1\xbe\x95" => "\xe1\xbc\xa5\xce\xb9",	"\xe1\xbe\x96" => "\xe1\xbc\xa6\xce\xb9",	"\xe1\xbe\x97" => "\xe1\xbc\xa7\xce\xb9",	"\xe1\xbe\x98" => "\xe1\xbe\x90",
204
-		"\xe1\xbe\x99" => "\xe1\xbe\x91",		"\xe1\xbe\x9a" => "\xe1\xbe\x92",		"\xe1\xbe\x9b" => "\xe1\xbe\x93",		"\xe1\xbe\x9c" => "\xe1\xbe\x94",
205
-		"\xe1\xbe\x9d" => "\xe1\xbe\x95",		"\xe1\xbe\x9e" => "\xe1\xbe\x96",		"\xe1\xbe\x9f" => "\xe1\xbe\x97",		"\xe1\xbe\xa0" => "\xe1\xbd\xa0\xce\xb9",
206
-		"\xe1\xbe\xa1" => "\xe1\xbd\xa1\xce\xb9",	"\xe1\xbe\xa2" => "\xe1\xbd\xa2\xce\xb9",	"\xe1\xbe\xa3" => "\xe1\xbd\xa3\xce\xb9",	"\xe1\xbe\xa4" => "\xe1\xbd\xa4\xce\xb9",
207
-		"\xe1\xbe\xa5" => "\xe1\xbd\xa5\xce\xb9",	"\xe1\xbe\xa6" => "\xe1\xbd\xa6\xce\xb9",	"\xe1\xbe\xa7" => "\xe1\xbd\xa7\xce\xb9",	"\xe1\xbe\xa8" => "\xe1\xbe\xa0",
208
-		"\xe1\xbe\xa9" => "\xe1\xbe\xa1",		"\xe1\xbe\xaa" => "\xe1\xbe\xa2",		"\xe1\xbe\xab" => "\xe1\xbe\xa3",		"\xe1\xbe\xac" => "\xe1\xbe\xa4",
209
-		"\xe1\xbe\xad" => "\xe1\xbe\xa5",		"\xe1\xbe\xae" => "\xe1\xbe\xa6",		"\xe1\xbe\xaf" => "\xe1\xbe\xa7",		"\xe1\xbe\xb2" => "\xe1\xbd\xb0\xce\xb9",
210
-		"\xe1\xbe\xb3" => "\xce\xb1\xce\xb9",	"\xe1\xbe\xb4" => "\xce\xac\xce\xb9",	"\xe1\xbe\xb6" => "\xce\xb1\xcd\x82",		"\xe1\xbe\xb7" => "\xce\xb1\xcd\x82\xce\xb9",
211
-		"\xe1\xbe\xb8" => "\xe1\xbe\xb0",		"\xe1\xbe\xb9" => "\xe1\xbe\xb1",		"\xe1\xbe\xba" => "\xe1\xbd\xb0",		"\xe1\xbe\xbb" => "\xe1\xbd\xb1",
212
-		"\xe1\xbe\xbc" => "\xe1\xbe\xb3",		"\xe1\xbe\xbe" => "\xce\xb9",		"\xe1\xbf\x82" => "\xe1\xbd\xb4\xce\xb9",	"\xe1\xbf\x83" => "\xce\xb7\xce\xb9",
213
-		"\xe1\xbf\x84" => "\xce\xae\xce\xb9",	"\xe1\xbf\x86" => "\xce\xb7\xcd\x82",		"\xe1\xbf\x87" => "\xce\xb7\xcd\x82\xce\xb9",	"\xe1\xbf\x88" => "\xe1\xbd\xb2",
214
-		"\xe1\xbf\x89" => "\xe1\xbd\xb3",		"\xe1\xbf\x8a" => "\xe1\xbd\xb4",		"\xe1\xbf\x8b" => "\xe1\xbd\xb5",		"\xe1\xbf\x8c" => "\xe1\xbf\x83",
215
-		"\xe1\xbf\x92" => "\xce\xb9\xcc\x88\xcc\x80",	"\xe1\xbf\x93" => "\xce\xb9\xcc\x88\xcc\x81",	"\xe1\xbf\x96" => "\xce\xb9\xcd\x82",		"\xe1\xbf\x97" => "\xce\xb9\xcc\x88\xcd\x82",
216
-		"\xe1\xbf\x98" => "\xe1\xbf\x90",		"\xe1\xbf\x99" => "\xe1\xbf\x91",		"\xe1\xbf\x9a" => "\xe1\xbd\xb6",		"\xe1\xbf\x9b" => "\xe1\xbd\xb7",
217
-		"\xe1\xbf\xa2" => "\xcf\x85\xcc\x88\xcc\x80",	"\xe1\xbf\xa3" => "\xcf\x85\xcc\x88\xcc\x81",	"\xe1\xbf\xa4" => "\xcf\x81\xcc\x93",		"\xe1\xbf\xa6" => "\xcf\x85\xcd\x82",
218
-		"\xe1\xbf\xa7" => "\xcf\x85\xcc\x88\xcd\x82",		"\xe1\xbf\xa8" => "\xe1\xbf\xa0",		"\xe1\xbf\xa9" => "\xe1\xbf\xa1",		"\xe1\xbf\xaa" => "\xe1\xbd\xba",
219
-		"\xe1\xbf\xab" => "\xe1\xbd\xbb",		"\xe1\xbf\xac" => "\xe1\xbf\xa5",		"\xe1\xbf\xb2" => "\xe1\xbd\xbc\xce\xb9",	"\xe1\xbf\xb3" => "\xcf\x89\xce\xb9",
220
-		"\xe1\xbf\xb4" => "\xcf\x8e\xce\xb9",	"\xe1\xbf\xb6" => "\xcf\x89\xcd\x82",		"\xe1\xbf\xb7" => "\xcf\x89\xcd\x82\xce\xb9",	"\xe1\xbf\xb8" => "\xe1\xbd\xb8",
221
-		"\xe1\xbf\xb9" => "\xe1\xbd\xb9",		"\xe1\xbf\xba" => "\xe1\xbd\xbc",		"\xe1\xbf\xbb" => "\xe1\xbd\xbd",		"\xe1\xbf\xbc" => "\xe1\xbf\xb3",
222
-		"\xe2\x84\xa6" => "\xcf\x89",		"\xe2\x84\xaa" => "k",		"\xe2\x84\xab" => "\xc3\xa5",		"\xe2\x84\xb2" => "\xe2\x85\x8e",
223
-		"\xe2\x85\xa0" => "\xe2\x85\xb0",		"\xe2\x85\xa1" => "\xe2\x85\xb1",		"\xe2\x85\xa2" => "\xe2\x85\xb2",		"\xe2\x85\xa3" => "\xe2\x85\xb3",
224
-		"\xe2\x85\xa4" => "\xe2\x85\xb4",		"\xe2\x85\xa5" => "\xe2\x85\xb5",		"\xe2\x85\xa6" => "\xe2\x85\xb6",		"\xe2\x85\xa7" => "\xe2\x85\xb7",
225
-		"\xe2\x85\xa8" => "\xe2\x85\xb8",		"\xe2\x85\xa9" => "\xe2\x85\xb9",		"\xe2\x85\xaa" => "\xe2\x85\xba",		"\xe2\x85\xab" => "\xe2\x85\xbb",
226
-		"\xe2\x85\xac" => "\xe2\x85\xbc",		"\xe2\x85\xad" => "\xe2\x85\xbd",		"\xe2\x85\xae" => "\xe2\x85\xbe",		"\xe2\x85\xaf" => "\xe2\x85\xbf",
227
-		"\xe2\x86\x83" => "\xe2\x86\x84",		"\xe2\x92\xb6" => "\xe2\x93\x90",		"\xe2\x92\xb7" => "\xe2\x93\x91",		"\xe2\x92\xb8" => "\xe2\x93\x92",
228
-		"\xe2\x92\xb9" => "\xe2\x93\x93",		"\xe2\x92\xba" => "\xe2\x93\x94",		"\xe2\x92\xbb" => "\xe2\x93\x95",		"\xe2\x92\xbc" => "\xe2\x93\x96",
229
-		"\xe2\x92\xbd" => "\xe2\x93\x97",		"\xe2\x92\xbe" => "\xe2\x93\x98",		"\xe2\x92\xbf" => "\xe2\x93\x99",		"\xe2\x93\x80" => "\xe2\x93\x9a",
230
-		"\xe2\x93\x81" => "\xe2\x93\x9b",		"\xe2\x93\x82" => "\xe2\x93\x9c",		"\xe2\x93\x83" => "\xe2\x93\x9d",		"\xe2\x93\x84" => "\xe2\x93\x9e",
231
-		"\xe2\x93\x85" => "\xe2\x93\x9f",		"\xe2\x93\x86" => "\xe2\x93\xa0",		"\xe2\x93\x87" => "\xe2\x93\xa1",		"\xe2\x93\x88" => "\xe2\x93\xa2",
232
-		"\xe2\x93\x89" => "\xe2\x93\xa3",		"\xe2\x93\x8a" => "\xe2\x93\xa4",		"\xe2\x93\x8b" => "\xe2\x93\xa5",		"\xe2\x93\x8c" => "\xe2\x93\xa6",
233
-		"\xe2\x93\x8d" => "\xe2\x93\xa7",		"\xe2\x93\x8e" => "\xe2\x93\xa8",		"\xe2\x93\x8f" => "\xe2\x93\xa9",		"\xe2\xb0\x80" => "\xe2\xb0\xb0",
234
-		"\xe2\xb0\x81" => "\xe2\xb0\xb1",		"\xe2\xb0\x82" => "\xe2\xb0\xb2",		"\xe2\xb0\x83" => "\xe2\xb0\xb3",		"\xe2\xb0\x84" => "\xe2\xb0\xb4",
235
-		"\xe2\xb0\x85" => "\xe2\xb0\xb5",		"\xe2\xb0\x86" => "\xe2\xb0\xb6",		"\xe2\xb0\x87" => "\xe2\xb0\xb7",		"\xe2\xb0\x88" => "\xe2\xb0\xb8",
236
-		"\xe2\xb0\x89" => "\xe2\xb0\xb9",		"\xe2\xb0\x8a" => "\xe2\xb0\xba",		"\xe2\xb0\x8b" => "\xe2\xb0\xbb",		"\xe2\xb0\x8c" => "\xe2\xb0\xbc",
237
-		"\xe2\xb0\x8d" => "\xe2\xb0\xbd",		"\xe2\xb0\x8e" => "\xe2\xb0\xbe",		"\xe2\xb0\x8f" => "\xe2\xb0\xbf",		"\xe2\xb0\x90" => "\xe2\xb1\x80",
238
-		"\xe2\xb0\x91" => "\xe2\xb1\x81",		"\xe2\xb0\x92" => "\xe2\xb1\x82",		"\xe2\xb0\x93" => "\xe2\xb1\x83",		"\xe2\xb0\x94" => "\xe2\xb1\x84",
239
-		"\xe2\xb0\x95" => "\xe2\xb1\x85",		"\xe2\xb0\x96" => "\xe2\xb1\x86",		"\xe2\xb0\x97" => "\xe2\xb1\x87",		"\xe2\xb0\x98" => "\xe2\xb1\x88",
240
-		"\xe2\xb0\x99" => "\xe2\xb1\x89",		"\xe2\xb0\x9a" => "\xe2\xb1\x8a",		"\xe2\xb0\x9b" => "\xe2\xb1\x8b",		"\xe2\xb0\x9c" => "\xe2\xb1\x8c",
241
-		"\xe2\xb0\x9d" => "\xe2\xb1\x8d",		"\xe2\xb0\x9e" => "\xe2\xb1\x8e",		"\xe2\xb0\x9f" => "\xe2\xb1\x8f",		"\xe2\xb0\xa0" => "\xe2\xb1\x90",
242
-		"\xe2\xb0\xa1" => "\xe2\xb1\x91",		"\xe2\xb0\xa2" => "\xe2\xb1\x92",		"\xe2\xb0\xa3" => "\xe2\xb1\x93",		"\xe2\xb0\xa4" => "\xe2\xb1\x94",
243
-		"\xe2\xb0\xa5" => "\xe2\xb1\x95",		"\xe2\xb0\xa6" => "\xe2\xb1\x96",		"\xe2\xb0\xa7" => "\xe2\xb1\x97",		"\xe2\xb0\xa8" => "\xe2\xb1\x98",
244
-		"\xe2\xb0\xa9" => "\xe2\xb1\x99",		"\xe2\xb0\xaa" => "\xe2\xb1\x9a",		"\xe2\xb0\xab" => "\xe2\xb1\x9b",		"\xe2\xb0\xac" => "\xe2\xb1\x9c",
245
-		"\xe2\xb0\xad" => "\xe2\xb1\x9d",		"\xe2\xb0\xae" => "\xe2\xb1\x9e",		"\xe2\xb1\xa0" => "\xe2\xb1\xa1",		"\xe2\xb1\xa2" => "\xc9\xab",
246
-		"\xe2\xb1\xa3" => "\xe1\xb5\xbd",		"\xe2\xb1\xa4" => "\xc9\xbd",		"\xe2\xb1\xa7" => "\xe2\xb1\xa8",		"\xe2\xb1\xa9" => "\xe2\xb1\xaa",
247
-		"\xe2\xb1\xab" => "\xe2\xb1\xac",		"\xe2\xb1\xb5" => "\xe2\xb1\xb6",		"\xe2\xb2\x80" => "\xe2\xb2\x81",		"\xe2\xb2\x82" => "\xe2\xb2\x83",
248
-		"\xe2\xb2\x84" => "\xe2\xb2\x85",		"\xe2\xb2\x86" => "\xe2\xb2\x87",		"\xe2\xb2\x88" => "\xe2\xb2\x89",		"\xe2\xb2\x8a" => "\xe2\xb2\x8b",
249
-		"\xe2\xb2\x8c" => "\xe2\xb2\x8d",		"\xe2\xb2\x8e" => "\xe2\xb2\x8f",		"\xe2\xb2\x90" => "\xe2\xb2\x91",		"\xe2\xb2\x92" => "\xe2\xb2\x93",
250
-		"\xe2\xb2\x94" => "\xe2\xb2\x95",		"\xe2\xb2\x96" => "\xe2\xb2\x97",		"\xe2\xb2\x98" => "\xe2\xb2\x99",		"\xe2\xb2\x9a" => "\xe2\xb2\x9b",
251
-		"\xe2\xb2\x9c" => "\xe2\xb2\x9d",		"\xe2\xb2\x9e" => "\xe2\xb2\x9f",		"\xe2\xb2\xa0" => "\xe2\xb2\xa1",		"\xe2\xb2\xa2" => "\xe2\xb2\xa3",
252
-		"\xe2\xb2\xa4" => "\xe2\xb2\xa5",		"\xe2\xb2\xa6" => "\xe2\xb2\xa7",		"\xe2\xb2\xa8" => "\xe2\xb2\xa9",		"\xe2\xb2\xaa" => "\xe2\xb2\xab",
253
-		"\xe2\xb2\xac" => "\xe2\xb2\xad",		"\xe2\xb2\xae" => "\xe2\xb2\xaf",		"\xe2\xb2\xb0" => "\xe2\xb2\xb1",		"\xe2\xb2\xb2" => "\xe2\xb2\xb3",
254
-		"\xe2\xb2\xb4" => "\xe2\xb2\xb5",		"\xe2\xb2\xb6" => "\xe2\xb2\xb7",		"\xe2\xb2\xb8" => "\xe2\xb2\xb9",		"\xe2\xb2\xba" => "\xe2\xb2\xbb",
255
-		"\xe2\xb2\xbc" => "\xe2\xb2\xbd",		"\xe2\xb2\xbe" => "\xe2\xb2\xbf",		"\xe2\xb3\x80" => "\xe2\xb3\x81",		"\xe2\xb3\x82" => "\xe2\xb3\x83",
256
-		"\xe2\xb3\x84" => "\xe2\xb3\x85",		"\xe2\xb3\x86" => "\xe2\xb3\x87",		"\xe2\xb3\x88" => "\xe2\xb3\x89",		"\xe2\xb3\x8a" => "\xe2\xb3\x8b",
257
-		"\xe2\xb3\x8c" => "\xe2\xb3\x8d",		"\xe2\xb3\x8e" => "\xe2\xb3\x8f",		"\xe2\xb3\x90" => "\xe2\xb3\x91",		"\xe2\xb3\x92" => "\xe2\xb3\x93",
258
-		"\xe2\xb3\x94" => "\xe2\xb3\x95",		"\xe2\xb3\x96" => "\xe2\xb3\x97",		"\xe2\xb3\x98" => "\xe2\xb3\x99",		"\xe2\xb3\x9a" => "\xe2\xb3\x9b",
259
-		"\xe2\xb3\x9c" => "\xe2\xb3\x9d",		"\xe2\xb3\x9e" => "\xe2\xb3\x9f",		"\xe2\xb3\xa0" => "\xe2\xb3\xa1",		"\xe2\xb3\xa2" => "\xe2\xb3\xa3",
260
-		"\xef\xac\x80" => "ff",	"\xef\xac\x81" => "fi",	"\xef\xac\x82" => "fl",	"\xef\xac\x83" => "ffi",
261
-		"\xef\xac\x84" => "ffl",	"\xef\xac\x85" => "st",	"\xef\xac\x86" => "st",	"\xef\xac\x93" => "\xd5\xb4\xd5\xb6",
262
-		"\xef\xac\x94" => "\xd5\xb4\xd5\xa5",	"\xef\xac\x95" => "\xd5\xb4\xd5\xab",	"\xef\xac\x96" => "\xd5\xbe\xd5\xb6",	"\xef\xac\x97" => "\xd5\xb4\xd5\xad",
263
-		"\xef\xbc\xa1" => "\xef\xbd\x81",		"\xef\xbc\xa2" => "\xef\xbd\x82",		"\xef\xbc\xa3" => "\xef\xbd\x83",		"\xef\xbc\xa4" => "\xef\xbd\x84",
264
-		"\xef\xbc\xa5" => "\xef\xbd\x85",		"\xef\xbc\xa6" => "\xef\xbd\x86",		"\xef\xbc\xa7" => "\xef\xbd\x87",		"\xef\xbc\xa8" => "\xef\xbd\x88",
265
-		"\xef\xbc\xa9" => "\xef\xbd\x89",		"\xef\xbc\xaa" => "\xef\xbd\x8a",		"\xef\xbc\xab" => "\xef\xbd\x8b",		"\xef\xbc\xac" => "\xef\xbd\x8c",
266
-		"\xef\xbc\xad" => "\xef\xbd\x8d",	"\xef\xbc\xae" => "\xef\xbd\x8e",		"\xef\xbc\xaf" => "\xef\xbd\x8f",		"\xef\xbc\xb0" => "\xef\xbd\x90",
267
-		"\xef\xbc\xb1" => "\xef\xbd\x91",		"\xef\xbc\xb2" => "\xef\xbd\x92",		"\xef\xbc\xb3" => "\xef\xbd\x93",		"\xef\xbc\xb4" => "\xef\xbd\x94",
268
-		"\xef\xbc\xb5" => "\xef\xbd\x95",		"\xef\xbc\xb6" => "\xef\xbd\x96",		"\xef\xbc\xb7" => "\xef\xbd\x97",	"\xef\xbc\xb8" => "\xef\xbd\x98",
269
-		"\xef\xbc\xb9" => "\xef\xbd\x99",		"\xef\xbc\xba" => "\xef\xbd\x9a",		"\xf0\x90\x90\x80" => "\xf0\x90\x90\xa8",	"\xf0\x90\x90\x81" => "\xf0\x90\x90\xa9",
270
-		"\xf0\x90\x90\x82" => "\xf0\x90\x90\xaa",	"\xf0\x90\x90\x83" => "\xf0\x90\x90\xab",	"\xf0\x90\x90\x84" => "\xf0\x90\x90\xac",	"\xf0\x90\x90\x85" => "\xf0\x90\x90\xad",
271
-		"\xf0\x90\x90\x86" => "\xf0\x90\x90\xae",	"\xf0\x90\x90\x87" => "\xf0\x90\x90\xaf",	"\xf0\x90\x90\x88" => "\xf0\x90\x90\xb0",	"\xf0\x90\x90\x89" => "\xf0\x90\x90\xb1",
272
-		"\xf0\x90\x90\x8a" => "\xf0\x90\x90\xb2",	"\xf0\x90\x90\x8b" => "\xf0\x90\x90\xb3",	"\xf0\x90\x90\x8c" => "\xf0\x90\x90\xb4",	"\xf0\x90\x90\x8d" => "\xf0\x90\x90\xb5",
273
-		"\xf0\x90\x90\x8e" => "\xf0\x90\x90\xb6",	"\xf0\x90\x90\x8f" => "\xf0\x90\x90\xb7",	"\xf0\x90\x90\x90" => "\xf0\x90\x90\xb8",	"\xf0\x90\x90\x91" => "\xf0\x90\x90\xb9",
274
-		"\xf0\x90\x90\x92" => "\xf0\x90\x90\xba",	"\xf0\x90\x90\x93" => "\xf0\x90\x90\xbb",	"\xf0\x90\x90\x94" => "\xf0\x90\x90\xbc",	"\xf0\x90\x90\x95" => "\xf0\x90\x90\xbd",
275
-		"\xf0\x90\x90\x96" => "\xf0\x90\x90\xbe",	"\xf0\x90\x90\x97" => "\xf0\x90\x90\xbf",	"\xf0\x90\x90\x98" => "\xf0\x90\x91\x80",	"\xf0\x90\x90\x99" => "\xf0\x90\x91\x81",
276
-		"\xf0\x90\x90\x9a" => "\xf0\x90\x91\x82",	"\xf0\x90\x90\x9b" => "\xf0\x90\x91\x83",	"\xf0\x90\x90\x9c" => "\xf0\x90\x91\x84",	"\xf0\x90\x90\x9d" => "\xf0\x90\x91\x85",
277
-		"\xf0\x90\x90\x9e" => "\xf0\x90\x91\x86",	"\xf0\x90\x90\x9f" => "\xf0\x90\x91\x87",	"\xf0\x90\x90\xa0" => "\xf0\x90\x91\x88",	"\xf0\x90\x90\xa1" => "\xf0\x90\x91\x89",
278
-		"\xf0\x90\x90\xa2" => "\xf0\x90\x91\x8a",	"\xf0\x90\x90\xa3" => "\xf0\x90\x91\x8b",	"\xf0\x90\x90\xa4" => "\xf0\x90\x91\x8c",	"\xf0\x90\x90\xa5" => "\xf0\x90\x91\x8d",
279
-		"\xf0\x90\x91\x8e" => "\xf0\x90\x90\xa6",	"\xf0\x90\x91\x8f" => "\xf0\x90\x90\xa7",
27
+		'A' => 'a', 'B' => 'b', 'C' => 'c', 'D' => 'd',
28
+		'E' => 'e', 'F' => 'f', 'G' => 'g', 'H' => 'h',
29
+		'I' => 'i', 'J' => 'j', 'K' => 'k', 'L' => 'l',
30
+		'M' => 'm', 'N' => 'n', 'O' => 'o', 'P' => 'p',
31
+		'Q' => 'q', 'R' => 'r', 'S' => 's', 'T' => 't',
32
+		'U' => 'u', 'V' => 'v', 'W' => 'w', 'X' => 'x',
33
+		'Y' => 'y', 'Z' => 'z', "\xc2\xb5" => "\xce\xbc", "\xc3\x80" => "\xc3\xa0",
34
+		"\xc3\x81" => "\xc3\xa1", "\xc3\x82" => "\xc3\xa2", "\xc3\x83" => "\xc3\xa3", "\xc3\x84" => "\xc3\xa4",
35
+		"\xc3\x85" => "\xc3\xa5", "\xc3\x86" => "\xc3\xa6", "\xc3\x87" => "\xc3\xa7", "\xc3\x88" => "\xc3\xa8",
36
+		"\xc3\x89" => "\xc3\xa9", "\xc3\x8a" => "\xc3\xaa", "\xc3\x8b" => "\xc3\xab", "\xc3\x8c" => "\xc3\xac",
37
+		"\xc3\x8d" => "\xc3\xad", "\xc3\x8e" => "\xc3\xae", "\xc3\x8f" => "\xc3\xaf", "\xc3\x90" => "\xc3\xb0",
38
+		"\xc3\x91" => "\xc3\xb1", "\xc3\x92" => "\xc3\xb2", "\xc3\x93" => "\xc3\xb3", "\xc3\x94" => "\xc3\xb4",
39
+		"\xc3\x95" => "\xc3\xb5", "\xc3\x96" => "\xc3\xb6", "\xc3\x98" => "\xc3\xb8", "\xc3\x99" => "\xc3\xb9",
40
+		"\xc3\x9a" => "\xc3\xba", "\xc3\x9b" => "\xc3\xbb", "\xc3\x9c" => "\xc3\xbc", "\xc3\x9d" => "\xc3\xbd",
41
+		"\xc3\x9e" => "\xc3\xbe", "\xc3\x9f" => "ss", "\xc4\x80" => "\xc4\x81", "\xc4\x82" => "\xc4\x83",
42
+		"\xc4\x84" => "\xc4\x85", "\xc4\x86" => "\xc4\x87", "\xc4\x88" => "\xc4\x89", "\xc4\x8a" => "\xc4\x8b",
43
+		"\xc4\x8c" => "\xc4\x8d", "\xc4\x8e" => "\xc4\x8f", "\xc4\x90" => "\xc4\x91", "\xc4\x92" => "\xc4\x93",
44
+		"\xc4\x94" => "\xc4\x95", "\xc4\x96" => "\xc4\x97", "\xc4\x98" => "\xc4\x99", "\xc4\x9a" => "\xc4\x9b",
45
+		"\xc4\x9c" => "\xc4\x9d", "\xc4\x9e" => "\xc4\x9f", "\xc4\xa0" => "\xc4\xa1", "\xc4\xa2" => "\xc4\xa3",
46
+		"\xc4\xa4" => "\xc4\xa5", "\xc4\xa6" => "\xc4\xa7", "\xc4\xa8" => "\xc4\xa9", "\xc4\xaa" => "\xc4\xab",
47
+		"\xc4\xac" => "\xc4\xad", "\xc4\xae" => "\xc4\xaf", "\xc4\xb0" => "i\xcc\x87", "\xc4\xb2" => "\xc4\xb3",
48
+		"\xc4\xb4" => "\xc4\xb5", "\xc4\xb6" => "\xc4\xb7", "\xc4\xb9" => "\xc4\xba", "\xc4\xbb" => "\xc4\xbc",
49
+		"\xc4\xbd" => "\xc4\xbe", "\xc4\xbf" => "\xc5\x80", "\xc5\x81" => "\xc5\x82", "\xc5\x83" => "\xc5\x84",
50
+		"\xc5\x85" => "\xc5\x86", "\xc5\x87" => "\xc5\x88", "\xc5\x89" => "\xca\xbcn", "\xc5\x8a" => "\xc5\x8b",
51
+		"\xc5\x8c" => "\xc5\x8d", "\xc5\x8e" => "\xc5\x8f", "\xc5\x90" => "\xc5\x91", "\xc5\x92" => "\xc5\x93",
52
+		"\xc5\x94" => "\xc5\x95", "\xc5\x96" => "\xc5\x97", "\xc5\x98" => "\xc5\x99", "\xc5\x9a" => "\xc5\x9b",
53
+		"\xc5\x9c" => "\xc5\x9d", "\xc5\x9e" => "\xc5\x9f", "\xc5\xa0" => "\xc5\xa1", "\xc5\xa2" => "\xc5\xa3",
54
+		"\xc5\xa4" => "\xc5\xa5", "\xc5\xa6" => "\xc5\xa7", "\xc5\xa8" => "\xc5\xa9", "\xc5\xaa" => "\xc5\xab",
55
+		"\xc5\xac" => "\xc5\xad", "\xc5\xae" => "\xc5\xaf", "\xc5\xb0" => "\xc5\xb1", "\xc5\xb2" => "\xc5\xb3",
56
+		"\xc5\xb4" => "\xc5\xb5", "\xc5\xb6" => "\xc5\xb7", "\xc5\xb8" => "\xc3\xbf", "\xc5\xb9" => "\xc5\xba",
57
+		"\xc5\xbb" => "\xc5\xbc", "\xc5\xbd" => "\xc5\xbe", "\xc5\xbf" => "s", "\xc6\x81" => "\xc9\x93",
58
+		"\xc6\x82" => "\xc6\x83", "\xc6\x84" => "\xc6\x85", "\xc6\x86" => "\xc9\x94", "\xc6\x87" => "\xc6\x88",
59
+		"\xc6\x89" => "\xc9\x96", "\xc6\x8a" => "\xc9\x97", "\xc6\x8b" => "\xc6\x8c", "\xc6\x8e" => "\xc7\x9d",
60
+		"\xc6\x8f" => "\xc9\x99", "\xc6\x90" => "\xc9\x9b", "\xc6\x91" => "\xc6\x92", "\xc6\x93" => "\xc9\xa0",
61
+		"\xc6\x94" => "\xc9\xa3", "\xc6\x96" => "\xc9\xa9", "\xc6\x97" => "\xc9\xa8", "\xc6\x98" => "\xc6\x99",
62
+		"\xc6\x9c" => "\xc9\xaf", "\xc6\x9d" => "\xc9\xb2", "\xc6\x9f" => "\xc9\xb5", "\xc6\xa0" => "\xc6\xa1",
63
+		"\xc6\xa2" => "\xc6\xa3", "\xc6\xa4" => "\xc6\xa5", "\xc6\xa6" => "\xca\x80", "\xc6\xa7" => "\xc6\xa8",
64
+		"\xc6\xa9" => "\xca\x83", "\xc6\xac" => "\xc6\xad", "\xc6\xae" => "\xca\x88", "\xc6\xaf" => "\xc6\xb0",
65
+		"\xc6\xb1" => "\xca\x8a", "\xc6\xb2" => "\xca\x8b", "\xc6\xb3" => "\xc6\xb4", "\xc6\xb5" => "\xc6\xb6",
66
+		"\xc6\xb7" => "\xca\x92", "\xc6\xb8" => "\xc6\xb9", "\xc6\xbc" => "\xc6\xbd", "\xc7\x84" => "\xc7\x86",
67
+		"\xc7\x85" => "\xc7\x86", "\xc7\x87" => "\xc7\x89", "\xc7\x88" => "\xc7\x89", "\xc7\x8a" => "\xc7\x8c",
68
+		"\xc7\x8b" => "\xc7\x8c", "\xc7\x8d" => "\xc7\x8e", "\xc7\x8f" => "\xc7\x90", "\xc7\x91" => "\xc7\x92",
69
+		"\xc7\x93" => "\xc7\x94", "\xc7\x95" => "\xc7\x96", "\xc7\x97" => "\xc7\x98", "\xc7\x99" => "\xc7\x9a",
70
+		"\xc7\x9b" => "\xc7\x9c", "\xc7\x9e" => "\xc7\x9f", "\xc7\xa0" => "\xc7\xa1", "\xc7\xa2" => "\xc7\xa3",
71
+		"\xc7\xa4" => "\xc7\xa5", "\xc7\xa6" => "\xc7\xa7", "\xc7\xa8" => "\xc7\xa9", "\xc7\xaa" => "\xc7\xab",
72
+		"\xc7\xac" => "\xc7\xad", "\xc7\xae" => "\xc7\xaf", "\xc7\xb0" => "j\xcc\x8c", "\xc7\xb1" => "\xc7\xb3",
73
+		"\xc7\xb2" => "\xc7\xb3", "\xc7\xb4" => "\xc7\xb5", "\xc7\xb6" => "\xc6\x95", "\xc7\xb7" => "\xc6\xbf",
74
+		"\xc7\xb8" => "\xc7\xb9", "\xc7\xba" => "\xc7\xbb", "\xc7\xbc" => "\xc7\xbd", "\xc7\xbe" => "\xc7\xbf",
75
+		"\xc8\x80" => "\xc8\x81", "\xc8\x82" => "\xc8\x83", "\xc8\x84" => "\xc8\x85", "\xc8\x86" => "\xc8\x87",
76
+		"\xc8\x88" => "\xc8\x89", "\xc8\x8a" => "\xc8\x8b", "\xc8\x8c" => "\xc8\x8d", "\xc8\x8e" => "\xc8\x8f",
77
+		"\xc8\x90" => "\xc8\x91", "\xc8\x92" => "\xc8\x93", "\xc8\x94" => "\xc8\x95", "\xc8\x96" => "\xc8\x97",
78
+		"\xc8\x98" => "\xc8\x99", "\xc8\x9a" => "\xc8\x9b", "\xc8\x9c" => "\xc8\x9d", "\xc8\x9e" => "\xc8\x9f",
79
+		"\xc8\xa0" => "\xc6\x9e", "\xc8\xa2" => "\xc8\xa3", "\xc8\xa4" => "\xc8\xa5", "\xc8\xa6" => "\xc8\xa7",
80
+		"\xc8\xa8" => "\xc8\xa9", "\xc8\xaa" => "\xc8\xab", "\xc8\xac" => "\xc8\xad", "\xc8\xae" => "\xc8\xaf",
81
+		"\xc8\xb0" => "\xc8\xb1", "\xc8\xb2" => "\xc8\xb3", "\xc8\xba" => "\xe2\xb1\xa5", "\xc8\xbb" => "\xc8\xbc",
82
+		"\xc8\xbd" => "\xc6\x9a", "\xc8\xbe" => "\xe2\xb1\xa6", "\xc9\x81" => "\xc9\x82", "\xc9\x83" => "\xc6\x80",
83
+		"\xc9\x84" => "\xca\x89", "\xc9\x85" => "\xca\x8c", "\xc9\x86" => "\xc9\x87", "\xc9\x88" => "\xc9\x89",
84
+		"\xc9\x8a" => "\xc9\x8b", "\xc9\x8c" => "\xc9\x8d", "\xc9\x8e" => "\xc9\x8f", "\xcd\x85" => "\xce\xb9",
85
+		"\xce\x86" => "\xce\xac", "\xce\x88" => "\xce\xad", "\xce\x89" => "\xce\xae", "\xce\x8a" => "\xce\xaf",
86
+		"\xce\x8c" => "\xcf\x8c", "\xce\x8e" => "\xcf\x8d", "\xce\x8f" => "\xcf\x8e", "\xce\x90" => "\xce\xb9\xcc\x88\xcc\x81",
87
+		"\xce\x91" => "\xce\xb1", "\xce\x92" => "\xce\xb2", "\xce\x93" => "\xce\xb3", "\xce\x94" => "\xce\xb4",
88
+		"\xce\x95" => "\xce\xb5", "\xce\x96" => "\xce\xb6", "\xce\x97" => "\xce\xb7", "\xce\x98" => "\xce\xb8",
89
+		"\xce\x99" => "\xce\xb9", "\xce\x9a" => "\xce\xba", "\xce\x9b" => "\xce\xbb", "\xce\x9c" => "\xce\xbc",
90
+		"\xce\x9d" => "\xce\xbd", "\xce\x9e" => "\xce\xbe", "\xce\x9f" => "\xce\xbf", "\xce\xa0" => "\xcf\x80",
91
+		"\xce\xa1" => "\xcf\x81", "\xce\xa3" => "\xcf\x83", "\xce\xa4" => "\xcf\x84", "\xce\xa5" => "\xcf\x85",
92
+		"\xce\xa6" => "\xcf\x86", "\xce\xa7" => "\xcf\x87", "\xce\xa8" => "\xcf\x88", "\xce\xa9" => "\xcf\x89",
93
+		"\xce\xaa" => "\xcf\x8a", "\xce\xab" => "\xcf\x8b", "\xce\xb0" => "\xcf\x85\xcc\x88\xcc\x81", "\xcf\x82" => "\xcf\x83",
94
+		"\xcf\x90" => "\xce\xb2", "\xcf\x91" => "\xce\xb8", "\xcf\x95" => "\xcf\x86", "\xcf\x96" => "\xcf\x80",
95
+		"\xcf\x98" => "\xcf\x99", "\xcf\x9a" => "\xcf\x9b", "\xcf\x9c" => "\xcf\x9d", "\xcf\x9e" => "\xcf\x9f",
96
+		"\xcf\xa0" => "\xcf\xa1", "\xcf\xa2" => "\xcf\xa3", "\xcf\xa4" => "\xcf\xa5", "\xcf\xa6" => "\xcf\xa7",
97
+		"\xcf\xa8" => "\xcf\xa9", "\xcf\xaa" => "\xcf\xab", "\xcf\xac" => "\xcf\xad", "\xcf\xae" => "\xcf\xaf",
98
+		"\xcf\xb0" => "\xce\xba", "\xcf\xb1" => "\xcf\x81", "\xcf\xb4" => "\xce\xb8", "\xcf\xb5" => "\xce\xb5",
99
+		"\xcf\xb7" => "\xcf\xb8", "\xcf\xb9" => "\xcf\xb2", "\xcf\xba" => "\xcf\xbb", "\xcf\xbd" => "\xcd\xbb",
100
+		"\xcf\xbe" => "\xcd\xbc", "\xcf\xbf" => "\xcd\xbd", "\xd0\x80" => "\xd1\x90", "\xd0\x81" => "\xd1\x91",
101
+		"\xd0\x82" => "\xd1\x92", "\xd0\x83" => "\xd1\x93", "\xd0\x84" => "\xd1\x94", "\xd0\x85" => "\xd1\x95",
102
+		"\xd0\x86" => "\xd1\x96", "\xd0\x87" => "\xd1\x97", "\xd0\x88" => "\xd1\x98", "\xd0\x89" => "\xd1\x99",
103
+		"\xd0\x8a" => "\xd1\x9a", "\xd0\x8b" => "\xd1\x9b", "\xd0\x8c" => "\xd1\x9c", "\xd0\x8d" => "\xd1\x9d",
104
+		"\xd0\x8e" => "\xd1\x9e", "\xd0\x8f" => "\xd1\x9f", "\xd0\x90" => "\xd0\xb0", "\xd0\x91" => "\xd0\xb1",
105
+		"\xd0\x92" => "\xd0\xb2", "\xd0\x93" => "\xd0\xb3", "\xd0\x94" => "\xd0\xb4", "\xd0\x95" => "\xd0\xb5",
106
+		"\xd0\x96" => "\xd0\xb6", "\xd0\x97" => "\xd0\xb7", "\xd0\x98" => "\xd0\xb8", "\xd0\x99" => "\xd0\xb9",
107
+		"\xd0\x9a" => "\xd0\xba", "\xd0\x9b" => "\xd0\xbb", "\xd0\x9c" => "\xd0\xbc", "\xd0\x9d" => "\xd0\xbd",
108
+		"\xd0\x9e" => "\xd0\xbe", "\xd0\x9f" => "\xd0\xbf", "\xd0\xa0" => "\xd1\x80", "\xd0\xa1" => "\xd1\x81",
109
+		"\xd0\xa2" => "\xd1\x82", "\xd0\xa3" => "\xd1\x83", "\xd0\xa4" => "\xd1\x84", "\xd0\xa5" => "\xd1\x85",
110
+		"\xd0\xa6" => "\xd1\x86", "\xd0\xa7" => "\xd1\x87", "\xd0\xa8" => "\xd1\x88", "\xd0\xa9" => "\xd1\x89",
111
+		"\xd0\xaa" => "\xd1\x8a", "\xd0\xab" => "\xd1\x8b", "\xd0\xac" => "\xd1\x8c", "\xd0\xad" => "\xd1\x8d",
112
+		"\xd0\xae" => "\xd1\x8e", "\xd0\xaf" => "\xd1\x8f", "\xd1\xa0" => "\xd1\xa1", "\xd1\xa2" => "\xd1\xa3",
113
+		"\xd1\xa4" => "\xd1\xa5", "\xd1\xa6" => "\xd1\xa7", "\xd1\xa8" => "\xd1\xa9", "\xd1\xaa" => "\xd1\xab",
114
+		"\xd1\xac" => "\xd1\xad", "\xd1\xae" => "\xd1\xaf", "\xd1\xb0" => "\xd1\xb1", "\xd1\xb2" => "\xd1\xb3",
115
+		"\xd1\xb4" => "\xd1\xb5", "\xd1\xb6" => "\xd1\xb7", "\xd1\xb8" => "\xd1\xb9", "\xd1\xba" => "\xd1\xbb",
116
+		"\xd1\xbc" => "\xd1\xbd", "\xd1\xbe" => "\xd1\xbf", "\xd2\x80" => "\xd2\x81", "\xd2\x8a" => "\xd2\x8b",
117
+		"\xd2\x8c" => "\xd2\x8d", "\xd2\x8e" => "\xd2\x8f", "\xd2\x90" => "\xd2\x91", "\xd2\x92" => "\xd2\x93",
118
+		"\xd2\x94" => "\xd2\x95", "\xd2\x96" => "\xd2\x97", "\xd2\x98" => "\xd2\x99", "\xd2\x9a" => "\xd2\x9b",
119
+		"\xd2\x9c" => "\xd2\x9d", "\xd2\x9e" => "\xd2\x9f", "\xd2\xa0" => "\xd2\xa1", "\xd2\xa2" => "\xd2\xa3",
120
+		"\xd2\xa4" => "\xd2\xa5", "\xd2\xa6" => "\xd2\xa7", "\xd2\xa8" => "\xd2\xa9", "\xd2\xaa" => "\xd2\xab",
121
+		"\xd2\xac" => "\xd2\xad", "\xd2\xae" => "\xd2\xaf", "\xd2\xb0" => "\xd2\xb1", "\xd2\xb2" => "\xd2\xb3",
122
+		"\xd2\xb4" => "\xd2\xb5", "\xd2\xb6" => "\xd2\xb7", "\xd2\xb8" => "\xd2\xb9", "\xd2\xba" => "\xd2\xbb",
123
+		"\xd2\xbc" => "\xd2\xbd", "\xd2\xbe" => "\xd2\xbf", "\xd3\x80" => "\xd3\x8f", "\xd3\x81" => "\xd3\x82",
124
+		"\xd3\x83" => "\xd3\x84", "\xd3\x85" => "\xd3\x86", "\xd3\x87" => "\xd3\x88", "\xd3\x89" => "\xd3\x8a",
125
+		"\xd3\x8b" => "\xd3\x8c", "\xd3\x8d" => "\xd3\x8e", "\xd3\x90" => "\xd3\x91", "\xd3\x92" => "\xd3\x93",
126
+		"\xd3\x94" => "\xd3\x95", "\xd3\x96" => "\xd3\x97", "\xd3\x98" => "\xd3\x99", "\xd3\x9a" => "\xd3\x9b",
127
+		"\xd3\x9c" => "\xd3\x9d", "\xd3\x9e" => "\xd3\x9f", "\xd3\xa0" => "\xd3\xa1", "\xd3\xa2" => "\xd3\xa3",
128
+		"\xd3\xa4" => "\xd3\xa5", "\xd3\xa6" => "\xd3\xa7", "\xd3\xa8" => "\xd3\xa9", "\xd3\xaa" => "\xd3\xab",
129
+		"\xd3\xac" => "\xd3\xad", "\xd3\xae" => "\xd3\xaf", "\xd3\xb0" => "\xd3\xb1", "\xd3\xb2" => "\xd3\xb3",
130
+		"\xd3\xb4" => "\xd3\xb5", "\xd3\xb6" => "\xd3\xb7", "\xd3\xb8" => "\xd3\xb9", "\xd3\xba" => "\xd3\xbb",
131
+		"\xd3\xbc" => "\xd3\xbd", "\xd3\xbe" => "\xd3\xbf", "\xd4\x80" => "\xd4\x81", "\xd4\x82" => "\xd4\x83",
132
+		"\xd4\x84" => "\xd4\x85", "\xd4\x86" => "\xd4\x87", "\xd4\x88" => "\xd4\x89", "\xd4\x8a" => "\xd4\x8b",
133
+		"\xd4\x8c" => "\xd4\x8d", "\xd4\x8e" => "\xd4\x8f", "\xd4\x90" => "\xd4\x91", "\xd4\x92" => "\xd4\x93",
134
+		"\xd4\xb1" => "\xd5\xa1", "\xd4\xb2" => "\xd5\xa2", "\xd4\xb3" => "\xd5\xa3", "\xd4\xb4" => "\xd5\xa4",
135
+		"\xd4\xb5" => "\xd5\xa5", "\xd4\xb6" => "\xd5\xa6", "\xd4\xb7" => "\xd5\xa7", "\xd4\xb8" => "\xd5\xa8",
136
+		"\xd4\xb9" => "\xd5\xa9", "\xd4\xba" => "\xd5\xaa", "\xd4\xbb" => "\xd5\xab", "\xd4\xbc" => "\xd5\xac",
137
+		"\xd4\xbd" => "\xd5\xad", "\xd4\xbe" => "\xd5\xae", "\xd4\xbf" => "\xd5\xaf", "\xd5\x80" => "\xd5\xb0",
138
+		"\xd5\x81" => "\xd5\xb1", "\xd5\x82" => "\xd5\xb2", "\xd5\x83" => "\xd5\xb3", "\xd5\x84" => "\xd5\xb4",
139
+		"\xd5\x85" => "\xd5\xb5", "\xd5\x86" => "\xd5\xb6", "\xd5\x87" => "\xd5\xb7", "\xd5\x88" => "\xd5\xb8",
140
+		"\xd5\x89" => "\xd5\xb9", "\xd5\x8a" => "\xd5\xba", "\xd5\x8b" => "\xd5\xbb", "\xd5\x8c" => "\xd5\xbc",
141
+		"\xd5\x8d" => "\xd5\xbd", "\xd5\x8e" => "\xd5\xbe", "\xd5\x8f" => "\xd5\xbf", "\xd5\x90" => "\xd6\x80",
142
+		"\xd5\x91" => "\xd6\x81", "\xd5\x92" => "\xd6\x82", "\xd5\x93" => "\xd6\x83", "\xd5\x94" => "\xd6\x84",
143
+		"\xd5\x95" => "\xd6\x85", "\xd5\x96" => "\xd6\x86", "\xd6\x87" => "\xd5\xa5\xd6\x82", "\xe1\x82\xa0" => "\xe2\xb4\x80",
144
+		"\xe1\x82\xa1" => "\xe2\xb4\x81", "\xe1\x82\xa2" => "\xe2\xb4\x82", "\xe1\x82\xa3" => "\xe2\xb4\x83", "\xe1\x82\xa4" => "\xe2\xb4\x84",
145
+		"\xe1\x82\xa5" => "\xe2\xb4\x85", "\xe1\x82\xa6" => "\xe2\xb4\x86", "\xe1\x82\xa7" => "\xe2\xb4\x87", "\xe1\x82\xa8" => "\xe2\xb4\x88",
146
+		"\xe1\x82\xa9" => "\xe2\xb4\x89", "\xe1\x82\xaa" => "\xe2\xb4\x8a", "\xe1\x82\xab" => "\xe2\xb4\x8b", "\xe1\x82\xac" => "\xe2\xb4\x8c",
147
+		"\xe1\x82\xad" => "\xe2\xb4\x8d", "\xe1\x82\xae" => "\xe2\xb4\x8e", "\xe1\x82\xaf" => "\xe2\xb4\x8f", "\xe1\x82\xb0" => "\xe2\xb4\x90",
148
+		"\xe1\x82\xb1" => "\xe2\xb4\x91", "\xe1\x82\xb2" => "\xe2\xb4\x92", "\xe1\x82\xb3" => "\xe2\xb4\x93", "\xe1\x82\xb4" => "\xe2\xb4\x94",
149
+		"\xe1\x82\xb5" => "\xe2\xb4\x95", "\xe1\x82\xb6" => "\xe2\xb4\x96", "\xe1\x82\xb7" => "\xe2\xb4\x97", "\xe1\x82\xb8" => "\xe2\xb4\x98",
150
+		"\xe1\x82\xb9" => "\xe2\xb4\x99", "\xe1\x82\xba" => "\xe2\xb4\x9a", "\xe1\x82\xbb" => "\xe2\xb4\x9b", "\xe1\x82\xbc" => "\xe2\xb4\x9c",
151
+		"\xe1\x82\xbd" => "\xe2\xb4\x9d", "\xe1\x82\xbe" => "\xe2\xb4\x9e", "\xe1\x82\xbf" => "\xe2\xb4\x9f", "\xe1\x83\x80" => "\xe2\xb4\xa0",
152
+		"\xe1\x83\x81" => "\xe2\xb4\xa1", "\xe1\x83\x82" => "\xe2\xb4\xa2", "\xe1\x83\x83" => "\xe2\xb4\xa3", "\xe1\x83\x84" => "\xe2\xb4\xa4",
153
+		"\xe1\x83\x85" => "\xe2\xb4\xa5", "\xe1\xb8\x80" => "\xe1\xb8\x81", "\xe1\xb8\x82" => "\xe1\xb8\x83", "\xe1\xb8\x84" => "\xe1\xb8\x85",
154
+		"\xe1\xb8\x86" => "\xe1\xb8\x87", "\xe1\xb8\x88" => "\xe1\xb8\x89", "\xe1\xb8\x8a" => "\xe1\xb8\x8b", "\xe1\xb8\x8c" => "\xe1\xb8\x8d",
155
+		"\xe1\xb8\x8e" => "\xe1\xb8\x8f", "\xe1\xb8\x90" => "\xe1\xb8\x91", "\xe1\xb8\x92" => "\xe1\xb8\x93", "\xe1\xb8\x94" => "\xe1\xb8\x95",
156
+		"\xe1\xb8\x96" => "\xe1\xb8\x97", "\xe1\xb8\x98" => "\xe1\xb8\x99", "\xe1\xb8\x9a" => "\xe1\xb8\x9b", "\xe1\xb8\x9c" => "\xe1\xb8\x9d",
157
+		"\xe1\xb8\x9e" => "\xe1\xb8\x9f", "\xe1\xb8\xa0" => "\xe1\xb8\xa1", "\xe1\xb8\xa2" => "\xe1\xb8\xa3", "\xe1\xb8\xa4" => "\xe1\xb8\xa5",
158
+		"\xe1\xb8\xa6" => "\xe1\xb8\xa7", "\xe1\xb8\xa8" => "\xe1\xb8\xa9", "\xe1\xb8\xaa" => "\xe1\xb8\xab", "\xe1\xb8\xac" => "\xe1\xb8\xad",
159
+		"\xe1\xb8\xae" => "\xe1\xb8\xaf", "\xe1\xb8\xb0" => "\xe1\xb8\xb1", "\xe1\xb8\xb2" => "\xe1\xb8\xb3", "\xe1\xb8\xb4" => "\xe1\xb8\xb5",
160
+		"\xe1\xb8\xb6" => "\xe1\xb8\xb7", "\xe1\xb8\xb8" => "\xe1\xb8\xb9", "\xe1\xb8\xba" => "\xe1\xb8\xbb", "\xe1\xb8\xbc" => "\xe1\xb8\xbd",
161
+		"\xe1\xb8\xbe" => "\xe1\xb8\xbf", "\xe1\xb9\x80" => "\xe1\xb9\x81", "\xe1\xb9\x82" => "\xe1\xb9\x83", "\xe1\xb9\x84" => "\xe1\xb9\x85",
162
+		"\xe1\xb9\x86" => "\xe1\xb9\x87", "\xe1\xb9\x88" => "\xe1\xb9\x89", "\xe1\xb9\x8a" => "\xe1\xb9\x8b", "\xe1\xb9\x8c" => "\xe1\xb9\x8d",
163
+		"\xe1\xb9\x8e" => "\xe1\xb9\x8f", "\xe1\xb9\x90" => "\xe1\xb9\x91", "\xe1\xb9\x92" => "\xe1\xb9\x93", "\xe1\xb9\x94" => "\xe1\xb9\x95",
164
+		"\xe1\xb9\x96" => "\xe1\xb9\x97", "\xe1\xb9\x98" => "\xe1\xb9\x99", "\xe1\xb9\x9a" => "\xe1\xb9\x9b", "\xe1\xb9\x9c" => "\xe1\xb9\x9d",
165
+		"\xe1\xb9\x9e" => "\xe1\xb9\x9f", "\xe1\xb9\xa0" => "\xe1\xb9\xa1", "\xe1\xb9\xa2" => "\xe1\xb9\xa3", "\xe1\xb9\xa4" => "\xe1\xb9\xa5",
166
+		"\xe1\xb9\xa6" => "\xe1\xb9\xa7", "\xe1\xb9\xa8" => "\xe1\xb9\xa9", "\xe1\xb9\xaa" => "\xe1\xb9\xab", "\xe1\xb9\xac" => "\xe1\xb9\xad",
167
+		"\xe1\xb9\xae" => "\xe1\xb9\xaf", "\xe1\xb9\xb0" => "\xe1\xb9\xb1", "\xe1\xb9\xb2" => "\xe1\xb9\xb3", "\xe1\xb9\xb4" => "\xe1\xb9\xb5",
168
+		"\xe1\xb9\xb6" => "\xe1\xb9\xb7", "\xe1\xb9\xb8" => "\xe1\xb9\xb9", "\xe1\xb9\xba" => "\xe1\xb9\xbb", "\xe1\xb9\xbc" => "\xe1\xb9\xbd",
169
+		"\xe1\xb9\xbe" => "\xe1\xb9\xbf", "\xe1\xba\x80" => "\xe1\xba\x81", "\xe1\xba\x82" => "\xe1\xba\x83", "\xe1\xba\x84" => "\xe1\xba\x85",
170
+		"\xe1\xba\x86" => "\xe1\xba\x87", "\xe1\xba\x88" => "\xe1\xba\x89", "\xe1\xba\x8a" => "\xe1\xba\x8b", "\xe1\xba\x8c" => "\xe1\xba\x8d",
171
+		"\xe1\xba\x8e" => "\xe1\xba\x8f", "\xe1\xba\x90" => "\xe1\xba\x91", "\xe1\xba\x92" => "\xe1\xba\x93", "\xe1\xba\x94" => "\xe1\xba\x95",
172
+		"\xe1\xba\x96" => "h\xcc\xb1", "\xe1\xba\x97" => "t\xcc\x88", "\xe1\xba\x98" => "w\xcc\x8a", "\xe1\xba\x99" => "y\xcc\x8a",
173
+		"\xe1\xba\x9a" => "a\xca\xbe", "\xe1\xba\x9b" => "\xe1\xb9\xa1", "\xe1\xba\xa0" => "\xe1\xba\xa1", "\xe1\xba\xa2" => "\xe1\xba\xa3",
174
+		"\xe1\xba\xa4" => "\xe1\xba\xa5", "\xe1\xba\xa6" => "\xe1\xba\xa7", "\xe1\xba\xa8" => "\xe1\xba\xa9", "\xe1\xba\xaa" => "\xe1\xba\xab",
175
+		"\xe1\xba\xac" => "\xe1\xba\xad", "\xe1\xba\xae" => "\xe1\xba\xaf", "\xe1\xba\xb0" => "\xe1\xba\xb1", "\xe1\xba\xb2" => "\xe1\xba\xb3",
176
+		"\xe1\xba\xb4" => "\xe1\xba\xb5", "\xe1\xba\xb6" => "\xe1\xba\xb7", "\xe1\xba\xb8" => "\xe1\xba\xb9", "\xe1\xba\xba" => "\xe1\xba\xbb",
177
+		"\xe1\xba\xbc" => "\xe1\xba\xbd", "\xe1\xba\xbe" => "\xe1\xba\xbf", "\xe1\xbb\x80" => "\xe1\xbb\x81", "\xe1\xbb\x82" => "\xe1\xbb\x83",
178
+		"\xe1\xbb\x84" => "\xe1\xbb\x85", "\xe1\xbb\x86" => "\xe1\xbb\x87", "\xe1\xbb\x88" => "\xe1\xbb\x89", "\xe1\xbb\x8a" => "\xe1\xbb\x8b",
179
+		"\xe1\xbb\x8c" => "\xe1\xbb\x8d", "\xe1\xbb\x8e" => "\xe1\xbb\x8f", "\xe1\xbb\x90" => "\xe1\xbb\x91", "\xe1\xbb\x92" => "\xe1\xbb\x93",
180
+		"\xe1\xbb\x94" => "\xe1\xbb\x95", "\xe1\xbb\x96" => "\xe1\xbb\x97", "\xe1\xbb\x98" => "\xe1\xbb\x99", "\xe1\xbb\x9a" => "\xe1\xbb\x9b",
181
+		"\xe1\xbb\x9c" => "\xe1\xbb\x9d", "\xe1\xbb\x9e" => "\xe1\xbb\x9f", "\xe1\xbb\xa0" => "\xe1\xbb\xa1", "\xe1\xbb\xa2" => "\xe1\xbb\xa3",
182
+		"\xe1\xbb\xa4" => "\xe1\xbb\xa5", "\xe1\xbb\xa6" => "\xe1\xbb\xa7", "\xe1\xbb\xa8" => "\xe1\xbb\xa9", "\xe1\xbb\xaa" => "\xe1\xbb\xab",
183
+		"\xe1\xbb\xac" => "\xe1\xbb\xad", "\xe1\xbb\xae" => "\xe1\xbb\xaf", "\xe1\xbb\xb0" => "\xe1\xbb\xb1", "\xe1\xbb\xb2" => "\xe1\xbb\xb3",
184
+		"\xe1\xbb\xb4" => "\xe1\xbb\xb5", "\xe1\xbb\xb6" => "\xe1\xbb\xb7", "\xe1\xbb\xb8" => "\xe1\xbb\xb9", "\xe1\xbc\x88" => "\xe1\xbc\x80",
185
+		"\xe1\xbc\x89" => "\xe1\xbc\x81", "\xe1\xbc\x8a" => "\xe1\xbc\x82", "\xe1\xbc\x8b" => "\xe1\xbc\x83", "\xe1\xbc\x8c" => "\xe1\xbc\x84",
186
+		"\xe1\xbc\x8d" => "\xe1\xbc\x85", "\xe1\xbc\x8e" => "\xe1\xbc\x86", "\xe1\xbc\x8f" => "\xe1\xbc\x87", "\xe1\xbc\x98" => "\xe1\xbc\x90",
187
+		"\xe1\xbc\x99" => "\xe1\xbc\x91", "\xe1\xbc\x9a" => "\xe1\xbc\x92", "\xe1\xbc\x9b" => "\xe1\xbc\x93", "\xe1\xbc\x9c" => "\xe1\xbc\x94",
188
+		"\xe1\xbc\x9d" => "\xe1\xbc\x95", "\xe1\xbc\xa8" => "\xe1\xbc\xa0", "\xe1\xbc\xa9" => "\xe1\xbc\xa1", "\xe1\xbc\xaa" => "\xe1\xbc\xa2",
189
+		"\xe1\xbc\xab" => "\xe1\xbc\xa3", "\xe1\xbc\xac" => "\xe1\xbc\xa4", "\xe1\xbc\xad" => "\xe1\xbc\xa5", "\xe1\xbc\xae" => "\xe1\xbc\xa6",
190
+		"\xe1\xbc\xaf" => "\xe1\xbc\xa7", "\xe1\xbc\xb8" => "\xe1\xbc\xb0", "\xe1\xbc\xb9" => "\xe1\xbc\xb1", "\xe1\xbc\xba" => "\xe1\xbc\xb2",
191
+		"\xe1\xbc\xbb" => "\xe1\xbc\xb3", "\xe1\xbc\xbc" => "\xe1\xbc\xb4", "\xe1\xbc\xbd" => "\xe1\xbc\xb5", "\xe1\xbc\xbe" => "\xe1\xbc\xb6",
192
+		"\xe1\xbc\xbf" => "\xe1\xbc\xb7", "\xe1\xbd\x88" => "\xe1\xbd\x80", "\xe1\xbd\x89" => "\xe1\xbd\x81", "\xe1\xbd\x8a" => "\xe1\xbd\x82",
193
+		"\xe1\xbd\x8b" => "\xe1\xbd\x83", "\xe1\xbd\x8c" => "\xe1\xbd\x84", "\xe1\xbd\x8d" => "\xe1\xbd\x85", "\xe1\xbd\x90" => "\xcf\x85\xcc\x93",
194
+		"\xe1\xbd\x92" => "\xcf\x85\xcc\x93\xcc\x80", "\xe1\xbd\x94" => "\xcf\x85\xcc\x93\xcc\x81", "\xe1\xbd\x96" => "\xcf\x85\xcc\x93\xcd\x82", "\xe1\xbd\x99" => "\xe1\xbd\x91",
195
+		"\xe1\xbd\x9b" => "\xe1\xbd\x93", "\xe1\xbd\x9d" => "\xe1\xbd\x95", "\xe1\xbd\x9f" => "\xe1\xbd\x97", "\xe1\xbd\xa8" => "\xe1\xbd\xa0",
196
+		"\xe1\xbd\xa9" => "\xe1\xbd\xa1", "\xe1\xbd\xaa" => "\xe1\xbd\xa2", "\xe1\xbd\xab" => "\xe1\xbd\xa3", "\xe1\xbd\xac" => "\xe1\xbd\xa4",
197
+		"\xe1\xbd\xad" => "\xe1\xbd\xa5", "\xe1\xbd\xae" => "\xe1\xbd\xa6", "\xe1\xbd\xaf" => "\xe1\xbd\xa7", "\xe1\xbe\x80" => "\xe1\xbc\x80\xce\xb9",
198
+		"\xe1\xbe\x81" => "\xe1\xbc\x81\xce\xb9", "\xe1\xbe\x82" => "\xe1\xbc\x82\xce\xb9", "\xe1\xbe\x83" => "\xe1\xbc\x83\xce\xb9", "\xe1\xbe\x84" => "\xe1\xbc\x84\xce\xb9",
199
+		"\xe1\xbe\x85" => "\xe1\xbc\x85\xce\xb9", "\xe1\xbe\x86" => "\xe1\xbc\x86\xce\xb9", "\xe1\xbe\x87" => "\xe1\xbc\x87\xce\xb9", "\xe1\xbe\x88" => "\xe1\xbe\x80",
200
+		"\xe1\xbe\x89" => "\xe1\xbe\x81", "\xe1\xbe\x8a" => "\xe1\xbe\x82", "\xe1\xbe\x8b" => "\xe1\xbe\x83", "\xe1\xbe\x8c" => "\xe1\xbe\x84",
201
+		"\xe1\xbe\x8d" => "\xe1\xbe\x85", "\xe1\xbe\x8e" => "\xe1\xbe\x86", "\xe1\xbe\x8f" => "\xe1\xbe\x87", "\xe1\xbe\x90" => "\xe1\xbc\xa0\xce\xb9",
202
+		"\xe1\xbe\x91" => "\xe1\xbc\xa1\xce\xb9", "\xe1\xbe\x92" => "\xe1\xbc\xa2\xce\xb9", "\xe1\xbe\x93" => "\xe1\xbc\xa3\xce\xb9", "\xe1\xbe\x94" => "\xe1\xbc\xa4\xce\xb9",
203
+		"\xe1\xbe\x95" => "\xe1\xbc\xa5\xce\xb9", "\xe1\xbe\x96" => "\xe1\xbc\xa6\xce\xb9", "\xe1\xbe\x97" => "\xe1\xbc\xa7\xce\xb9", "\xe1\xbe\x98" => "\xe1\xbe\x90",
204
+		"\xe1\xbe\x99" => "\xe1\xbe\x91", "\xe1\xbe\x9a" => "\xe1\xbe\x92", "\xe1\xbe\x9b" => "\xe1\xbe\x93", "\xe1\xbe\x9c" => "\xe1\xbe\x94",
205
+		"\xe1\xbe\x9d" => "\xe1\xbe\x95", "\xe1\xbe\x9e" => "\xe1\xbe\x96", "\xe1\xbe\x9f" => "\xe1\xbe\x97", "\xe1\xbe\xa0" => "\xe1\xbd\xa0\xce\xb9",
206
+		"\xe1\xbe\xa1" => "\xe1\xbd\xa1\xce\xb9", "\xe1\xbe\xa2" => "\xe1\xbd\xa2\xce\xb9", "\xe1\xbe\xa3" => "\xe1\xbd\xa3\xce\xb9", "\xe1\xbe\xa4" => "\xe1\xbd\xa4\xce\xb9",
207
+		"\xe1\xbe\xa5" => "\xe1\xbd\xa5\xce\xb9", "\xe1\xbe\xa6" => "\xe1\xbd\xa6\xce\xb9", "\xe1\xbe\xa7" => "\xe1\xbd\xa7\xce\xb9", "\xe1\xbe\xa8" => "\xe1\xbe\xa0",
208
+		"\xe1\xbe\xa9" => "\xe1\xbe\xa1", "\xe1\xbe\xaa" => "\xe1\xbe\xa2", "\xe1\xbe\xab" => "\xe1\xbe\xa3", "\xe1\xbe\xac" => "\xe1\xbe\xa4",
209
+		"\xe1\xbe\xad" => "\xe1\xbe\xa5", "\xe1\xbe\xae" => "\xe1\xbe\xa6", "\xe1\xbe\xaf" => "\xe1\xbe\xa7", "\xe1\xbe\xb2" => "\xe1\xbd\xb0\xce\xb9",
210
+		"\xe1\xbe\xb3" => "\xce\xb1\xce\xb9", "\xe1\xbe\xb4" => "\xce\xac\xce\xb9", "\xe1\xbe\xb6" => "\xce\xb1\xcd\x82", "\xe1\xbe\xb7" => "\xce\xb1\xcd\x82\xce\xb9",
211
+		"\xe1\xbe\xb8" => "\xe1\xbe\xb0", "\xe1\xbe\xb9" => "\xe1\xbe\xb1", "\xe1\xbe\xba" => "\xe1\xbd\xb0", "\xe1\xbe\xbb" => "\xe1\xbd\xb1",
212
+		"\xe1\xbe\xbc" => "\xe1\xbe\xb3", "\xe1\xbe\xbe" => "\xce\xb9", "\xe1\xbf\x82" => "\xe1\xbd\xb4\xce\xb9", "\xe1\xbf\x83" => "\xce\xb7\xce\xb9",
213
+		"\xe1\xbf\x84" => "\xce\xae\xce\xb9", "\xe1\xbf\x86" => "\xce\xb7\xcd\x82", "\xe1\xbf\x87" => "\xce\xb7\xcd\x82\xce\xb9", "\xe1\xbf\x88" => "\xe1\xbd\xb2",
214
+		"\xe1\xbf\x89" => "\xe1\xbd\xb3", "\xe1\xbf\x8a" => "\xe1\xbd\xb4", "\xe1\xbf\x8b" => "\xe1\xbd\xb5", "\xe1\xbf\x8c" => "\xe1\xbf\x83",
215
+		"\xe1\xbf\x92" => "\xce\xb9\xcc\x88\xcc\x80", "\xe1\xbf\x93" => "\xce\xb9\xcc\x88\xcc\x81", "\xe1\xbf\x96" => "\xce\xb9\xcd\x82", "\xe1\xbf\x97" => "\xce\xb9\xcc\x88\xcd\x82",
216
+		"\xe1\xbf\x98" => "\xe1\xbf\x90", "\xe1\xbf\x99" => "\xe1\xbf\x91", "\xe1\xbf\x9a" => "\xe1\xbd\xb6", "\xe1\xbf\x9b" => "\xe1\xbd\xb7",
217
+		"\xe1\xbf\xa2" => "\xcf\x85\xcc\x88\xcc\x80", "\xe1\xbf\xa3" => "\xcf\x85\xcc\x88\xcc\x81", "\xe1\xbf\xa4" => "\xcf\x81\xcc\x93", "\xe1\xbf\xa6" => "\xcf\x85\xcd\x82",
218
+		"\xe1\xbf\xa7" => "\xcf\x85\xcc\x88\xcd\x82", "\xe1\xbf\xa8" => "\xe1\xbf\xa0", "\xe1\xbf\xa9" => "\xe1\xbf\xa1", "\xe1\xbf\xaa" => "\xe1\xbd\xba",
219
+		"\xe1\xbf\xab" => "\xe1\xbd\xbb", "\xe1\xbf\xac" => "\xe1\xbf\xa5", "\xe1\xbf\xb2" => "\xe1\xbd\xbc\xce\xb9", "\xe1\xbf\xb3" => "\xcf\x89\xce\xb9",
220
+		"\xe1\xbf\xb4" => "\xcf\x8e\xce\xb9", "\xe1\xbf\xb6" => "\xcf\x89\xcd\x82", "\xe1\xbf\xb7" => "\xcf\x89\xcd\x82\xce\xb9", "\xe1\xbf\xb8" => "\xe1\xbd\xb8",
221
+		"\xe1\xbf\xb9" => "\xe1\xbd\xb9", "\xe1\xbf\xba" => "\xe1\xbd\xbc", "\xe1\xbf\xbb" => "\xe1\xbd\xbd", "\xe1\xbf\xbc" => "\xe1\xbf\xb3",
222
+		"\xe2\x84\xa6" => "\xcf\x89", "\xe2\x84\xaa" => "k", "\xe2\x84\xab" => "\xc3\xa5", "\xe2\x84\xb2" => "\xe2\x85\x8e",
223
+		"\xe2\x85\xa0" => "\xe2\x85\xb0", "\xe2\x85\xa1" => "\xe2\x85\xb1", "\xe2\x85\xa2" => "\xe2\x85\xb2", "\xe2\x85\xa3" => "\xe2\x85\xb3",
224
+		"\xe2\x85\xa4" => "\xe2\x85\xb4", "\xe2\x85\xa5" => "\xe2\x85\xb5", "\xe2\x85\xa6" => "\xe2\x85\xb6", "\xe2\x85\xa7" => "\xe2\x85\xb7",
225
+		"\xe2\x85\xa8" => "\xe2\x85\xb8", "\xe2\x85\xa9" => "\xe2\x85\xb9", "\xe2\x85\xaa" => "\xe2\x85\xba", "\xe2\x85\xab" => "\xe2\x85\xbb",
226
+		"\xe2\x85\xac" => "\xe2\x85\xbc", "\xe2\x85\xad" => "\xe2\x85\xbd", "\xe2\x85\xae" => "\xe2\x85\xbe", "\xe2\x85\xaf" => "\xe2\x85\xbf",
227
+		"\xe2\x86\x83" => "\xe2\x86\x84", "\xe2\x92\xb6" => "\xe2\x93\x90", "\xe2\x92\xb7" => "\xe2\x93\x91", "\xe2\x92\xb8" => "\xe2\x93\x92",
228
+		"\xe2\x92\xb9" => "\xe2\x93\x93", "\xe2\x92\xba" => "\xe2\x93\x94", "\xe2\x92\xbb" => "\xe2\x93\x95", "\xe2\x92\xbc" => "\xe2\x93\x96",
229
+		"\xe2\x92\xbd" => "\xe2\x93\x97", "\xe2\x92\xbe" => "\xe2\x93\x98", "\xe2\x92\xbf" => "\xe2\x93\x99", "\xe2\x93\x80" => "\xe2\x93\x9a",
230
+		"\xe2\x93\x81" => "\xe2\x93\x9b", "\xe2\x93\x82" => "\xe2\x93\x9c", "\xe2\x93\x83" => "\xe2\x93\x9d", "\xe2\x93\x84" => "\xe2\x93\x9e",
231
+		"\xe2\x93\x85" => "\xe2\x93\x9f", "\xe2\x93\x86" => "\xe2\x93\xa0", "\xe2\x93\x87" => "\xe2\x93\xa1", "\xe2\x93\x88" => "\xe2\x93\xa2",
232
+		"\xe2\x93\x89" => "\xe2\x93\xa3", "\xe2\x93\x8a" => "\xe2\x93\xa4", "\xe2\x93\x8b" => "\xe2\x93\xa5", "\xe2\x93\x8c" => "\xe2\x93\xa6",
233
+		"\xe2\x93\x8d" => "\xe2\x93\xa7", "\xe2\x93\x8e" => "\xe2\x93\xa8", "\xe2\x93\x8f" => "\xe2\x93\xa9", "\xe2\xb0\x80" => "\xe2\xb0\xb0",
234
+		"\xe2\xb0\x81" => "\xe2\xb0\xb1", "\xe2\xb0\x82" => "\xe2\xb0\xb2", "\xe2\xb0\x83" => "\xe2\xb0\xb3", "\xe2\xb0\x84" => "\xe2\xb0\xb4",
235
+		"\xe2\xb0\x85" => "\xe2\xb0\xb5", "\xe2\xb0\x86" => "\xe2\xb0\xb6", "\xe2\xb0\x87" => "\xe2\xb0\xb7", "\xe2\xb0\x88" => "\xe2\xb0\xb8",
236
+		"\xe2\xb0\x89" => "\xe2\xb0\xb9", "\xe2\xb0\x8a" => "\xe2\xb0\xba", "\xe2\xb0\x8b" => "\xe2\xb0\xbb", "\xe2\xb0\x8c" => "\xe2\xb0\xbc",
237
+		"\xe2\xb0\x8d" => "\xe2\xb0\xbd", "\xe2\xb0\x8e" => "\xe2\xb0\xbe", "\xe2\xb0\x8f" => "\xe2\xb0\xbf", "\xe2\xb0\x90" => "\xe2\xb1\x80",
238
+		"\xe2\xb0\x91" => "\xe2\xb1\x81", "\xe2\xb0\x92" => "\xe2\xb1\x82", "\xe2\xb0\x93" => "\xe2\xb1\x83", "\xe2\xb0\x94" => "\xe2\xb1\x84",
239
+		"\xe2\xb0\x95" => "\xe2\xb1\x85", "\xe2\xb0\x96" => "\xe2\xb1\x86", "\xe2\xb0\x97" => "\xe2\xb1\x87", "\xe2\xb0\x98" => "\xe2\xb1\x88",
240
+		"\xe2\xb0\x99" => "\xe2\xb1\x89", "\xe2\xb0\x9a" => "\xe2\xb1\x8a", "\xe2\xb0\x9b" => "\xe2\xb1\x8b", "\xe2\xb0\x9c" => "\xe2\xb1\x8c",
241
+		"\xe2\xb0\x9d" => "\xe2\xb1\x8d", "\xe2\xb0\x9e" => "\xe2\xb1\x8e", "\xe2\xb0\x9f" => "\xe2\xb1\x8f", "\xe2\xb0\xa0" => "\xe2\xb1\x90",
242
+		"\xe2\xb0\xa1" => "\xe2\xb1\x91", "\xe2\xb0\xa2" => "\xe2\xb1\x92", "\xe2\xb0\xa3" => "\xe2\xb1\x93", "\xe2\xb0\xa4" => "\xe2\xb1\x94",
243
+		"\xe2\xb0\xa5" => "\xe2\xb1\x95", "\xe2\xb0\xa6" => "\xe2\xb1\x96", "\xe2\xb0\xa7" => "\xe2\xb1\x97", "\xe2\xb0\xa8" => "\xe2\xb1\x98",
244
+		"\xe2\xb0\xa9" => "\xe2\xb1\x99", "\xe2\xb0\xaa" => "\xe2\xb1\x9a", "\xe2\xb0\xab" => "\xe2\xb1\x9b", "\xe2\xb0\xac" => "\xe2\xb1\x9c",
245
+		"\xe2\xb0\xad" => "\xe2\xb1\x9d", "\xe2\xb0\xae" => "\xe2\xb1\x9e", "\xe2\xb1\xa0" => "\xe2\xb1\xa1", "\xe2\xb1\xa2" => "\xc9\xab",
246
+		"\xe2\xb1\xa3" => "\xe1\xb5\xbd", "\xe2\xb1\xa4" => "\xc9\xbd", "\xe2\xb1\xa7" => "\xe2\xb1\xa8", "\xe2\xb1\xa9" => "\xe2\xb1\xaa",
247
+		"\xe2\xb1\xab" => "\xe2\xb1\xac", "\xe2\xb1\xb5" => "\xe2\xb1\xb6", "\xe2\xb2\x80" => "\xe2\xb2\x81", "\xe2\xb2\x82" => "\xe2\xb2\x83",
248
+		"\xe2\xb2\x84" => "\xe2\xb2\x85", "\xe2\xb2\x86" => "\xe2\xb2\x87", "\xe2\xb2\x88" => "\xe2\xb2\x89", "\xe2\xb2\x8a" => "\xe2\xb2\x8b",
249
+		"\xe2\xb2\x8c" => "\xe2\xb2\x8d", "\xe2\xb2\x8e" => "\xe2\xb2\x8f", "\xe2\xb2\x90" => "\xe2\xb2\x91", "\xe2\xb2\x92" => "\xe2\xb2\x93",
250
+		"\xe2\xb2\x94" => "\xe2\xb2\x95", "\xe2\xb2\x96" => "\xe2\xb2\x97", "\xe2\xb2\x98" => "\xe2\xb2\x99", "\xe2\xb2\x9a" => "\xe2\xb2\x9b",
251
+		"\xe2\xb2\x9c" => "\xe2\xb2\x9d", "\xe2\xb2\x9e" => "\xe2\xb2\x9f", "\xe2\xb2\xa0" => "\xe2\xb2\xa1", "\xe2\xb2\xa2" => "\xe2\xb2\xa3",
252
+		"\xe2\xb2\xa4" => "\xe2\xb2\xa5", "\xe2\xb2\xa6" => "\xe2\xb2\xa7", "\xe2\xb2\xa8" => "\xe2\xb2\xa9", "\xe2\xb2\xaa" => "\xe2\xb2\xab",
253
+		"\xe2\xb2\xac" => "\xe2\xb2\xad", "\xe2\xb2\xae" => "\xe2\xb2\xaf", "\xe2\xb2\xb0" => "\xe2\xb2\xb1", "\xe2\xb2\xb2" => "\xe2\xb2\xb3",
254
+		"\xe2\xb2\xb4" => "\xe2\xb2\xb5", "\xe2\xb2\xb6" => "\xe2\xb2\xb7", "\xe2\xb2\xb8" => "\xe2\xb2\xb9", "\xe2\xb2\xba" => "\xe2\xb2\xbb",
255
+		"\xe2\xb2\xbc" => "\xe2\xb2\xbd", "\xe2\xb2\xbe" => "\xe2\xb2\xbf", "\xe2\xb3\x80" => "\xe2\xb3\x81", "\xe2\xb3\x82" => "\xe2\xb3\x83",
256
+		"\xe2\xb3\x84" => "\xe2\xb3\x85", "\xe2\xb3\x86" => "\xe2\xb3\x87", "\xe2\xb3\x88" => "\xe2\xb3\x89", "\xe2\xb3\x8a" => "\xe2\xb3\x8b",
257
+		"\xe2\xb3\x8c" => "\xe2\xb3\x8d", "\xe2\xb3\x8e" => "\xe2\xb3\x8f", "\xe2\xb3\x90" => "\xe2\xb3\x91", "\xe2\xb3\x92" => "\xe2\xb3\x93",
258
+		"\xe2\xb3\x94" => "\xe2\xb3\x95", "\xe2\xb3\x96" => "\xe2\xb3\x97", "\xe2\xb3\x98" => "\xe2\xb3\x99", "\xe2\xb3\x9a" => "\xe2\xb3\x9b",
259
+		"\xe2\xb3\x9c" => "\xe2\xb3\x9d", "\xe2\xb3\x9e" => "\xe2\xb3\x9f", "\xe2\xb3\xa0" => "\xe2\xb3\xa1", "\xe2\xb3\xa2" => "\xe2\xb3\xa3",
260
+		"\xef\xac\x80" => "ff", "\xef\xac\x81" => "fi", "\xef\xac\x82" => "fl", "\xef\xac\x83" => "ffi",
261
+		"\xef\xac\x84" => "ffl", "\xef\xac\x85" => "st", "\xef\xac\x86" => "st", "\xef\xac\x93" => "\xd5\xb4\xd5\xb6",
262
+		"\xef\xac\x94" => "\xd5\xb4\xd5\xa5", "\xef\xac\x95" => "\xd5\xb4\xd5\xab", "\xef\xac\x96" => "\xd5\xbe\xd5\xb6", "\xef\xac\x97" => "\xd5\xb4\xd5\xad",
263
+		"\xef\xbc\xa1" => "\xef\xbd\x81", "\xef\xbc\xa2" => "\xef\xbd\x82", "\xef\xbc\xa3" => "\xef\xbd\x83", "\xef\xbc\xa4" => "\xef\xbd\x84",
264
+		"\xef\xbc\xa5" => "\xef\xbd\x85", "\xef\xbc\xa6" => "\xef\xbd\x86", "\xef\xbc\xa7" => "\xef\xbd\x87", "\xef\xbc\xa8" => "\xef\xbd\x88",
265
+		"\xef\xbc\xa9" => "\xef\xbd\x89", "\xef\xbc\xaa" => "\xef\xbd\x8a", "\xef\xbc\xab" => "\xef\xbd\x8b", "\xef\xbc\xac" => "\xef\xbd\x8c",
266
+		"\xef\xbc\xad" => "\xef\xbd\x8d", "\xef\xbc\xae" => "\xef\xbd\x8e", "\xef\xbc\xaf" => "\xef\xbd\x8f", "\xef\xbc\xb0" => "\xef\xbd\x90",
267
+		"\xef\xbc\xb1" => "\xef\xbd\x91", "\xef\xbc\xb2" => "\xef\xbd\x92", "\xef\xbc\xb3" => "\xef\xbd\x93", "\xef\xbc\xb4" => "\xef\xbd\x94",
268
+		"\xef\xbc\xb5" => "\xef\xbd\x95", "\xef\xbc\xb6" => "\xef\xbd\x96", "\xef\xbc\xb7" => "\xef\xbd\x97", "\xef\xbc\xb8" => "\xef\xbd\x98",
269
+		"\xef\xbc\xb9" => "\xef\xbd\x99", "\xef\xbc\xba" => "\xef\xbd\x9a", "\xf0\x90\x90\x80" => "\xf0\x90\x90\xa8", "\xf0\x90\x90\x81" => "\xf0\x90\x90\xa9",
270
+		"\xf0\x90\x90\x82" => "\xf0\x90\x90\xaa", "\xf0\x90\x90\x83" => "\xf0\x90\x90\xab", "\xf0\x90\x90\x84" => "\xf0\x90\x90\xac", "\xf0\x90\x90\x85" => "\xf0\x90\x90\xad",
271
+		"\xf0\x90\x90\x86" => "\xf0\x90\x90\xae", "\xf0\x90\x90\x87" => "\xf0\x90\x90\xaf", "\xf0\x90\x90\x88" => "\xf0\x90\x90\xb0", "\xf0\x90\x90\x89" => "\xf0\x90\x90\xb1",
272
+		"\xf0\x90\x90\x8a" => "\xf0\x90\x90\xb2", "\xf0\x90\x90\x8b" => "\xf0\x90\x90\xb3", "\xf0\x90\x90\x8c" => "\xf0\x90\x90\xb4", "\xf0\x90\x90\x8d" => "\xf0\x90\x90\xb5",
273
+		"\xf0\x90\x90\x8e" => "\xf0\x90\x90\xb6", "\xf0\x90\x90\x8f" => "\xf0\x90\x90\xb7", "\xf0\x90\x90\x90" => "\xf0\x90\x90\xb8", "\xf0\x90\x90\x91" => "\xf0\x90\x90\xb9",
274
+		"\xf0\x90\x90\x92" => "\xf0\x90\x90\xba", "\xf0\x90\x90\x93" => "\xf0\x90\x90\xbb", "\xf0\x90\x90\x94" => "\xf0\x90\x90\xbc", "\xf0\x90\x90\x95" => "\xf0\x90\x90\xbd",
275
+		"\xf0\x90\x90\x96" => "\xf0\x90\x90\xbe", "\xf0\x90\x90\x97" => "\xf0\x90\x90\xbf", "\xf0\x90\x90\x98" => "\xf0\x90\x91\x80", "\xf0\x90\x90\x99" => "\xf0\x90\x91\x81",
276
+		"\xf0\x90\x90\x9a" => "\xf0\x90\x91\x82", "\xf0\x90\x90\x9b" => "\xf0\x90\x91\x83", "\xf0\x90\x90\x9c" => "\xf0\x90\x91\x84", "\xf0\x90\x90\x9d" => "\xf0\x90\x91\x85",
277
+		"\xf0\x90\x90\x9e" => "\xf0\x90\x91\x86", "\xf0\x90\x90\x9f" => "\xf0\x90\x91\x87", "\xf0\x90\x90\xa0" => "\xf0\x90\x91\x88", "\xf0\x90\x90\xa1" => "\xf0\x90\x91\x89",
278
+		"\xf0\x90\x90\xa2" => "\xf0\x90\x91\x8a", "\xf0\x90\x90\xa3" => "\xf0\x90\x91\x8b", "\xf0\x90\x90\xa4" => "\xf0\x90\x91\x8c", "\xf0\x90\x90\xa5" => "\xf0\x90\x91\x8d",
279
+		"\xf0\x90\x91\x8e" => "\xf0\x90\x90\xa6", "\xf0\x90\x91\x8f" => "\xf0\x90\x90\xa7",
280 280
 	);
281 281
 
282 282
 	return strtr($string, $case_folding);
@@ -293,259 +293,259 @@  discard block
 block discarded – undo
293 293
 function utf8_strtoupper($string)
294 294
 {
295 295
 	static $case_folding = array(
296
-		'a' => 'A',		'b' => 'B',		'c' => 'C',		'd' => 'D',
297
-		'e' => 'E',		'f' => 'F',		'g' => 'G',		'h' => 'H',
298
-		'i' => 'I',		'j' => 'J',		'k' => 'K',		'l' => 'L',
299
-		'm' => 'M',		'n' => 'N',		'o' => 'O',		'p' => 'P',
300
-		'q' => 'Q',		'r' => 'R',		's' => 'S',		't' => 'T',
301
-		'u' => 'U',		'v' => 'V',		'w' => 'W',		'x' => 'X',
302
-		'y' => 'Y',		'z' => 'Z',		"\xce\xbc" => "\xc2\xb5",		"\xc3\xa0" => "\xc3\x80",
303
-		"\xc3\xa1" => "\xc3\x81",		"\xc3\xa2" => "\xc3\x82",		"\xc3\xa3" => "\xc3\x83",		"\xc3\xa4" => "\xc3\x84",
304
-		"\xc3\xa5" => "\xc3\x85",		"\xc3\xa6" => "\xc3\x86",		"\xc3\xa7" => "\xc3\x87",		"\xc3\xa8" => "\xc3\x88",
305
-		"\xc3\xa9" => "\xc3\x89",		"\xc3\xaa" => "\xc3\x8a",		"\xc3\xab" => "\xc3\x8b",		"\xc3\xac" => "\xc3\x8c",
306
-		"\xc3\xad" => "\xc3\x8d",		"\xc3\xae" => "\xc3\x8e",		"\xc3\xaf" => "\xc3\x8f",		"\xc3\xb0" => "\xc3\x90",
307
-		"\xc3\xb1" => "\xc3\x91",		"\xc3\xb2" => "\xc3\x92",		"\xc3\xb3" => "\xc3\x93",		"\xc3\xb4" => "\xc3\x94",
308
-		"\xc3\xb5" => "\xc3\x95",		"\xc3\xb6" => "\xc3\x96",		"\xc3\xb8" => "\xc3\x98",		"\xc3\xb9" => "\xc3\x99",
309
-		"\xc3\xba" => "\xc3\x9a",		"\xc3\xbb" => "\xc3\x9b",		"\xc3\xbc" => "\xc3\x9c",		"\xc3\xbd" => "\xc3\x9d",
310
-		"\xc3\xbe" => "\xc3\x9e",		"ss" => "\xc3\x9f",	"\xc4\x81" => "\xc4\x80",		"\xc4\x83" => "\xc4\x82",
311
-		"\xc4\x85" => "\xc4\x84",		"\xc4\x87" => "\xc4\x86",		"\xc4\x89" => "\xc4\x88",		"\xc4\x8b" => "\xc4\x8a",
312
-		"\xc4\x8d" => "\xc4\x8c",		"\xc4\x8f" => "\xc4\x8e",		"\xc4\x91" => "\xc4\x90",		"\xc4\x93" => "\xc4\x92",
313
-		"\xc4\x95" => "\xc4\x94",		"\xc4\x97" => "\xc4\x96",		"\xc4\x99" => "\xc4\x98",		"\xc4\x9b" => "\xc4\x9a",
314
-		"\xc4\x9d" => "\xc4\x9c",		"\xc4\x9f" => "\xc4\x9e",		"\xc4\xa1" => "\xc4\xa0",		"\xc4\xa3" => "\xc4\xa2",
315
-		"\xc4\xa5" => "\xc4\xa4",		"\xc4\xa7" => "\xc4\xa6",		"\xc4\xa9" => "\xc4\xa8",		"\xc4\xab" => "\xc4\xaa",
316
-		"\xc4\xad" => "\xc4\xac",		"\xc4\xaf" => "\xc4\xae",		"i\xcc\x87" => "\xc4\xb0",		"\xc4\xb3" => "\xc4\xb2",
317
-		"\xc4\xb5" => "\xc4\xb4",		"\xc4\xb7" => "\xc4\xb6",		"\xc4\xba" => "\xc4\xb9",		"\xc4\xbc" => "\xc4\xbb",
318
-		"\xc4\xbe" => "\xc4\xbd",		"\xc5\x80" => "\xc4\xbf",		"\xc5\x82" => "\xc5\x81",		"\xc5\x84" => "\xc5\x83",
319
-		"\xc5\x86" => "\xc5\x85",		"\xc5\x88" => "\xc5\x87",		"\xca\xbcn" => "\xc5\x89",	"\xc5\x8b" => "\xc5\x8a",
320
-		"\xc5\x8d" => "\xc5\x8c",		"\xc5\x8f" => "\xc5\x8e",		"\xc5\x91" => "\xc5\x90",		"\xc5\x93" => "\xc5\x92",
321
-		"\xc5\x95" => "\xc5\x94",		"\xc5\x97" => "\xc5\x96",		"\xc5\x99" => "\xc5\x98",		"\xc5\x9b" => "\xc5\x9a",
322
-		"\xc5\x9d" => "\xc5\x9c",		"\xc5\x9f" => "\xc5\x9e",		"\xc5\xa1" => "\xc5\xa0",		"\xc5\xa3" => "\xc5\xa2",
323
-		"\xc5\xa5" => "\xc5\xa4",		"\xc5\xa7" => "\xc5\xa6",		"\xc5\xa9" => "\xc5\xa8",		"\xc5\xab" => "\xc5\xaa",
324
-		"\xc5\xad" => "\xc5\xac",		"\xc5\xaf" => "\xc5\xae",		"\xc5\xb1" => "\xc5\xb0",		"\xc5\xb3" => "\xc5\xb2",
325
-		"\xc5\xb5" => "\xc5\xb4",		"\xc5\xb7" => "\xc5\xb6",		"\xc3\xbf" => "\xc5\xb8",		"\xc5\xba" => "\xc5\xb9",
326
-		"\xc5\xbc" => "\xc5\xbb",		"\xc5\xbe" => "\xc5\xbd",		"\xc9\x93" => "\xc6\x81",
327
-		"\xc6\x83" => "\xc6\x82",		"\xc6\x85" => "\xc6\x84",		"\xc9\x94" => "\xc6\x86",		"\xc6\x88" => "\xc6\x87",
328
-		"\xc9\x96" => "\xc6\x89",		"\xc9\x97" => "\xc6\x8a",		"\xc6\x8c" => "\xc6\x8b",		"\xc7\x9d" => "\xc6\x8e",
329
-		"\xc9\x99" => "\xc6\x8f",		"\xc9\x9b" => "\xc6\x90",		"\xc6\x92" => "\xc6\x91",		"\xc9\xa0" => "\xc6\x93",
330
-		"\xc9\xa3" => "\xc6\x94",		"\xc9\xa9" => "\xc6\x96",		"\xc9\xa8" => "\xc6\x97",		"\xc6\x99" => "\xc6\x98",
331
-		"\xc9\xaf" => "\xc6\x9c",		"\xc9\xb2" => "\xc6\x9d",		"\xc9\xb5" => "\xc6\x9f",		"\xc6\xa1" => "\xc6\xa0",
332
-		"\xc6\xa3" => "\xc6\xa2",		"\xc6\xa5" => "\xc6\xa4",		"\xca\x80" => "\xc6\xa6",		"\xc6\xa8" => "\xc6\xa7",
333
-		"\xca\x83" => "\xc6\xa9",		"\xc6\xad" => "\xc6\xac",		"\xca\x88" => "\xc6\xae",		"\xc6\xb0" => "\xc6\xaf",
334
-		"\xca\x8a" => "\xc6\xb1",		"\xca\x8b" => "\xc6\xb2",		"\xc6\xb4" => "\xc6\xb3",		"\xc6\xb6" => "\xc6\xb5",
335
-		"\xca\x92" => "\xc6\xb7",		"\xc6\xb9" => "\xc6\xb8",		"\xc6\xbd" => "\xc6\xbc",		"\xc7\x86" => "\xc7\x84",
336
-		"\xc7\x86" => "\xc7\x85",		"\xc7\x89" => "\xc7\x87",		"\xc7\x89" => "\xc7\x88",		"\xc7\x8c" => "\xc7\x8a",
337
-		"\xc7\x8c" => "\xc7\x8b",		"\xc7\x8e" => "\xc7\x8d",		"\xc7\x90" => "\xc7\x8f",		"\xc7\x92" => "\xc7\x91",
338
-		"\xc7\x94" => "\xc7\x93",		"\xc7\x96" => "\xc7\x95",		"\xc7\x98" => "\xc7\x97",		"\xc7\x9a" => "\xc7\x99",
339
-		"\xc7\x9c" => "\xc7\x9b",		"\xc7\x9f" => "\xc7\x9e",		"\xc7\xa1" => "\xc7\xa0",		"\xc7\xa3" => "\xc7\xa2",
340
-		"\xc7\xa5" => "\xc7\xa4",		"\xc7\xa7" => "\xc7\xa6",		"\xc7\xa9" => "\xc7\xa8",		"\xc7\xab" => "\xc7\xaa",
341
-		"\xc7\xad" => "\xc7\xac",		"\xc7\xaf" => "\xc7\xae",		"j\xcc\x8c" => "\xc7\xb0",		"\xc7\xb3" => "\xc7\xb1",
342
-		"\xc7\xb3" => "\xc7\xb2",		"\xc7\xb5" => "\xc7\xb4",		"\xc6\x95" => "\xc7\xb6",		"\xc6\xbf" => "\xc7\xb7",
343
-		"\xc7\xb9" => "\xc7\xb8",		"\xc7\xbb" => "\xc7\xba",		"\xc7\xbd" => "\xc7\xbc",		"\xc7\xbf" => "\xc7\xbe",
344
-		"\xc8\x81" => "\xc8\x80",		"\xc8\x83" => "\xc8\x82",		"\xc8\x85" => "\xc8\x84",		"\xc8\x87" => "\xc8\x86",
345
-		"\xc8\x89" => "\xc8\x88",		"\xc8\x8b" => "\xc8\x8a",		"\xc8\x8d" => "\xc8\x8c",		"\xc8\x8f" => "\xc8\x8e",
346
-		"\xc8\x91" => "\xc8\x90",		"\xc8\x93" => "\xc8\x92",		"\xc8\x95" => "\xc8\x94",		"\xc8\x97" => "\xc8\x96",
347
-		"\xc8\x99" => "\xc8\x98",		"\xc8\x9b" => "\xc8\x9a",		"\xc8\x9d" => "\xc8\x9c",		"\xc8\x9f" => "\xc8\x9e",
348
-		"\xc6\x9e" => "\xc8\xa0",		"\xc8\xa3" => "\xc8\xa2",		"\xc8\xa5" => "\xc8\xa4",		"\xc8\xa7" => "\xc8\xa6",
349
-		"\xc8\xa9" => "\xc8\xa8",		"\xc8\xab" => "\xc8\xaa",		"\xc8\xad" => "\xc8\xac",		"\xc8\xaf" => "\xc8\xae",
350
-		"\xc8\xb1" => "\xc8\xb0",		"\xc8\xb3" => "\xc8\xb2",		"\xe2\xb1\xa5" => "\xc8\xba",		"\xc8\xbc" => "\xc8\xbb",
351
-		"\xc6\x9a" => "\xc8\xbd",		"\xe2\xb1\xa6" => "\xc8\xbe",		"\xc9\x82" => "\xc9\x81",		"\xc6\x80" => "\xc9\x83",
352
-		"\xca\x89" => "\xc9\x84",		"\xca\x8c" => "\xc9\x85",		"\xc9\x87" => "\xc9\x86",		"\xc9\x89" => "\xc9\x88",
353
-		"\xc9\x8b" => "\xc9\x8a",		"\xc9\x8d" => "\xc9\x8c",		"\xc9\x8f" => "\xc9\x8e",		"\xce\xb9" => "\xcd\x85",
354
-		"\xce\xac" => "\xce\x86",		"\xce\xad" => "\xce\x88",		"\xce\xae" => "\xce\x89",		"\xce\xaf" => "\xce\x8a",
355
-		"\xcf\x8c" => "\xce\x8c",		"\xcf\x8d" => "\xce\x8e",		"\xcf\x8e" => "\xce\x8f",		"\xce\xb9\xcc\x88\xcc\x81" => "\xce\x90",
356
-		"\xce\xb1" => "\xce\x91",		"\xce\xb2" => "\xce\x92",		"\xce\xb3" => "\xce\x93",		"\xce\xb4" => "\xce\x94",
357
-		"\xce\xb5" => "\xce\x95",		"\xce\xb6" => "\xce\x96",		"\xce\xb7" => "\xce\x97",		"\xce\xb8" => "\xce\x98",
358
-		"\xce\xb9" => "\xce\x99",		"\xce\xba" => "\xce\x9a",		"\xce\xbb" => "\xce\x9b",		"\xce\xbc" => "\xce\x9c",
359
-		"\xce\xbd" => "\xce\x9d",		"\xce\xbe" => "\xce\x9e",		"\xce\xbf" => "\xce\x9f",		"\xcf\x80" => "\xce\xa0",
360
-		"\xcf\x81" => "\xce\xa1",		"\xcf\x83" => "\xce\xa3",		"\xcf\x84" => "\xce\xa4",		"\xcf\x85" => "\xce\xa5",
361
-		"\xcf\x86" => "\xce\xa6",		"\xcf\x87" => "\xce\xa7",		"\xcf\x88" => "\xce\xa8",		"\xcf\x89" => "\xce\xa9",
362
-		"\xcf\x8a" => "\xce\xaa",		"\xcf\x8b" => "\xce\xab",		"\xcf\x85\xcc\x88\xcc\x81" => "\xce\xb0",	"\xcf\x83" => "\xcf\x82",
363
-		"\xce\xb2" => "\xcf\x90",		"\xce\xb8" => "\xcf\x91",		"\xcf\x86" => "\xcf\x95",		"\xcf\x80" => "\xcf\x96",
364
-		"\xcf\x99" => "\xcf\x98",		"\xcf\x9b" => "\xcf\x9a",		"\xcf\x9d" => "\xcf\x9c",		"\xcf\x9f" => "\xcf\x9e",
365
-		"\xcf\xa1" => "\xcf\xa0",		"\xcf\xa3" => "\xcf\xa2",		"\xcf\xa5" => "\xcf\xa4",		"\xcf\xa7" => "\xcf\xa6",
366
-		"\xcf\xa9" => "\xcf\xa8",		"\xcf\xab" => "\xcf\xaa",		"\xcf\xad" => "\xcf\xac",		"\xcf\xaf" => "\xcf\xae",
367
-		"\xce\xba" => "\xcf\xb0",		"\xcf\x81" => "\xcf\xb1",		"\xce\xb8" => "\xcf\xb4",		"\xce\xb5" => "\xcf\xb5",
368
-		"\xcf\xb8" => "\xcf\xb7",		"\xcf\xb2" => "\xcf\xb9",		"\xcf\xbb" => "\xcf\xba",		"\xcd\xbb" => "\xcf\xbd",
369
-		"\xcd\xbc" => "\xcf\xbe",		"\xcd\xbd" => "\xcf\xbf",		"\xd1\x90" => "\xd0\x80",		"\xd1\x91" => "\xd0\x81",
370
-		"\xd1\x92" => "\xd0\x82",		"\xd1\x93" => "\xd0\x83",		"\xd1\x94" => "\xd0\x84",		"\xd1\x95" => "\xd0\x85",
371
-		"\xd1\x96" => "\xd0\x86",		"\xd1\x97" => "\xd0\x87",		"\xd1\x98" => "\xd0\x88",		"\xd1\x99" => "\xd0\x89",
372
-		"\xd1\x9a" => "\xd0\x8a",		"\xd1\x9b" => "\xd0\x8b",		"\xd1\x9c" => "\xd0\x8c",		"\xd1\x9d" => "\xd0\x8d",
373
-		"\xd1\x9e" => "\xd0\x8e",		"\xd1\x9f" => "\xd0\x8f",		"\xd0\xb0" => "\xd0\x90",		"\xd0\xb1" => "\xd0\x91",
374
-		"\xd0\xb2" => "\xd0\x92",		"\xd0\xb3" => "\xd0\x93",		"\xd0\xb4" => "\xd0\x94",		"\xd0\xb5" => "\xd0\x95",
375
-		"\xd0\xb6" => "\xd0\x96",		"\xd0\xb7" => "\xd0\x97",		"\xd0\xb8" => "\xd0\x98",		"\xd0\xb9" => "\xd0\x99",
376
-		"\xd0\xba" => "\xd0\x9a",		"\xd0\xbb" => "\xd0\x9b",		"\xd0\xbc" => "\xd0\x9c",		"\xd0\xbd" => "\xd0\x9d",
377
-		"\xd0\xbe" => "\xd0\x9e",		"\xd0\xbf" => "\xd0\x9f",		"\xd1\x80" => "\xd0\xa0",		"\xd1\x81" => "\xd0\xa1",
378
-		"\xd1\x82" => "\xd0\xa2",		"\xd1\x83" => "\xd0\xa3",		"\xd1\x84" => "\xd0\xa4",		"\xd1\x85" => "\xd0\xa5",
379
-		"\xd1\x86" => "\xd0\xa6",		"\xd1\x87" => "\xd0\xa7",		"\xd1\x88" => "\xd0\xa8",		"\xd1\x89" => "\xd0\xa9",
380
-		"\xd1\x8a" => "\xd0\xaa",		"\xd1\x8b" => "\xd0\xab",		"\xd1\x8c" => "\xd0\xac",		"\xd1\x8d" => "\xd0\xad",
381
-		"\xd1\x8e" => "\xd0\xae",		"\xd1\x8f" => "\xd0\xaf",		"\xd1\xa1" => "\xd1\xa0",		"\xd1\xa3" => "\xd1\xa2",
382
-		"\xd1\xa5" => "\xd1\xa4",		"\xd1\xa7" => "\xd1\xa6",		"\xd1\xa9" => "\xd1\xa8",		"\xd1\xab" => "\xd1\xaa",
383
-		"\xd1\xad" => "\xd1\xac",		"\xd1\xaf" => "\xd1\xae",		"\xd1\xb1" => "\xd1\xb0",		"\xd1\xb3" => "\xd1\xb2",
384
-		"\xd1\xb5" => "\xd1\xb4",		"\xd1\xb7" => "\xd1\xb6",		"\xd1\xb9" => "\xd1\xb8",		"\xd1\xbb" => "\xd1\xba",
385
-		"\xd1\xbd" => "\xd1\xbc",		"\xd1\xbf" => "\xd1\xbe",		"\xd2\x81" => "\xd2\x80",		"\xd2\x8b" => "\xd2\x8a",
386
-		"\xd2\x8d" => "\xd2\x8c",		"\xd2\x8f" => "\xd2\x8e",		"\xd2\x91" => "\xd2\x90",		"\xd2\x93" => "\xd2\x92",
387
-		"\xd2\x95" => "\xd2\x94",		"\xd2\x97" => "\xd2\x96",		"\xd2\x99" => "\xd2\x98",		"\xd2\x9b" => "\xd2\x9a",
388
-		"\xd2\x9d" => "\xd2\x9c",		"\xd2\x9f" => "\xd2\x9e",		"\xd2\xa1" => "\xd2\xa0",		"\xd2\xa3" => "\xd2\xa2",
389
-		"\xd2\xa5" => "\xd2\xa4",		"\xd2\xa7" => "\xd2\xa6",		"\xd2\xa9" => "\xd2\xa8",		"\xd2\xab" => "\xd2\xaa",
390
-		"\xd2\xad" => "\xd2\xac",		"\xd2\xaf" => "\xd2\xae",		"\xd2\xb1" => "\xd2\xb0",		"\xd2\xb3" => "\xd2\xb2",
391
-		"\xd2\xb5" => "\xd2\xb4",		"\xd2\xb7" => "\xd2\xb6",		"\xd2\xb9" => "\xd2\xb8",		"\xd2\xbb" => "\xd2\xba",
392
-		"\xd2\xbd" => "\xd2\xbc",		"\xd2\xbf" => "\xd2\xbe",		"\xd3\x8f" => "\xd3\x80",		"\xd3\x82" => "\xd3\x81",
393
-		"\xd3\x84" => "\xd3\x83",		"\xd3\x86" => "\xd3\x85",		"\xd3\x88" => "\xd3\x87",		"\xd3\x8a" => "\xd3\x89",
394
-		"\xd3\x8c" => "\xd3\x8b",		"\xd3\x8e" => "\xd3\x8d",		"\xd3\x91" => "\xd3\x90",		"\xd3\x93" => "\xd3\x92",
395
-		"\xd3\x95" => "\xd3\x94",		"\xd3\x97" => "\xd3\x96",		"\xd3\x99" => "\xd3\x98",		"\xd3\x9b" => "\xd3\x9a",
396
-		"\xd3\x9d" => "\xd3\x9c",		"\xd3\x9f" => "\xd3\x9e",		"\xd3\xa1" => "\xd3\xa0",		"\xd3\xa3" => "\xd3\xa2",
397
-		"\xd3\xa5" => "\xd3\xa4",		"\xd3\xa7" => "\xd3\xa6",		"\xd3\xa9" => "\xd3\xa8",		"\xd3\xab" => "\xd3\xaa",
398
-		"\xd3\xad" => "\xd3\xac",		"\xd3\xaf" => "\xd3\xae",		"\xd3\xb1" => "\xd3\xb0",		"\xd3\xb3" => "\xd3\xb2",
399
-		"\xd3\xb5" => "\xd3\xb4",		"\xd3\xb7" => "\xd3\xb6",		"\xd3\xb9" => "\xd3\xb8",		"\xd3\xbb" => "\xd3\xba",
400
-		"\xd3\xbd" => "\xd3\xbc",		"\xd3\xbf" => "\xd3\xbe",		"\xd4\x81" => "\xd4\x80",		"\xd4\x83" => "\xd4\x82",
401
-		"\xd4\x85" => "\xd4\x84",		"\xd4\x87" => "\xd4\x86",		"\xd4\x89" => "\xd4\x88",		"\xd4\x8b" => "\xd4\x8a",
402
-		"\xd4\x8d" => "\xd4\x8c",		"\xd4\x8f" => "\xd4\x8e",		"\xd4\x91" => "\xd4\x90",		"\xd4\x93" => "\xd4\x92",
403
-		"\xd5\xa1" => "\xd4\xb1",		"\xd5\xa2" => "\xd4\xb2",		"\xd5\xa3" => "\xd4\xb3",		"\xd5\xa4" => "\xd4\xb4",
404
-		"\xd5\xa5" => "\xd4\xb5",		"\xd5\xa6" => "\xd4\xb6",		"\xd5\xa7" => "\xd4\xb7",		"\xd5\xa8" => "\xd4\xb8",
405
-		"\xd5\xa9" => "\xd4\xb9",		"\xd5\xaa" => "\xd4\xba",		"\xd5\xab" => "\xd4\xbb",		"\xd5\xac" => "\xd4\xbc",
406
-		"\xd5\xad" => "\xd4\xbd",		"\xd5\xae" => "\xd4\xbe",		"\xd5\xaf" => "\xd4\xbf",		"\xd5\xb0" => "\xd5\x80",
407
-		"\xd5\xb1" => "\xd5\x81",		"\xd5\xb2" => "\xd5\x82",		"\xd5\xb3" => "\xd5\x83",		"\xd5\xb4" => "\xd5\x84",
408
-		"\xd5\xb5" => "\xd5\x85",		"\xd5\xb6" => "\xd5\x86",		"\xd5\xb7" => "\xd5\x87",		"\xd5\xb8" => "\xd5\x88",
409
-		"\xd5\xb9" => "\xd5\x89",		"\xd5\xba" => "\xd5\x8a",		"\xd5\xbb" => "\xd5\x8b",		"\xd5\xbc" => "\xd5\x8c",
410
-		"\xd5\xbd" => "\xd5\x8d",		"\xd5\xbe" => "\xd5\x8e",		"\xd5\xbf" => "\xd5\x8f",		"\xd6\x80" => "\xd5\x90",
411
-		"\xd6\x81" => "\xd5\x91",		"\xd6\x82" => "\xd5\x92",		"\xd6\x83" => "\xd5\x93",		"\xd6\x84" => "\xd5\x94",
412
-		"\xd6\x85" => "\xd5\x95",		"\xd6\x86" => "\xd5\x96",		"\xd5\xa5\xd6\x82" => "\xd6\x87",		"\xe2\xb4\x80" => "\xe1\x82\xa0",
413
-		"\xe2\xb4\x81" => "\xe1\x82\xa1",		"\xe2\xb4\x82" => "\xe1\x82\xa2",		"\xe2\xb4\x83" => "\xe1\x82\xa3",		"\xe2\xb4\x84" => "\xe1\x82\xa4",
414
-		"\xe2\xb4\x85" => "\xe1\x82\xa5",		"\xe2\xb4\x86" => "\xe1\x82\xa6",		"\xe2\xb4\x87" => "\xe1\x82\xa7",		"\xe2\xb4\x88" => "\xe1\x82\xa8",
415
-		"\xe2\xb4\x89" => "\xe1\x82\xa9",		"\xe2\xb4\x8a" => "\xe1\x82\xaa",		"\xe2\xb4\x8b" => "\xe1\x82\xab",		"\xe2\xb4\x8c" => "\xe1\x82\xac",
416
-		"\xe2\xb4\x8d" => "\xe1\x82\xad",		"\xe2\xb4\x8e" => "\xe1\x82\xae",		"\xe2\xb4\x8f" => "\xe1\x82\xaf",		"\xe2\xb4\x90" => "\xe1\x82\xb0",
417
-		"\xe2\xb4\x91" => "\xe1\x82\xb1",		"\xe2\xb4\x92" => "\xe1\x82\xb2",		"\xe2\xb4\x93" => "\xe1\x82\xb3",		"\xe2\xb4\x94" => "\xe1\x82\xb4",
418
-		"\xe2\xb4\x95" => "\xe1\x82\xb5",		"\xe2\xb4\x96" => "\xe1\x82\xb6",		"\xe2\xb4\x97" => "\xe1\x82\xb7",		"\xe2\xb4\x98" => "\xe1\x82\xb8",
419
-		"\xe2\xb4\x99" => "\xe1\x82\xb9",		"\xe2\xb4\x9a" => "\xe1\x82\xba",		"\xe2\xb4\x9b" => "\xe1\x82\xbb",		"\xe2\xb4\x9c" => "\xe1\x82\xbc",
420
-		"\xe2\xb4\x9d" => "\xe1\x82\xbd",		"\xe2\xb4\x9e" => "\xe1\x82\xbe",		"\xe2\xb4\x9f" => "\xe1\x82\xbf",		"\xe2\xb4\xa0" => "\xe1\x83\x80",
421
-		"\xe2\xb4\xa1" => "\xe1\x83\x81",		"\xe2\xb4\xa2" => "\xe1\x83\x82",		"\xe2\xb4\xa3" => "\xe1\x83\x83",		"\xe2\xb4\xa4" => "\xe1\x83\x84",
422
-		"\xe2\xb4\xa5" => "\xe1\x83\x85",		"\xe1\xb8\x81" => "\xe1\xb8\x80",		"\xe1\xb8\x83" => "\xe1\xb8\x82",		"\xe1\xb8\x85" => "\xe1\xb8\x84",
423
-		"\xe1\xb8\x87" => "\xe1\xb8\x86",		"\xe1\xb8\x89" => "\xe1\xb8\x88",		"\xe1\xb8\x8b" => "\xe1\xb8\x8a",		"\xe1\xb8\x8d" => "\xe1\xb8\x8c",
424
-		"\xe1\xb8\x8f" => "\xe1\xb8\x8e",		"\xe1\xb8\x91" => "\xe1\xb8\x90",		"\xe1\xb8\x93" => "\xe1\xb8\x92",		"\xe1\xb8\x95" => "\xe1\xb8\x94",
425
-		"\xe1\xb8\x97" => "\xe1\xb8\x96",		"\xe1\xb8\x99" => "\xe1\xb8\x98",		"\xe1\xb8\x9b" => "\xe1\xb8\x9a",		"\xe1\xb8\x9d" => "\xe1\xb8\x9c",
426
-		"\xe1\xb8\x9f" => "\xe1\xb8\x9e",		"\xe1\xb8\xa1" => "\xe1\xb8\xa0",		"\xe1\xb8\xa3" => "\xe1\xb8\xa2",		"\xe1\xb8\xa5" => "\xe1\xb8\xa4",
427
-		"\xe1\xb8\xa7" => "\xe1\xb8\xa6",		"\xe1\xb8\xa9" => "\xe1\xb8\xa8",		"\xe1\xb8\xab" => "\xe1\xb8\xaa",		"\xe1\xb8\xad" => "\xe1\xb8\xac",
428
-		"\xe1\xb8\xaf" => "\xe1\xb8\xae",		"\xe1\xb8\xb1" => "\xe1\xb8\xb0",		"\xe1\xb8\xb3" => "\xe1\xb8\xb2",		"\xe1\xb8\xb5" => "\xe1\xb8\xb4",
429
-		"\xe1\xb8\xb7" => "\xe1\xb8\xb6",		"\xe1\xb8\xb9" => "\xe1\xb8\xb8",		"\xe1\xb8\xbb" => "\xe1\xb8\xba",		"\xe1\xb8\xbd" => "\xe1\xb8\xbc",
430
-		"\xe1\xb8\xbf" => "\xe1\xb8\xbe",		"\xe1\xb9\x81" => "\xe1\xb9\x80",		"\xe1\xb9\x83" => "\xe1\xb9\x82",		"\xe1\xb9\x85" => "\xe1\xb9\x84",
431
-		"\xe1\xb9\x87" => "\xe1\xb9\x86",		"\xe1\xb9\x89" => "\xe1\xb9\x88",		"\xe1\xb9\x8b" => "\xe1\xb9\x8a",		"\xe1\xb9\x8d" => "\xe1\xb9\x8c",
432
-		"\xe1\xb9\x8f" => "\xe1\xb9\x8e",		"\xe1\xb9\x91" => "\xe1\xb9\x90",		"\xe1\xb9\x93" => "\xe1\xb9\x92",		"\xe1\xb9\x95" => "\xe1\xb9\x94",
433
-		"\xe1\xb9\x97" => "\xe1\xb9\x96",		"\xe1\xb9\x99" => "\xe1\xb9\x98",		"\xe1\xb9\x9b" => "\xe1\xb9\x9a",		"\xe1\xb9\x9d" => "\xe1\xb9\x9c",
434
-		"\xe1\xb9\x9f" => "\xe1\xb9\x9e",		"\xe1\xb9\xa1" => "\xe1\xb9\xa0",		"\xe1\xb9\xa3" => "\xe1\xb9\xa2",		"\xe1\xb9\xa5" => "\xe1\xb9\xa4",
435
-		"\xe1\xb9\xa7" => "\xe1\xb9\xa6",		"\xe1\xb9\xa9" => "\xe1\xb9\xa8",		"\xe1\xb9\xab" => "\xe1\xb9\xaa",		"\xe1\xb9\xad" => "\xe1\xb9\xac",
436
-		"\xe1\xb9\xaf" => "\xe1\xb9\xae",		"\xe1\xb9\xb1" => "\xe1\xb9\xb0",		"\xe1\xb9\xb3" => "\xe1\xb9\xb2",		"\xe1\xb9\xb5" => "\xe1\xb9\xb4",
437
-		"\xe1\xb9\xb7" => "\xe1\xb9\xb6",		"\xe1\xb9\xb9" => "\xe1\xb9\xb8",		"\xe1\xb9\xbb" => "\xe1\xb9\xba",		"\xe1\xb9\xbd" => "\xe1\xb9\xbc",
438
-		"\xe1\xb9\xbf" => "\xe1\xb9\xbe",		"\xe1\xba\x81" => "\xe1\xba\x80",		"\xe1\xba\x83" => "\xe1\xba\x82",		"\xe1\xba\x85" => "\xe1\xba\x84",
439
-		"\xe1\xba\x87" => "\xe1\xba\x86",		"\xe1\xba\x89" => "\xe1\xba\x88",		"\xe1\xba\x8b" => "\xe1\xba\x8a",		"\xe1\xba\x8d" => "\xe1\xba\x8c",
440
-		"\xe1\xba\x8f" => "\xe1\xba\x8e",		"\xe1\xba\x91" => "\xe1\xba\x90",		"\xe1\xba\x93" => "\xe1\xba\x92",		"\xe1\xba\x95" => "\xe1\xba\x94",
441
-		"h\xcc\xb1" => "\xe1\xba\x96",		"t\xcc\x88" => "\xe1\xba\x97",		"w\xcc\x8a" => "\xe1\xba\x98",		"y\xcc\x8a" => "\xe1\xba\x99",
442
-		"a\xca\xbe" => "\xe1\xba\x9a",	"\xe1\xb9\xa1" => "\xe1\xba\x9b",		"\xe1\xba\xa1" => "\xe1\xba\xa0",		"\xe1\xba\xa3" => "\xe1\xba\xa2",
443
-		"\xe1\xba\xa5" => "\xe1\xba\xa4",		"\xe1\xba\xa7" => "\xe1\xba\xa6",		"\xe1\xba\xa9" => "\xe1\xba\xa8",		"\xe1\xba\xab" => "\xe1\xba\xaa",
444
-		"\xe1\xba\xad" => "\xe1\xba\xac",		"\xe1\xba\xaf" => "\xe1\xba\xae",		"\xe1\xba\xb1" => "\xe1\xba\xb0",		"\xe1\xba\xb3" => "\xe1\xba\xb2",
445
-		"\xe1\xba\xb5" => "\xe1\xba\xb4",		"\xe1\xba\xb7" => "\xe1\xba\xb6",		"\xe1\xba\xb9" => "\xe1\xba\xb8",		"\xe1\xba\xbb" => "\xe1\xba\xba",
446
-		"\xe1\xba\xbd" => "\xe1\xba\xbc",		"\xe1\xba\xbf" => "\xe1\xba\xbe",		"\xe1\xbb\x81" => "\xe1\xbb\x80",		"\xe1\xbb\x83" => "\xe1\xbb\x82",
447
-		"\xe1\xbb\x85" => "\xe1\xbb\x84",		"\xe1\xbb\x87" => "\xe1\xbb\x86",		"\xe1\xbb\x89" => "\xe1\xbb\x88",		"\xe1\xbb\x8b" => "\xe1\xbb\x8a",
448
-		"\xe1\xbb\x8d" => "\xe1\xbb\x8c",		"\xe1\xbb\x8f" => "\xe1\xbb\x8e",		"\xe1\xbb\x91" => "\xe1\xbb\x90",		"\xe1\xbb\x93" => "\xe1\xbb\x92",
449
-		"\xe1\xbb\x95" => "\xe1\xbb\x94",		"\xe1\xbb\x97" => "\xe1\xbb\x96",		"\xe1\xbb\x99" => "\xe1\xbb\x98",		"\xe1\xbb\x9b" => "\xe1\xbb\x9a",
450
-		"\xe1\xbb\x9d" => "\xe1\xbb\x9c",		"\xe1\xbb\x9f" => "\xe1\xbb\x9e",		"\xe1\xbb\xa1" => "\xe1\xbb\xa0",		"\xe1\xbb\xa3" => "\xe1\xbb\xa2",
451
-		"\xe1\xbb\xa5" => "\xe1\xbb\xa4",		"\xe1\xbb\xa7" => "\xe1\xbb\xa6",		"\xe1\xbb\xa9" => "\xe1\xbb\xa8",		"\xe1\xbb\xab" => "\xe1\xbb\xaa",
452
-		"\xe1\xbb\xad" => "\xe1\xbb\xac",		"\xe1\xbb\xaf" => "\xe1\xbb\xae",		"\xe1\xbb\xb1" => "\xe1\xbb\xb0",		"\xe1\xbb\xb3" => "\xe1\xbb\xb2",
453
-		"\xe1\xbb\xb5" => "\xe1\xbb\xb4",		"\xe1\xbb\xb7" => "\xe1\xbb\xb6",		"\xe1\xbb\xb9" => "\xe1\xbb\xb8",		"\xe1\xbc\x80" => "\xe1\xbc\x88",
454
-		"\xe1\xbc\x81" => "\xe1\xbc\x89",		"\xe1\xbc\x82" => "\xe1\xbc\x8a",		"\xe1\xbc\x83" => "\xe1\xbc\x8b",		"\xe1\xbc\x84" => "\xe1\xbc\x8c",
455
-		"\xe1\xbc\x85" => "\xe1\xbc\x8d",		"\xe1\xbc\x86" => "\xe1\xbc\x8e",		"\xe1\xbc\x87" => "\xe1\xbc\x8f",		"\xe1\xbc\x90" => "\xe1\xbc\x98",
456
-		"\xe1\xbc\x91" => "\xe1\xbc\x99",		"\xe1\xbc\x92" => "\xe1\xbc\x9a",		"\xe1\xbc\x93" => "\xe1\xbc\x9b",		"\xe1\xbc\x94" => "\xe1\xbc\x9c",
457
-		"\xe1\xbc\x95" => "\xe1\xbc\x9d",		"\xe1\xbc\xa0" => "\xe1\xbc\xa8",		"\xe1\xbc\xa1" => "\xe1\xbc\xa9",		"\xe1\xbc\xa2" => "\xe1\xbc\xaa",
458
-		"\xe1\xbc\xa3" => "\xe1\xbc\xab",		"\xe1\xbc\xa4" => "\xe1\xbc\xac",		"\xe1\xbc\xa5" => "\xe1\xbc\xad",		"\xe1\xbc\xa6" => "\xe1\xbc\xae",
459
-		"\xe1\xbc\xa7" => "\xe1\xbc\xaf",		"\xe1\xbc\xb0" => "\xe1\xbc\xb8",		"\xe1\xbc\xb1" => "\xe1\xbc\xb9",		"\xe1\xbc\xb2" => "\xe1\xbc\xba",
460
-		"\xe1\xbc\xb3" => "\xe1\xbc\xbb",		"\xe1\xbc\xb4" => "\xe1\xbc\xbc",		"\xe1\xbc\xb5" => "\xe1\xbc\xbd",		"\xe1\xbc\xb6" => "\xe1\xbc\xbe",
461
-		"\xe1\xbc\xb7" => "\xe1\xbc\xbf",		"\xe1\xbd\x80" => "\xe1\xbd\x88",		"\xe1\xbd\x81" => "\xe1\xbd\x89",		"\xe1\xbd\x82" => "\xe1\xbd\x8a",
462
-		"\xe1\xbd\x83" => "\xe1\xbd\x8b",		"\xe1\xbd\x84" => "\xe1\xbd\x8c",		"\xe1\xbd\x85" => "\xe1\xbd\x8d",		"\xcf\x85\xcc\x93" => "\xe1\xbd\x90",
463
-		"\xcf\x85\xcc\x93\xcc\x80" => "\xe1\xbd\x92",	"\xcf\x85\xcc\x93\xcc\x81" => "\xe1\xbd\x94",	"\xcf\x85\xcc\x93\xcd\x82" => "\xe1\xbd\x96",		"\xe1\xbd\x91" => "\xe1\xbd\x99",
464
-		"\xe1\xbd\x93" => "\xe1\xbd\x9b",		"\xe1\xbd\x95" => "\xe1\xbd\x9d",		"\xe1\xbd\x97" => "\xe1\xbd\x9f",		"\xe1\xbd\xa0" => "\xe1\xbd\xa8",
465
-		"\xe1\xbd\xa1" => "\xe1\xbd\xa9",		"\xe1\xbd\xa2" => "\xe1\xbd\xaa",		"\xe1\xbd\xa3" => "\xe1\xbd\xab",		"\xe1\xbd\xa4" => "\xe1\xbd\xac",
466
-		"\xe1\xbd\xa5" => "\xe1\xbd\xad",		"\xe1\xbd\xa6" => "\xe1\xbd\xae",		"\xe1\xbd\xa7" => "\xe1\xbd\xaf",		"\xe1\xbc\x80\xce\xb9" => "\xe1\xbe\x80",
467
-		"\xe1\xbc\x81\xce\xb9" => "\xe1\xbe\x81",	"\xe1\xbc\x82\xce\xb9" => "\xe1\xbe\x82",	"\xe1\xbc\x83\xce\xb9" => "\xe1\xbe\x83",	"\xe1\xbc\x84\xce\xb9" => "\xe1\xbe\x84",
468
-		"\xe1\xbc\x85\xce\xb9" => "\xe1\xbe\x85",	"\xe1\xbc\x86\xce\xb9" => "\xe1\xbe\x86",	"\xe1\xbc\x87\xce\xb9" => "\xe1\xbe\x87",	"\xe1\xbe\x80" => "\xe1\xbe\x88",
469
-		"\xe1\xbe\x81" => "\xe1\xbe\x89",		"\xe1\xbe\x82" => "\xe1\xbe\x8a",		"\xe1\xbe\x83" => "\xe1\xbe\x8b",		"\xe1\xbe\x84" => "\xe1\xbe\x8c",
470
-		"\xe1\xbe\x85" => "\xe1\xbe\x8d",		"\xe1\xbe\x86" => "\xe1\xbe\x8e",		"\xe1\xbe\x87" => "\xe1\xbe\x8f",		"\xe1\xbc\xa0\xce\xb9" => "\xe1\xbe\x90",
471
-		"\xe1\xbc\xa1\xce\xb9" => "\xe1\xbe\x91",	"\xe1\xbc\xa2\xce\xb9" => "\xe1\xbe\x92",	"\xe1\xbc\xa3\xce\xb9" => "\xe1\xbe\x93",	"\xe1\xbc\xa4\xce\xb9" => "\xe1\xbe\x94",
472
-		"\xe1\xbc\xa5\xce\xb9" => "\xe1\xbe\x95",	"\xe1\xbc\xa6\xce\xb9" => "\xe1\xbe\x96",	"\xe1\xbc\xa7\xce\xb9" => "\xe1\xbe\x97",	"\xe1\xbe\x90" => "\xe1\xbe\x98",
473
-		"\xe1\xbe\x91" => "\xe1\xbe\x99",		"\xe1\xbe\x92" => "\xe1\xbe\x9a",		"\xe1\xbe\x93" => "\xe1\xbe\x9b",		"\xe1\xbe\x94" => "\xe1\xbe\x9c",
474
-		"\xe1\xbe\x95" => "\xe1\xbe\x9d",		"\xe1\xbe\x96" => "\xe1\xbe\x9e",		"\xe1\xbe\x97" => "\xe1\xbe\x9f",		"\xe1\xbd\xa0\xce\xb9" => "\xe1\xbe\xa0",
475
-		"\xe1\xbd\xa1\xce\xb9" => "\xe1\xbe\xa1",	"\xe1\xbd\xa2\xce\xb9" => "\xe1\xbe\xa2",	"\xe1\xbd\xa3\xce\xb9" => "\xe1\xbe\xa3",	"\xe1\xbd\xa4\xce\xb9" => "\xe1\xbe\xa4",
476
-		"\xe1\xbd\xa5\xce\xb9" => "\xe1\xbe\xa5",	"\xe1\xbd\xa6\xce\xb9" => "\xe1\xbe\xa6",	"\xe1\xbd\xa7\xce\xb9" => "\xe1\xbe\xa7",	"\xe1\xbe\xa0" => "\xe1\xbe\xa8",
477
-		"\xe1\xbe\xa1" => "\xe1\xbe\xa9",		"\xe1\xbe\xa2" => "\xe1\xbe\xaa",		"\xe1\xbe\xa3" => "\xe1\xbe\xab",		"\xe1\xbe\xa4" => "\xe1\xbe\xac",
478
-		"\xe1\xbe\xa5" => "\xe1\xbe\xad",		"\xe1\xbe\xa6" => "\xe1\xbe\xae",		"\xe1\xbe\xa7" => "\xe1\xbe\xaf",		"\xe1\xbd\xb0\xce\xb9" => "\xe1\xbe\xb2",
479
-		"\xce\xb1\xce\xb9" => "\xe1\xbe\xb3",	"\xce\xac\xce\xb9" => "\xe1\xbe\xb4",	"\xce\xb1\xcd\x82" => "\xe1\xbe\xb6",		"\xce\xb1\xcd\x82\xce\xb9" => "\xe1\xbe\xb7",
480
-		"\xe1\xbe\xb0" => "\xe1\xbe\xb8",		"\xe1\xbe\xb1" => "\xe1\xbe\xb9",		"\xe1\xbd\xb0" => "\xe1\xbe\xba",		"\xe1\xbd\xb1" => "\xe1\xbe\xbb",
481
-		"\xe1\xbe\xb3" => "\xe1\xbe\xbc",		"\xce\xb9" => "\xe1\xbe\xbe",		"\xe1\xbd\xb4\xce\xb9" => "\xe1\xbf\x82",	"\xce\xb7\xce\xb9" => "\xe1\xbf\x83",
482
-		"\xce\xae\xce\xb9" => "\xe1\xbf\x84",	"\xce\xb7\xcd\x82" => "\xe1\xbf\x86",		"\xce\xb7\xcd\x82\xce\xb9" => "\xe1\xbf\x87",	"\xe1\xbd\xb2" => "\xe1\xbf\x88",
483
-		"\xe1\xbd\xb3" => "\xe1\xbf\x89",		"\xe1\xbd\xb4" => "\xe1\xbf\x8a",		"\xe1\xbd\xb5" => "\xe1\xbf\x8b",		"\xe1\xbf\x83" => "\xe1\xbf\x8c",
484
-		"\xce\xb9\xcc\x88\xcc\x80" => "\xe1\xbf\x92",	"\xce\xb9\xcc\x88\xcc\x81" => "\xe1\xbf\x93",	"\xce\xb9\xcd\x82" => "\xe1\xbf\x96",		"\xce\xb9\xcc\x88\xcd\x82" => "\xe1\xbf\x97",
485
-		"\xe1\xbf\x90" => "\xe1\xbf\x98",		"\xe1\xbf\x91" => "\xe1\xbf\x99",		"\xe1\xbd\xb6" => "\xe1\xbf\x9a",		"\xe1\xbd\xb7" => "\xe1\xbf\x9b",
486
-		"\xcf\x85\xcc\x88\xcc\x80" => "\xe1\xbf\xa2",	"\xcf\x85\xcc\x88\xcc\x81" => "\xe1\xbf\xa3",	"\xcf\x81\xcc\x93" => "\xe1\xbf\xa4",		"\xcf\x85\xcd\x82" => "\xe1\xbf\xa6",
487
-		"\xcf\x85\xcc\x88\xcd\x82" => "\xe1\xbf\xa7",		"\xe1\xbf\xa0" => "\xe1\xbf\xa8",		"\xe1\xbf\xa1" => "\xe1\xbf\xa9",		"\xe1\xbd\xba" => "\xe1\xbf\xaa",
488
-		"\xe1\xbd\xbb" => "\xe1\xbf\xab",		"\xe1\xbf\xa5" => "\xe1\xbf\xac",		"\xe1\xbd\xbc\xce\xb9" => "\xe1\xbf\xb2",	"\xcf\x89\xce\xb9" => "\xe1\xbf\xb3",
489
-		"\xcf\x8e\xce\xb9" => "\xe1\xbf\xb4",	"\xcf\x89\xcd\x82" => "\xe1\xbf\xb6",		"\xcf\x89\xcd\x82\xce\xb9" => "\xe1\xbf\xb7",	"\xe1\xbd\xb8" => "\xe1\xbf\xb8",
490
-		"\xe1\xbd\xb9" => "\xe1\xbf\xb9",		"\xe1\xbd\xbc" => "\xe1\xbf\xba",		"\xe1\xbd\xbd" => "\xe1\xbf\xbb",		"\xe1\xbf\xb3" => "\xe1\xbf\xbc",
491
-		"\xcf\x89" => "\xe2\x84\xa6",		"k" => "\xe2\x84\xaa",		"\xc3\xa5" => "\xe2\x84\xab",		"\xe2\x85\x8e" => "\xe2\x84\xb2",
492
-		"\xe2\x85\xb0" => "\xe2\x85\xa0",		"\xe2\x85\xb1" => "\xe2\x85\xa1",		"\xe2\x85\xb2" => "\xe2\x85\xa2",		"\xe2\x85\xb3" => "\xe2\x85\xa3",
493
-		"\xe2\x85\xb4" => "\xe2\x85\xa4",		"\xe2\x85\xb5" => "\xe2\x85\xa5",		"\xe2\x85\xb6" => "\xe2\x85\xa6",		"\xe2\x85\xb7" => "\xe2\x85\xa7",
494
-		"\xe2\x85\xb8" => "\xe2\x85\xa8",		"\xe2\x85\xb9" => "\xe2\x85\xa9",		"\xe2\x85\xba" => "\xe2\x85\xaa",		"\xe2\x85\xbb" => "\xe2\x85\xab",
495
-		"\xe2\x85\xbc" => "\xe2\x85\xac",		"\xe2\x85\xbd" => "\xe2\x85\xad",		"\xe2\x85\xbe" => "\xe2\x85\xae",		"\xe2\x85\xbf" => "\xe2\x85\xaf",
496
-		"\xe2\x86\x84" => "\xe2\x86\x83",		"\xe2\x93\x90" => "\xe2\x92\xb6",		"\xe2\x93\x91" => "\xe2\x92\xb7",		"\xe2\x93\x92" => "\xe2\x92\xb8",
497
-		"\xe2\x93\x93" => "\xe2\x92\xb9",		"\xe2\x93\x94" => "\xe2\x92\xba",		"\xe2\x93\x95" => "\xe2\x92\xbb",		"\xe2\x93\x96" => "\xe2\x92\xbc",
498
-		"\xe2\x93\x97" => "\xe2\x92\xbd",		"\xe2\x93\x98" => "\xe2\x92\xbe",		"\xe2\x93\x99" => "\xe2\x92\xbf",		"\xe2\x93\x9a" => "\xe2\x93\x80",
499
-		"\xe2\x93\x9b" => "\xe2\x93\x81",		"\xe2\x93\x9c" => "\xe2\x93\x82",		"\xe2\x93\x9d" => "\xe2\x93\x83",		"\xe2\x93\x9e" => "\xe2\x93\x84",
500
-		"\xe2\x93\x9f" => "\xe2\x93\x85",		"\xe2\x93\xa0" => "\xe2\x93\x86",		"\xe2\x93\xa1" => "\xe2\x93\x87",		"\xe2\x93\xa2" => "\xe2\x93\x88",
501
-		"\xe2\x93\xa3" => "\xe2\x93\x89",		"\xe2\x93\xa4" => "\xe2\x93\x8a",		"\xe2\x93\xa5" => "\xe2\x93\x8b",		"\xe2\x93\xa6" => "\xe2\x93\x8c",
502
-		"\xe2\x93\xa7" => "\xe2\x93\x8d",		"\xe2\x93\xa8" => "\xe2\x93\x8e",		"\xe2\x93\xa9" => "\xe2\x93\x8f",		"\xe2\xb0\xb0" => "\xe2\xb0\x80",
503
-		"\xe2\xb0\xb1" => "\xe2\xb0\x81",		"\xe2\xb0\xb2" => "\xe2\xb0\x82",		"\xe2\xb0\xb3" => "\xe2\xb0\x83",		"\xe2\xb0\xb4" => "\xe2\xb0\x84",
504
-		"\xe2\xb0\xb5" => "\xe2\xb0\x85",		"\xe2\xb0\xb6" => "\xe2\xb0\x86",		"\xe2\xb0\xb7" => "\xe2\xb0\x87",		"\xe2\xb0\xb8" => "\xe2\xb0\x88",
505
-		"\xe2\xb0\xb9" => "\xe2\xb0\x89",		"\xe2\xb0\xba" => "\xe2\xb0\x8a",		"\xe2\xb0\xbb" => "\xe2\xb0\x8b",		"\xe2\xb0\xbc" => "\xe2\xb0\x8c",
506
-		"\xe2\xb0\xbd" => "\xe2\xb0\x8d",		"\xe2\xb0\xbe" => "\xe2\xb0\x8e",		"\xe2\xb0\xbf" => "\xe2\xb0\x8f",		"\xe2\xb1\x80" => "\xe2\xb0\x90",
507
-		"\xe2\xb1\x81" => "\xe2\xb0\x91",		"\xe2\xb1\x82" => "\xe2\xb0\x92",		"\xe2\xb1\x83" => "\xe2\xb0\x93",		"\xe2\xb1\x84" => "\xe2\xb0\x94",
508
-		"\xe2\xb1\x85" => "\xe2\xb0\x95",		"\xe2\xb1\x86" => "\xe2\xb0\x96",		"\xe2\xb1\x87" => "\xe2\xb0\x97",		"\xe2\xb1\x88" => "\xe2\xb0\x98",
509
-		"\xe2\xb1\x89" => "\xe2\xb0\x99",		"\xe2\xb1\x8a" => "\xe2\xb0\x9a",		"\xe2\xb1\x8b" => "\xe2\xb0\x9b",		"\xe2\xb1\x8c" => "\xe2\xb0\x9c",
510
-		"\xe2\xb1\x8d" => "\xe2\xb0\x9d",		"\xe2\xb1\x8e" => "\xe2\xb0\x9e",		"\xe2\xb1\x8f" => "\xe2\xb0\x9f",		"\xe2\xb1\x90" => "\xe2\xb0\xa0",
511
-		"\xe2\xb1\x91" => "\xe2\xb0\xa1",		"\xe2\xb1\x92" => "\xe2\xb0\xa2",		"\xe2\xb1\x93" => "\xe2\xb0\xa3",		"\xe2\xb1\x94" => "\xe2\xb0\xa4",
512
-		"\xe2\xb1\x95" => "\xe2\xb0\xa5",		"\xe2\xb1\x96" => "\xe2\xb0\xa6",		"\xe2\xb1\x97" => "\xe2\xb0\xa7",		"\xe2\xb1\x98" => "\xe2\xb0\xa8",
513
-		"\xe2\xb1\x99" => "\xe2\xb0\xa9",		"\xe2\xb1\x9a" => "\xe2\xb0\xaa",		"\xe2\xb1\x9b" => "\xe2\xb0\xab",		"\xe2\xb1\x9c" => "\xe2\xb0\xac",
514
-		"\xe2\xb1\x9d" => "\xe2\xb0\xad",		"\xe2\xb1\x9e" => "\xe2\xb0\xae",		"\xe2\xb1\xa1" => "\xe2\xb1\xa0",		"\xc9\xab" => "\xe2\xb1\xa2",
515
-		"\xe1\xb5\xbd" => "\xe2\xb1\xa3",		"\xc9\xbd" => "\xe2\xb1\xa4",		"\xe2\xb1\xa8" => "\xe2\xb1\xa7",		"\xe2\xb1\xaa" => "\xe2\xb1\xa9",
516
-		"\xe2\xb1\xac" => "\xe2\xb1\xab",		"\xe2\xb1\xb6" => "\xe2\xb1\xb5",		"\xe2\xb2\x81" => "\xe2\xb2\x80",		"\xe2\xb2\x83" => "\xe2\xb2\x82",
517
-		"\xe2\xb2\x85" => "\xe2\xb2\x84",		"\xe2\xb2\x87" => "\xe2\xb2\x86",		"\xe2\xb2\x89" => "\xe2\xb2\x88",		"\xe2\xb2\x8b" => "\xe2\xb2\x8a",
518
-		"\xe2\xb2\x8d" => "\xe2\xb2\x8c",		"\xe2\xb2\x8f" => "\xe2\xb2\x8e",		"\xe2\xb2\x91" => "\xe2\xb2\x90",		"\xe2\xb2\x93" => "\xe2\xb2\x92",
519
-		"\xe2\xb2\x95" => "\xe2\xb2\x94",		"\xe2\xb2\x97" => "\xe2\xb2\x96",		"\xe2\xb2\x99" => "\xe2\xb2\x98",		"\xe2\xb2\x9b" => "\xe2\xb2\x9a",
520
-		"\xe2\xb2\x9d" => "\xe2\xb2\x9c",		"\xe2\xb2\x9f" => "\xe2\xb2\x9e",		"\xe2\xb2\xa1" => "\xe2\xb2\xa0",		"\xe2\xb2\xa3" => "\xe2\xb2\xa2",
521
-		"\xe2\xb2\xa5" => "\xe2\xb2\xa4",		"\xe2\xb2\xa7" => "\xe2\xb2\xa6",		"\xe2\xb2\xa9" => "\xe2\xb2\xa8",		"\xe2\xb2\xab" => "\xe2\xb2\xaa",
522
-		"\xe2\xb2\xad" => "\xe2\xb2\xac",		"\xe2\xb2\xaf" => "\xe2\xb2\xae",		"\xe2\xb2\xb1" => "\xe2\xb2\xb0",		"\xe2\xb2\xb3" => "\xe2\xb2\xb2",
523
-		"\xe2\xb2\xb5" => "\xe2\xb2\xb4",		"\xe2\xb2\xb7" => "\xe2\xb2\xb6",		"\xe2\xb2\xb9" => "\xe2\xb2\xb8",		"\xe2\xb2\xbb" => "\xe2\xb2\xba",
524
-		"\xe2\xb2\xbd" => "\xe2\xb2\xbc",		"\xe2\xb2\xbf" => "\xe2\xb2\xbe",		"\xe2\xb3\x81" => "\xe2\xb3\x80",		"\xe2\xb3\x83" => "\xe2\xb3\x82",
525
-		"\xe2\xb3\x85" => "\xe2\xb3\x84",		"\xe2\xb3\x87" => "\xe2\xb3\x86",		"\xe2\xb3\x89" => "\xe2\xb3\x88",		"\xe2\xb3\x8b" => "\xe2\xb3\x8a",
526
-		"\xe2\xb3\x8d" => "\xe2\xb3\x8c",		"\xe2\xb3\x8f" => "\xe2\xb3\x8e",		"\xe2\xb3\x91" => "\xe2\xb3\x90",		"\xe2\xb3\x93" => "\xe2\xb3\x92",
527
-		"\xe2\xb3\x95" => "\xe2\xb3\x94",		"\xe2\xb3\x97" => "\xe2\xb3\x96",		"\xe2\xb3\x99" => "\xe2\xb3\x98",		"\xe2\xb3\x9b" => "\xe2\xb3\x9a",
528
-		"\xe2\xb3\x9d" => "\xe2\xb3\x9c",		"\xe2\xb3\x9f" => "\xe2\xb3\x9e",		"\xe2\xb3\xa1" => "\xe2\xb3\xa0",		"\xe2\xb3\xa3" => "\xe2\xb3\xa2",
529
-		"ff" => "\xef\xac\x80",	"fi" => "\xef\xac\x81",	"fl" => "\xef\xac\x82",	"ffi" => "\xef\xac\x83",
530
-		"ffl" => "\xef\xac\x84",	"st" => "\xef\xac\x85",	"st" => "\xef\xac\x86",	"\xd5\xb4\xd5\xb6" => "\xef\xac\x93",
531
-		"\xd5\xb4\xd5\xa5" => "\xef\xac\x94",	"\xd5\xb4\xd5\xab" => "\xef\xac\x95",	"\xd5\xbe\xd5\xb6" => "\xef\xac\x96",	"\xd5\xb4\xd5\xad" => "\xef\xac\x97",
532
-		"\xef\xbd\x81" => "\xef\xbc\xa1",		"\xef\xbd\x82" => "\xef\xbc\xa2",		"\xef\xbd\x83" => "\xef\xbc\xa3",		"\xef\xbd\x84" => "\xef\xbc\xa4",
533
-		"\xef\xbd\x85" => "\xef\xbc\xa5",		"\xef\xbd\x86" => "\xef\xbc\xa6",		"\xef\xbd\x87" => "\xef\xbc\xa7",		"\xef\xbd\x88" => "\xef\xbc\xa8",
534
-		"\xef\xbd\x89" => "\xef\xbc\xa9",		"\xef\xbd\x8a" => "\xef\xbc\xaa",		"\xef\xbd\x8b" => "\xef\xbc\xab",		"\xef\xbd\x8c" => "\xef\xbc\xac",
535
-		"\xef\xbd\x8d" => "\xef\xbc\xad",	"\xef\xbd\x8e" => "\xef\xbc\xae",		"\xef\xbd\x8f" => "\xef\xbc\xaf",		"\xef\xbd\x90" => "\xef\xbc\xb0",
536
-		"\xef\xbd\x91" => "\xef\xbc\xb1",		"\xef\xbd\x92" => "\xef\xbc\xb2",		"\xef\xbd\x93" => "\xef\xbc\xb3",		"\xef\xbd\x94" => "\xef\xbc\xb4",
537
-		"\xef\xbd\x95" => "\xef\xbc\xb5",		"\xef\xbd\x96" => "\xef\xbc\xb6",		"\xef\xbd\x97" => "\xef\xbc\xb7",	"\xef\xbd\x98" => "\xef\xbc\xb8",
538
-		"\xef\xbd\x99" => "\xef\xbc\xb9",		"\xef\xbd\x9a" => "\xef\xbc\xba",		"\xf0\x90\x90\xa8" => "\xf0\x90\x90\x80",	"\xf0\x90\x90\xa9" => "\xf0\x90\x90\x81",
539
-		"\xf0\x90\x90\xaa" => "\xf0\x90\x90\x82",	"\xf0\x90\x90\xab" => "\xf0\x90\x90\x83",	"\xf0\x90\x90\xac" => "\xf0\x90\x90\x84",	"\xf0\x90\x90\xad" => "\xf0\x90\x90\x85",
540
-		"\xf0\x90\x90\xae" => "\xf0\x90\x90\x86",	"\xf0\x90\x90\xaf" => "\xf0\x90\x90\x87",	"\xf0\x90\x90\xb0" => "\xf0\x90\x90\x88",	"\xf0\x90\x90\xb1" => "\xf0\x90\x90\x89",
541
-		"\xf0\x90\x90\xb2" => "\xf0\x90\x90\x8a",	"\xf0\x90\x90\xb3" => "\xf0\x90\x90\x8b",	"\xf0\x90\x90\xb4" => "\xf0\x90\x90\x8c",	"\xf0\x90\x90\xb5" => "\xf0\x90\x90\x8d",
542
-		"\xf0\x90\x90\xb6" => "\xf0\x90\x90\x8e",	"\xf0\x90\x90\xb7" => "\xf0\x90\x90\x8f",	"\xf0\x90\x90\xb8" => "\xf0\x90\x90\x90",	"\xf0\x90\x90\xb9" => "\xf0\x90\x90\x91",
543
-		"\xf0\x90\x90\xba" => "\xf0\x90\x90\x92",	"\xf0\x90\x90\xbb" => "\xf0\x90\x90\x93",	"\xf0\x90\x90\xbc" => "\xf0\x90\x90\x94",	"\xf0\x90\x90\xbd" => "\xf0\x90\x90\x95",
544
-		"\xf0\x90\x90\xbe" => "\xf0\x90\x90\x96",	"\xf0\x90\x90\xbf" => "\xf0\x90\x90\x97",	"\xf0\x90\x91\x80" => "\xf0\x90\x90\x98",	"\xf0\x90\x91\x81" => "\xf0\x90\x90\x99",
545
-		"\xf0\x90\x91\x82" => "\xf0\x90\x90\x9a",	"\xf0\x90\x91\x83" => "\xf0\x90\x90\x9b",	"\xf0\x90\x91\x84" => "\xf0\x90\x90\x9c",	"\xf0\x90\x91\x85" => "\xf0\x90\x90\x9d",
546
-		"\xf0\x90\x91\x86" => "\xf0\x90\x90\x9e",	"\xf0\x90\x91\x87" => "\xf0\x90\x90\x9f",	"\xf0\x90\x91\x88" => "\xf0\x90\x90\xa0",	"\xf0\x90\x91\x89" => "\xf0\x90\x90\xa1",
547
-		"\xf0\x90\x91\x8a" => "\xf0\x90\x90\xa2",	"\xf0\x90\x91\x8b" => "\xf0\x90\x90\xa3",	"\xf0\x90\x91\x8c" => "\xf0\x90\x90\xa4",	"\xf0\x90\x91\x8d" => "\xf0\x90\x90\xa5",
548
-		"\xf0\x90\x90\xa6" => "\xf0\x90\x91\x8e",	"\xf0\x90\x90\xa7" => "\xf0\x90\x91\x8f",
296
+		'a' => 'A', 'b' => 'B', 'c' => 'C', 'd' => 'D',
297
+		'e' => 'E', 'f' => 'F', 'g' => 'G', 'h' => 'H',
298
+		'i' => 'I', 'j' => 'J', 'k' => 'K', 'l' => 'L',
299
+		'm' => 'M', 'n' => 'N', 'o' => 'O', 'p' => 'P',
300
+		'q' => 'Q', 'r' => 'R', 's' => 'S', 't' => 'T',
301
+		'u' => 'U', 'v' => 'V', 'w' => 'W', 'x' => 'X',
302
+		'y' => 'Y', 'z' => 'Z', "\xce\xbc" => "\xc2\xb5", "\xc3\xa0" => "\xc3\x80",
303
+		"\xc3\xa1" => "\xc3\x81", "\xc3\xa2" => "\xc3\x82", "\xc3\xa3" => "\xc3\x83", "\xc3\xa4" => "\xc3\x84",
304
+		"\xc3\xa5" => "\xc3\x85", "\xc3\xa6" => "\xc3\x86", "\xc3\xa7" => "\xc3\x87", "\xc3\xa8" => "\xc3\x88",
305
+		"\xc3\xa9" => "\xc3\x89", "\xc3\xaa" => "\xc3\x8a", "\xc3\xab" => "\xc3\x8b", "\xc3\xac" => "\xc3\x8c",
306
+		"\xc3\xad" => "\xc3\x8d", "\xc3\xae" => "\xc3\x8e", "\xc3\xaf" => "\xc3\x8f", "\xc3\xb0" => "\xc3\x90",
307
+		"\xc3\xb1" => "\xc3\x91", "\xc3\xb2" => "\xc3\x92", "\xc3\xb3" => "\xc3\x93", "\xc3\xb4" => "\xc3\x94",
308
+		"\xc3\xb5" => "\xc3\x95", "\xc3\xb6" => "\xc3\x96", "\xc3\xb8" => "\xc3\x98", "\xc3\xb9" => "\xc3\x99",
309
+		"\xc3\xba" => "\xc3\x9a", "\xc3\xbb" => "\xc3\x9b", "\xc3\xbc" => "\xc3\x9c", "\xc3\xbd" => "\xc3\x9d",
310
+		"\xc3\xbe" => "\xc3\x9e", "ss" => "\xc3\x9f", "\xc4\x81" => "\xc4\x80", "\xc4\x83" => "\xc4\x82",
311
+		"\xc4\x85" => "\xc4\x84", "\xc4\x87" => "\xc4\x86", "\xc4\x89" => "\xc4\x88", "\xc4\x8b" => "\xc4\x8a",
312
+		"\xc4\x8d" => "\xc4\x8c", "\xc4\x8f" => "\xc4\x8e", "\xc4\x91" => "\xc4\x90", "\xc4\x93" => "\xc4\x92",
313
+		"\xc4\x95" => "\xc4\x94", "\xc4\x97" => "\xc4\x96", "\xc4\x99" => "\xc4\x98", "\xc4\x9b" => "\xc4\x9a",
314
+		"\xc4\x9d" => "\xc4\x9c", "\xc4\x9f" => "\xc4\x9e", "\xc4\xa1" => "\xc4\xa0", "\xc4\xa3" => "\xc4\xa2",
315
+		"\xc4\xa5" => "\xc4\xa4", "\xc4\xa7" => "\xc4\xa6", "\xc4\xa9" => "\xc4\xa8", "\xc4\xab" => "\xc4\xaa",
316
+		"\xc4\xad" => "\xc4\xac", "\xc4\xaf" => "\xc4\xae", "i\xcc\x87" => "\xc4\xb0", "\xc4\xb3" => "\xc4\xb2",
317
+		"\xc4\xb5" => "\xc4\xb4", "\xc4\xb7" => "\xc4\xb6", "\xc4\xba" => "\xc4\xb9", "\xc4\xbc" => "\xc4\xbb",
318
+		"\xc4\xbe" => "\xc4\xbd", "\xc5\x80" => "\xc4\xbf", "\xc5\x82" => "\xc5\x81", "\xc5\x84" => "\xc5\x83",
319
+		"\xc5\x86" => "\xc5\x85", "\xc5\x88" => "\xc5\x87", "\xca\xbcn" => "\xc5\x89", "\xc5\x8b" => "\xc5\x8a",
320
+		"\xc5\x8d" => "\xc5\x8c", "\xc5\x8f" => "\xc5\x8e", "\xc5\x91" => "\xc5\x90", "\xc5\x93" => "\xc5\x92",
321
+		"\xc5\x95" => "\xc5\x94", "\xc5\x97" => "\xc5\x96", "\xc5\x99" => "\xc5\x98", "\xc5\x9b" => "\xc5\x9a",
322
+		"\xc5\x9d" => "\xc5\x9c", "\xc5\x9f" => "\xc5\x9e", "\xc5\xa1" => "\xc5\xa0", "\xc5\xa3" => "\xc5\xa2",
323
+		"\xc5\xa5" => "\xc5\xa4", "\xc5\xa7" => "\xc5\xa6", "\xc5\xa9" => "\xc5\xa8", "\xc5\xab" => "\xc5\xaa",
324
+		"\xc5\xad" => "\xc5\xac", "\xc5\xaf" => "\xc5\xae", "\xc5\xb1" => "\xc5\xb0", "\xc5\xb3" => "\xc5\xb2",
325
+		"\xc5\xb5" => "\xc5\xb4", "\xc5\xb7" => "\xc5\xb6", "\xc3\xbf" => "\xc5\xb8", "\xc5\xba" => "\xc5\xb9",
326
+		"\xc5\xbc" => "\xc5\xbb", "\xc5\xbe" => "\xc5\xbd", "\xc9\x93" => "\xc6\x81",
327
+		"\xc6\x83" => "\xc6\x82", "\xc6\x85" => "\xc6\x84", "\xc9\x94" => "\xc6\x86", "\xc6\x88" => "\xc6\x87",
328
+		"\xc9\x96" => "\xc6\x89", "\xc9\x97" => "\xc6\x8a", "\xc6\x8c" => "\xc6\x8b", "\xc7\x9d" => "\xc6\x8e",
329
+		"\xc9\x99" => "\xc6\x8f", "\xc9\x9b" => "\xc6\x90", "\xc6\x92" => "\xc6\x91", "\xc9\xa0" => "\xc6\x93",
330
+		"\xc9\xa3" => "\xc6\x94", "\xc9\xa9" => "\xc6\x96", "\xc9\xa8" => "\xc6\x97", "\xc6\x99" => "\xc6\x98",
331
+		"\xc9\xaf" => "\xc6\x9c", "\xc9\xb2" => "\xc6\x9d", "\xc9\xb5" => "\xc6\x9f", "\xc6\xa1" => "\xc6\xa0",
332
+		"\xc6\xa3" => "\xc6\xa2", "\xc6\xa5" => "\xc6\xa4", "\xca\x80" => "\xc6\xa6", "\xc6\xa8" => "\xc6\xa7",
333
+		"\xca\x83" => "\xc6\xa9", "\xc6\xad" => "\xc6\xac", "\xca\x88" => "\xc6\xae", "\xc6\xb0" => "\xc6\xaf",
334
+		"\xca\x8a" => "\xc6\xb1", "\xca\x8b" => "\xc6\xb2", "\xc6\xb4" => "\xc6\xb3", "\xc6\xb6" => "\xc6\xb5",
335
+		"\xca\x92" => "\xc6\xb7", "\xc6\xb9" => "\xc6\xb8", "\xc6\xbd" => "\xc6\xbc", "\xc7\x86" => "\xc7\x84",
336
+		"\xc7\x86" => "\xc7\x85", "\xc7\x89" => "\xc7\x87", "\xc7\x89" => "\xc7\x88", "\xc7\x8c" => "\xc7\x8a",
337
+		"\xc7\x8c" => "\xc7\x8b", "\xc7\x8e" => "\xc7\x8d", "\xc7\x90" => "\xc7\x8f", "\xc7\x92" => "\xc7\x91",
338
+		"\xc7\x94" => "\xc7\x93", "\xc7\x96" => "\xc7\x95", "\xc7\x98" => "\xc7\x97", "\xc7\x9a" => "\xc7\x99",
339
+		"\xc7\x9c" => "\xc7\x9b", "\xc7\x9f" => "\xc7\x9e", "\xc7\xa1" => "\xc7\xa0", "\xc7\xa3" => "\xc7\xa2",
340
+		"\xc7\xa5" => "\xc7\xa4", "\xc7\xa7" => "\xc7\xa6", "\xc7\xa9" => "\xc7\xa8", "\xc7\xab" => "\xc7\xaa",
341
+		"\xc7\xad" => "\xc7\xac", "\xc7\xaf" => "\xc7\xae", "j\xcc\x8c" => "\xc7\xb0", "\xc7\xb3" => "\xc7\xb1",
342
+		"\xc7\xb3" => "\xc7\xb2", "\xc7\xb5" => "\xc7\xb4", "\xc6\x95" => "\xc7\xb6", "\xc6\xbf" => "\xc7\xb7",
343
+		"\xc7\xb9" => "\xc7\xb8", "\xc7\xbb" => "\xc7\xba", "\xc7\xbd" => "\xc7\xbc", "\xc7\xbf" => "\xc7\xbe",
344
+		"\xc8\x81" => "\xc8\x80", "\xc8\x83" => "\xc8\x82", "\xc8\x85" => "\xc8\x84", "\xc8\x87" => "\xc8\x86",
345
+		"\xc8\x89" => "\xc8\x88", "\xc8\x8b" => "\xc8\x8a", "\xc8\x8d" => "\xc8\x8c", "\xc8\x8f" => "\xc8\x8e",
346
+		"\xc8\x91" => "\xc8\x90", "\xc8\x93" => "\xc8\x92", "\xc8\x95" => "\xc8\x94", "\xc8\x97" => "\xc8\x96",
347
+		"\xc8\x99" => "\xc8\x98", "\xc8\x9b" => "\xc8\x9a", "\xc8\x9d" => "\xc8\x9c", "\xc8\x9f" => "\xc8\x9e",
348
+		"\xc6\x9e" => "\xc8\xa0", "\xc8\xa3" => "\xc8\xa2", "\xc8\xa5" => "\xc8\xa4", "\xc8\xa7" => "\xc8\xa6",
349
+		"\xc8\xa9" => "\xc8\xa8", "\xc8\xab" => "\xc8\xaa", "\xc8\xad" => "\xc8\xac", "\xc8\xaf" => "\xc8\xae",
350
+		"\xc8\xb1" => "\xc8\xb0", "\xc8\xb3" => "\xc8\xb2", "\xe2\xb1\xa5" => "\xc8\xba", "\xc8\xbc" => "\xc8\xbb",
351
+		"\xc6\x9a" => "\xc8\xbd", "\xe2\xb1\xa6" => "\xc8\xbe", "\xc9\x82" => "\xc9\x81", "\xc6\x80" => "\xc9\x83",
352
+		"\xca\x89" => "\xc9\x84", "\xca\x8c" => "\xc9\x85", "\xc9\x87" => "\xc9\x86", "\xc9\x89" => "\xc9\x88",
353
+		"\xc9\x8b" => "\xc9\x8a", "\xc9\x8d" => "\xc9\x8c", "\xc9\x8f" => "\xc9\x8e", "\xce\xb9" => "\xcd\x85",
354
+		"\xce\xac" => "\xce\x86", "\xce\xad" => "\xce\x88", "\xce\xae" => "\xce\x89", "\xce\xaf" => "\xce\x8a",
355
+		"\xcf\x8c" => "\xce\x8c", "\xcf\x8d" => "\xce\x8e", "\xcf\x8e" => "\xce\x8f", "\xce\xb9\xcc\x88\xcc\x81" => "\xce\x90",
356
+		"\xce\xb1" => "\xce\x91", "\xce\xb2" => "\xce\x92", "\xce\xb3" => "\xce\x93", "\xce\xb4" => "\xce\x94",
357
+		"\xce\xb5" => "\xce\x95", "\xce\xb6" => "\xce\x96", "\xce\xb7" => "\xce\x97", "\xce\xb8" => "\xce\x98",
358
+		"\xce\xb9" => "\xce\x99", "\xce\xba" => "\xce\x9a", "\xce\xbb" => "\xce\x9b", "\xce\xbc" => "\xce\x9c",
359
+		"\xce\xbd" => "\xce\x9d", "\xce\xbe" => "\xce\x9e", "\xce\xbf" => "\xce\x9f", "\xcf\x80" => "\xce\xa0",
360
+		"\xcf\x81" => "\xce\xa1", "\xcf\x83" => "\xce\xa3", "\xcf\x84" => "\xce\xa4", "\xcf\x85" => "\xce\xa5",
361
+		"\xcf\x86" => "\xce\xa6", "\xcf\x87" => "\xce\xa7", "\xcf\x88" => "\xce\xa8", "\xcf\x89" => "\xce\xa9",
362
+		"\xcf\x8a" => "\xce\xaa", "\xcf\x8b" => "\xce\xab", "\xcf\x85\xcc\x88\xcc\x81" => "\xce\xb0", "\xcf\x83" => "\xcf\x82",
363
+		"\xce\xb2" => "\xcf\x90", "\xce\xb8" => "\xcf\x91", "\xcf\x86" => "\xcf\x95", "\xcf\x80" => "\xcf\x96",
364
+		"\xcf\x99" => "\xcf\x98", "\xcf\x9b" => "\xcf\x9a", "\xcf\x9d" => "\xcf\x9c", "\xcf\x9f" => "\xcf\x9e",
365
+		"\xcf\xa1" => "\xcf\xa0", "\xcf\xa3" => "\xcf\xa2", "\xcf\xa5" => "\xcf\xa4", "\xcf\xa7" => "\xcf\xa6",
366
+		"\xcf\xa9" => "\xcf\xa8", "\xcf\xab" => "\xcf\xaa", "\xcf\xad" => "\xcf\xac", "\xcf\xaf" => "\xcf\xae",
367
+		"\xce\xba" => "\xcf\xb0", "\xcf\x81" => "\xcf\xb1", "\xce\xb8" => "\xcf\xb4", "\xce\xb5" => "\xcf\xb5",
368
+		"\xcf\xb8" => "\xcf\xb7", "\xcf\xb2" => "\xcf\xb9", "\xcf\xbb" => "\xcf\xba", "\xcd\xbb" => "\xcf\xbd",
369
+		"\xcd\xbc" => "\xcf\xbe", "\xcd\xbd" => "\xcf\xbf", "\xd1\x90" => "\xd0\x80", "\xd1\x91" => "\xd0\x81",
370
+		"\xd1\x92" => "\xd0\x82", "\xd1\x93" => "\xd0\x83", "\xd1\x94" => "\xd0\x84", "\xd1\x95" => "\xd0\x85",
371
+		"\xd1\x96" => "\xd0\x86", "\xd1\x97" => "\xd0\x87", "\xd1\x98" => "\xd0\x88", "\xd1\x99" => "\xd0\x89",
372
+		"\xd1\x9a" => "\xd0\x8a", "\xd1\x9b" => "\xd0\x8b", "\xd1\x9c" => "\xd0\x8c", "\xd1\x9d" => "\xd0\x8d",
373
+		"\xd1\x9e" => "\xd0\x8e", "\xd1\x9f" => "\xd0\x8f", "\xd0\xb0" => "\xd0\x90", "\xd0\xb1" => "\xd0\x91",
374
+		"\xd0\xb2" => "\xd0\x92", "\xd0\xb3" => "\xd0\x93", "\xd0\xb4" => "\xd0\x94", "\xd0\xb5" => "\xd0\x95",
375
+		"\xd0\xb6" => "\xd0\x96", "\xd0\xb7" => "\xd0\x97", "\xd0\xb8" => "\xd0\x98", "\xd0\xb9" => "\xd0\x99",
376
+		"\xd0\xba" => "\xd0\x9a", "\xd0\xbb" => "\xd0\x9b", "\xd0\xbc" => "\xd0\x9c", "\xd0\xbd" => "\xd0\x9d",
377
+		"\xd0\xbe" => "\xd0\x9e", "\xd0\xbf" => "\xd0\x9f", "\xd1\x80" => "\xd0\xa0", "\xd1\x81" => "\xd0\xa1",
378
+		"\xd1\x82" => "\xd0\xa2", "\xd1\x83" => "\xd0\xa3", "\xd1\x84" => "\xd0\xa4", "\xd1\x85" => "\xd0\xa5",
379
+		"\xd1\x86" => "\xd0\xa6", "\xd1\x87" => "\xd0\xa7", "\xd1\x88" => "\xd0\xa8", "\xd1\x89" => "\xd0\xa9",
380
+		"\xd1\x8a" => "\xd0\xaa", "\xd1\x8b" => "\xd0\xab", "\xd1\x8c" => "\xd0\xac", "\xd1\x8d" => "\xd0\xad",
381
+		"\xd1\x8e" => "\xd0\xae", "\xd1\x8f" => "\xd0\xaf", "\xd1\xa1" => "\xd1\xa0", "\xd1\xa3" => "\xd1\xa2",
382
+		"\xd1\xa5" => "\xd1\xa4", "\xd1\xa7" => "\xd1\xa6", "\xd1\xa9" => "\xd1\xa8", "\xd1\xab" => "\xd1\xaa",
383
+		"\xd1\xad" => "\xd1\xac", "\xd1\xaf" => "\xd1\xae", "\xd1\xb1" => "\xd1\xb0", "\xd1\xb3" => "\xd1\xb2",
384
+		"\xd1\xb5" => "\xd1\xb4", "\xd1\xb7" => "\xd1\xb6", "\xd1\xb9" => "\xd1\xb8", "\xd1\xbb" => "\xd1\xba",
385
+		"\xd1\xbd" => "\xd1\xbc", "\xd1\xbf" => "\xd1\xbe", "\xd2\x81" => "\xd2\x80", "\xd2\x8b" => "\xd2\x8a",
386
+		"\xd2\x8d" => "\xd2\x8c", "\xd2\x8f" => "\xd2\x8e", "\xd2\x91" => "\xd2\x90", "\xd2\x93" => "\xd2\x92",
387
+		"\xd2\x95" => "\xd2\x94", "\xd2\x97" => "\xd2\x96", "\xd2\x99" => "\xd2\x98", "\xd2\x9b" => "\xd2\x9a",
388
+		"\xd2\x9d" => "\xd2\x9c", "\xd2\x9f" => "\xd2\x9e", "\xd2\xa1" => "\xd2\xa0", "\xd2\xa3" => "\xd2\xa2",
389
+		"\xd2\xa5" => "\xd2\xa4", "\xd2\xa7" => "\xd2\xa6", "\xd2\xa9" => "\xd2\xa8", "\xd2\xab" => "\xd2\xaa",
390
+		"\xd2\xad" => "\xd2\xac", "\xd2\xaf" => "\xd2\xae", "\xd2\xb1" => "\xd2\xb0", "\xd2\xb3" => "\xd2\xb2",
391
+		"\xd2\xb5" => "\xd2\xb4", "\xd2\xb7" => "\xd2\xb6", "\xd2\xb9" => "\xd2\xb8", "\xd2\xbb" => "\xd2\xba",
392
+		"\xd2\xbd" => "\xd2\xbc", "\xd2\xbf" => "\xd2\xbe", "\xd3\x8f" => "\xd3\x80", "\xd3\x82" => "\xd3\x81",
393
+		"\xd3\x84" => "\xd3\x83", "\xd3\x86" => "\xd3\x85", "\xd3\x88" => "\xd3\x87", "\xd3\x8a" => "\xd3\x89",
394
+		"\xd3\x8c" => "\xd3\x8b", "\xd3\x8e" => "\xd3\x8d", "\xd3\x91" => "\xd3\x90", "\xd3\x93" => "\xd3\x92",
395
+		"\xd3\x95" => "\xd3\x94", "\xd3\x97" => "\xd3\x96", "\xd3\x99" => "\xd3\x98", "\xd3\x9b" => "\xd3\x9a",
396
+		"\xd3\x9d" => "\xd3\x9c", "\xd3\x9f" => "\xd3\x9e", "\xd3\xa1" => "\xd3\xa0", "\xd3\xa3" => "\xd3\xa2",
397
+		"\xd3\xa5" => "\xd3\xa4", "\xd3\xa7" => "\xd3\xa6", "\xd3\xa9" => "\xd3\xa8", "\xd3\xab" => "\xd3\xaa",
398
+		"\xd3\xad" => "\xd3\xac", "\xd3\xaf" => "\xd3\xae", "\xd3\xb1" => "\xd3\xb0", "\xd3\xb3" => "\xd3\xb2",
399
+		"\xd3\xb5" => "\xd3\xb4", "\xd3\xb7" => "\xd3\xb6", "\xd3\xb9" => "\xd3\xb8", "\xd3\xbb" => "\xd3\xba",
400
+		"\xd3\xbd" => "\xd3\xbc", "\xd3\xbf" => "\xd3\xbe", "\xd4\x81" => "\xd4\x80", "\xd4\x83" => "\xd4\x82",
401
+		"\xd4\x85" => "\xd4\x84", "\xd4\x87" => "\xd4\x86", "\xd4\x89" => "\xd4\x88", "\xd4\x8b" => "\xd4\x8a",
402
+		"\xd4\x8d" => "\xd4\x8c", "\xd4\x8f" => "\xd4\x8e", "\xd4\x91" => "\xd4\x90", "\xd4\x93" => "\xd4\x92",
403
+		"\xd5\xa1" => "\xd4\xb1", "\xd5\xa2" => "\xd4\xb2", "\xd5\xa3" => "\xd4\xb3", "\xd5\xa4" => "\xd4\xb4",
404
+		"\xd5\xa5" => "\xd4\xb5", "\xd5\xa6" => "\xd4\xb6", "\xd5\xa7" => "\xd4\xb7", "\xd5\xa8" => "\xd4\xb8",
405
+		"\xd5\xa9" => "\xd4\xb9", "\xd5\xaa" => "\xd4\xba", "\xd5\xab" => "\xd4\xbb", "\xd5\xac" => "\xd4\xbc",
406
+		"\xd5\xad" => "\xd4\xbd", "\xd5\xae" => "\xd4\xbe", "\xd5\xaf" => "\xd4\xbf", "\xd5\xb0" => "\xd5\x80",
407
+		"\xd5\xb1" => "\xd5\x81", "\xd5\xb2" => "\xd5\x82", "\xd5\xb3" => "\xd5\x83", "\xd5\xb4" => "\xd5\x84",
408
+		"\xd5\xb5" => "\xd5\x85", "\xd5\xb6" => "\xd5\x86", "\xd5\xb7" => "\xd5\x87", "\xd5\xb8" => "\xd5\x88",
409
+		"\xd5\xb9" => "\xd5\x89", "\xd5\xba" => "\xd5\x8a", "\xd5\xbb" => "\xd5\x8b", "\xd5\xbc" => "\xd5\x8c",
410
+		"\xd5\xbd" => "\xd5\x8d", "\xd5\xbe" => "\xd5\x8e", "\xd5\xbf" => "\xd5\x8f", "\xd6\x80" => "\xd5\x90",
411
+		"\xd6\x81" => "\xd5\x91", "\xd6\x82" => "\xd5\x92", "\xd6\x83" => "\xd5\x93", "\xd6\x84" => "\xd5\x94",
412
+		"\xd6\x85" => "\xd5\x95", "\xd6\x86" => "\xd5\x96", "\xd5\xa5\xd6\x82" => "\xd6\x87", "\xe2\xb4\x80" => "\xe1\x82\xa0",
413
+		"\xe2\xb4\x81" => "\xe1\x82\xa1", "\xe2\xb4\x82" => "\xe1\x82\xa2", "\xe2\xb4\x83" => "\xe1\x82\xa3", "\xe2\xb4\x84" => "\xe1\x82\xa4",
414
+		"\xe2\xb4\x85" => "\xe1\x82\xa5", "\xe2\xb4\x86" => "\xe1\x82\xa6", "\xe2\xb4\x87" => "\xe1\x82\xa7", "\xe2\xb4\x88" => "\xe1\x82\xa8",
415
+		"\xe2\xb4\x89" => "\xe1\x82\xa9", "\xe2\xb4\x8a" => "\xe1\x82\xaa", "\xe2\xb4\x8b" => "\xe1\x82\xab", "\xe2\xb4\x8c" => "\xe1\x82\xac",
416
+		"\xe2\xb4\x8d" => "\xe1\x82\xad", "\xe2\xb4\x8e" => "\xe1\x82\xae", "\xe2\xb4\x8f" => "\xe1\x82\xaf", "\xe2\xb4\x90" => "\xe1\x82\xb0",
417
+		"\xe2\xb4\x91" => "\xe1\x82\xb1", "\xe2\xb4\x92" => "\xe1\x82\xb2", "\xe2\xb4\x93" => "\xe1\x82\xb3", "\xe2\xb4\x94" => "\xe1\x82\xb4",
418
+		"\xe2\xb4\x95" => "\xe1\x82\xb5", "\xe2\xb4\x96" => "\xe1\x82\xb6", "\xe2\xb4\x97" => "\xe1\x82\xb7", "\xe2\xb4\x98" => "\xe1\x82\xb8",
419
+		"\xe2\xb4\x99" => "\xe1\x82\xb9", "\xe2\xb4\x9a" => "\xe1\x82\xba", "\xe2\xb4\x9b" => "\xe1\x82\xbb", "\xe2\xb4\x9c" => "\xe1\x82\xbc",
420
+		"\xe2\xb4\x9d" => "\xe1\x82\xbd", "\xe2\xb4\x9e" => "\xe1\x82\xbe", "\xe2\xb4\x9f" => "\xe1\x82\xbf", "\xe2\xb4\xa0" => "\xe1\x83\x80",
421
+		"\xe2\xb4\xa1" => "\xe1\x83\x81", "\xe2\xb4\xa2" => "\xe1\x83\x82", "\xe2\xb4\xa3" => "\xe1\x83\x83", "\xe2\xb4\xa4" => "\xe1\x83\x84",
422
+		"\xe2\xb4\xa5" => "\xe1\x83\x85", "\xe1\xb8\x81" => "\xe1\xb8\x80", "\xe1\xb8\x83" => "\xe1\xb8\x82", "\xe1\xb8\x85" => "\xe1\xb8\x84",
423
+		"\xe1\xb8\x87" => "\xe1\xb8\x86", "\xe1\xb8\x89" => "\xe1\xb8\x88", "\xe1\xb8\x8b" => "\xe1\xb8\x8a", "\xe1\xb8\x8d" => "\xe1\xb8\x8c",
424
+		"\xe1\xb8\x8f" => "\xe1\xb8\x8e", "\xe1\xb8\x91" => "\xe1\xb8\x90", "\xe1\xb8\x93" => "\xe1\xb8\x92", "\xe1\xb8\x95" => "\xe1\xb8\x94",
425
+		"\xe1\xb8\x97" => "\xe1\xb8\x96", "\xe1\xb8\x99" => "\xe1\xb8\x98", "\xe1\xb8\x9b" => "\xe1\xb8\x9a", "\xe1\xb8\x9d" => "\xe1\xb8\x9c",
426
+		"\xe1\xb8\x9f" => "\xe1\xb8\x9e", "\xe1\xb8\xa1" => "\xe1\xb8\xa0", "\xe1\xb8\xa3" => "\xe1\xb8\xa2", "\xe1\xb8\xa5" => "\xe1\xb8\xa4",
427
+		"\xe1\xb8\xa7" => "\xe1\xb8\xa6", "\xe1\xb8\xa9" => "\xe1\xb8\xa8", "\xe1\xb8\xab" => "\xe1\xb8\xaa", "\xe1\xb8\xad" => "\xe1\xb8\xac",
428
+		"\xe1\xb8\xaf" => "\xe1\xb8\xae", "\xe1\xb8\xb1" => "\xe1\xb8\xb0", "\xe1\xb8\xb3" => "\xe1\xb8\xb2", "\xe1\xb8\xb5" => "\xe1\xb8\xb4",
429
+		"\xe1\xb8\xb7" => "\xe1\xb8\xb6", "\xe1\xb8\xb9" => "\xe1\xb8\xb8", "\xe1\xb8\xbb" => "\xe1\xb8\xba", "\xe1\xb8\xbd" => "\xe1\xb8\xbc",
430
+		"\xe1\xb8\xbf" => "\xe1\xb8\xbe", "\xe1\xb9\x81" => "\xe1\xb9\x80", "\xe1\xb9\x83" => "\xe1\xb9\x82", "\xe1\xb9\x85" => "\xe1\xb9\x84",
431
+		"\xe1\xb9\x87" => "\xe1\xb9\x86", "\xe1\xb9\x89" => "\xe1\xb9\x88", "\xe1\xb9\x8b" => "\xe1\xb9\x8a", "\xe1\xb9\x8d" => "\xe1\xb9\x8c",
432
+		"\xe1\xb9\x8f" => "\xe1\xb9\x8e", "\xe1\xb9\x91" => "\xe1\xb9\x90", "\xe1\xb9\x93" => "\xe1\xb9\x92", "\xe1\xb9\x95" => "\xe1\xb9\x94",
433
+		"\xe1\xb9\x97" => "\xe1\xb9\x96", "\xe1\xb9\x99" => "\xe1\xb9\x98", "\xe1\xb9\x9b" => "\xe1\xb9\x9a", "\xe1\xb9\x9d" => "\xe1\xb9\x9c",
434
+		"\xe1\xb9\x9f" => "\xe1\xb9\x9e", "\xe1\xb9\xa1" => "\xe1\xb9\xa0", "\xe1\xb9\xa3" => "\xe1\xb9\xa2", "\xe1\xb9\xa5" => "\xe1\xb9\xa4",
435
+		"\xe1\xb9\xa7" => "\xe1\xb9\xa6", "\xe1\xb9\xa9" => "\xe1\xb9\xa8", "\xe1\xb9\xab" => "\xe1\xb9\xaa", "\xe1\xb9\xad" => "\xe1\xb9\xac",
436
+		"\xe1\xb9\xaf" => "\xe1\xb9\xae", "\xe1\xb9\xb1" => "\xe1\xb9\xb0", "\xe1\xb9\xb3" => "\xe1\xb9\xb2", "\xe1\xb9\xb5" => "\xe1\xb9\xb4",
437
+		"\xe1\xb9\xb7" => "\xe1\xb9\xb6", "\xe1\xb9\xb9" => "\xe1\xb9\xb8", "\xe1\xb9\xbb" => "\xe1\xb9\xba", "\xe1\xb9\xbd" => "\xe1\xb9\xbc",
438
+		"\xe1\xb9\xbf" => "\xe1\xb9\xbe", "\xe1\xba\x81" => "\xe1\xba\x80", "\xe1\xba\x83" => "\xe1\xba\x82", "\xe1\xba\x85" => "\xe1\xba\x84",
439
+		"\xe1\xba\x87" => "\xe1\xba\x86", "\xe1\xba\x89" => "\xe1\xba\x88", "\xe1\xba\x8b" => "\xe1\xba\x8a", "\xe1\xba\x8d" => "\xe1\xba\x8c",
440
+		"\xe1\xba\x8f" => "\xe1\xba\x8e", "\xe1\xba\x91" => "\xe1\xba\x90", "\xe1\xba\x93" => "\xe1\xba\x92", "\xe1\xba\x95" => "\xe1\xba\x94",
441
+		"h\xcc\xb1" => "\xe1\xba\x96", "t\xcc\x88" => "\xe1\xba\x97", "w\xcc\x8a" => "\xe1\xba\x98", "y\xcc\x8a" => "\xe1\xba\x99",
442
+		"a\xca\xbe" => "\xe1\xba\x9a", "\xe1\xb9\xa1" => "\xe1\xba\x9b", "\xe1\xba\xa1" => "\xe1\xba\xa0", "\xe1\xba\xa3" => "\xe1\xba\xa2",
443
+		"\xe1\xba\xa5" => "\xe1\xba\xa4", "\xe1\xba\xa7" => "\xe1\xba\xa6", "\xe1\xba\xa9" => "\xe1\xba\xa8", "\xe1\xba\xab" => "\xe1\xba\xaa",
444
+		"\xe1\xba\xad" => "\xe1\xba\xac", "\xe1\xba\xaf" => "\xe1\xba\xae", "\xe1\xba\xb1" => "\xe1\xba\xb0", "\xe1\xba\xb3" => "\xe1\xba\xb2",
445
+		"\xe1\xba\xb5" => "\xe1\xba\xb4", "\xe1\xba\xb7" => "\xe1\xba\xb6", "\xe1\xba\xb9" => "\xe1\xba\xb8", "\xe1\xba\xbb" => "\xe1\xba\xba",
446
+		"\xe1\xba\xbd" => "\xe1\xba\xbc", "\xe1\xba\xbf" => "\xe1\xba\xbe", "\xe1\xbb\x81" => "\xe1\xbb\x80", "\xe1\xbb\x83" => "\xe1\xbb\x82",
447
+		"\xe1\xbb\x85" => "\xe1\xbb\x84", "\xe1\xbb\x87" => "\xe1\xbb\x86", "\xe1\xbb\x89" => "\xe1\xbb\x88", "\xe1\xbb\x8b" => "\xe1\xbb\x8a",
448
+		"\xe1\xbb\x8d" => "\xe1\xbb\x8c", "\xe1\xbb\x8f" => "\xe1\xbb\x8e", "\xe1\xbb\x91" => "\xe1\xbb\x90", "\xe1\xbb\x93" => "\xe1\xbb\x92",
449
+		"\xe1\xbb\x95" => "\xe1\xbb\x94", "\xe1\xbb\x97" => "\xe1\xbb\x96", "\xe1\xbb\x99" => "\xe1\xbb\x98", "\xe1\xbb\x9b" => "\xe1\xbb\x9a",
450
+		"\xe1\xbb\x9d" => "\xe1\xbb\x9c", "\xe1\xbb\x9f" => "\xe1\xbb\x9e", "\xe1\xbb\xa1" => "\xe1\xbb\xa0", "\xe1\xbb\xa3" => "\xe1\xbb\xa2",
451
+		"\xe1\xbb\xa5" => "\xe1\xbb\xa4", "\xe1\xbb\xa7" => "\xe1\xbb\xa6", "\xe1\xbb\xa9" => "\xe1\xbb\xa8", "\xe1\xbb\xab" => "\xe1\xbb\xaa",
452
+		"\xe1\xbb\xad" => "\xe1\xbb\xac", "\xe1\xbb\xaf" => "\xe1\xbb\xae", "\xe1\xbb\xb1" => "\xe1\xbb\xb0", "\xe1\xbb\xb3" => "\xe1\xbb\xb2",
453
+		"\xe1\xbb\xb5" => "\xe1\xbb\xb4", "\xe1\xbb\xb7" => "\xe1\xbb\xb6", "\xe1\xbb\xb9" => "\xe1\xbb\xb8", "\xe1\xbc\x80" => "\xe1\xbc\x88",
454
+		"\xe1\xbc\x81" => "\xe1\xbc\x89", "\xe1\xbc\x82" => "\xe1\xbc\x8a", "\xe1\xbc\x83" => "\xe1\xbc\x8b", "\xe1\xbc\x84" => "\xe1\xbc\x8c",
455
+		"\xe1\xbc\x85" => "\xe1\xbc\x8d", "\xe1\xbc\x86" => "\xe1\xbc\x8e", "\xe1\xbc\x87" => "\xe1\xbc\x8f", "\xe1\xbc\x90" => "\xe1\xbc\x98",
456
+		"\xe1\xbc\x91" => "\xe1\xbc\x99", "\xe1\xbc\x92" => "\xe1\xbc\x9a", "\xe1\xbc\x93" => "\xe1\xbc\x9b", "\xe1\xbc\x94" => "\xe1\xbc\x9c",
457
+		"\xe1\xbc\x95" => "\xe1\xbc\x9d", "\xe1\xbc\xa0" => "\xe1\xbc\xa8", "\xe1\xbc\xa1" => "\xe1\xbc\xa9", "\xe1\xbc\xa2" => "\xe1\xbc\xaa",
458
+		"\xe1\xbc\xa3" => "\xe1\xbc\xab", "\xe1\xbc\xa4" => "\xe1\xbc\xac", "\xe1\xbc\xa5" => "\xe1\xbc\xad", "\xe1\xbc\xa6" => "\xe1\xbc\xae",
459
+		"\xe1\xbc\xa7" => "\xe1\xbc\xaf", "\xe1\xbc\xb0" => "\xe1\xbc\xb8", "\xe1\xbc\xb1" => "\xe1\xbc\xb9", "\xe1\xbc\xb2" => "\xe1\xbc\xba",
460
+		"\xe1\xbc\xb3" => "\xe1\xbc\xbb", "\xe1\xbc\xb4" => "\xe1\xbc\xbc", "\xe1\xbc\xb5" => "\xe1\xbc\xbd", "\xe1\xbc\xb6" => "\xe1\xbc\xbe",
461
+		"\xe1\xbc\xb7" => "\xe1\xbc\xbf", "\xe1\xbd\x80" => "\xe1\xbd\x88", "\xe1\xbd\x81" => "\xe1\xbd\x89", "\xe1\xbd\x82" => "\xe1\xbd\x8a",
462
+		"\xe1\xbd\x83" => "\xe1\xbd\x8b", "\xe1\xbd\x84" => "\xe1\xbd\x8c", "\xe1\xbd\x85" => "\xe1\xbd\x8d", "\xcf\x85\xcc\x93" => "\xe1\xbd\x90",
463
+		"\xcf\x85\xcc\x93\xcc\x80" => "\xe1\xbd\x92", "\xcf\x85\xcc\x93\xcc\x81" => "\xe1\xbd\x94", "\xcf\x85\xcc\x93\xcd\x82" => "\xe1\xbd\x96", "\xe1\xbd\x91" => "\xe1\xbd\x99",
464
+		"\xe1\xbd\x93" => "\xe1\xbd\x9b", "\xe1\xbd\x95" => "\xe1\xbd\x9d", "\xe1\xbd\x97" => "\xe1\xbd\x9f", "\xe1\xbd\xa0" => "\xe1\xbd\xa8",
465
+		"\xe1\xbd\xa1" => "\xe1\xbd\xa9", "\xe1\xbd\xa2" => "\xe1\xbd\xaa", "\xe1\xbd\xa3" => "\xe1\xbd\xab", "\xe1\xbd\xa4" => "\xe1\xbd\xac",
466
+		"\xe1\xbd\xa5" => "\xe1\xbd\xad", "\xe1\xbd\xa6" => "\xe1\xbd\xae", "\xe1\xbd\xa7" => "\xe1\xbd\xaf", "\xe1\xbc\x80\xce\xb9" => "\xe1\xbe\x80",
467
+		"\xe1\xbc\x81\xce\xb9" => "\xe1\xbe\x81", "\xe1\xbc\x82\xce\xb9" => "\xe1\xbe\x82", "\xe1\xbc\x83\xce\xb9" => "\xe1\xbe\x83", "\xe1\xbc\x84\xce\xb9" => "\xe1\xbe\x84",
468
+		"\xe1\xbc\x85\xce\xb9" => "\xe1\xbe\x85", "\xe1\xbc\x86\xce\xb9" => "\xe1\xbe\x86", "\xe1\xbc\x87\xce\xb9" => "\xe1\xbe\x87", "\xe1\xbe\x80" => "\xe1\xbe\x88",
469
+		"\xe1\xbe\x81" => "\xe1\xbe\x89", "\xe1\xbe\x82" => "\xe1\xbe\x8a", "\xe1\xbe\x83" => "\xe1\xbe\x8b", "\xe1\xbe\x84" => "\xe1\xbe\x8c",
470
+		"\xe1\xbe\x85" => "\xe1\xbe\x8d", "\xe1\xbe\x86" => "\xe1\xbe\x8e", "\xe1\xbe\x87" => "\xe1\xbe\x8f", "\xe1\xbc\xa0\xce\xb9" => "\xe1\xbe\x90",
471
+		"\xe1\xbc\xa1\xce\xb9" => "\xe1\xbe\x91", "\xe1\xbc\xa2\xce\xb9" => "\xe1\xbe\x92", "\xe1\xbc\xa3\xce\xb9" => "\xe1\xbe\x93", "\xe1\xbc\xa4\xce\xb9" => "\xe1\xbe\x94",
472
+		"\xe1\xbc\xa5\xce\xb9" => "\xe1\xbe\x95", "\xe1\xbc\xa6\xce\xb9" => "\xe1\xbe\x96", "\xe1\xbc\xa7\xce\xb9" => "\xe1\xbe\x97", "\xe1\xbe\x90" => "\xe1\xbe\x98",
473
+		"\xe1\xbe\x91" => "\xe1\xbe\x99", "\xe1\xbe\x92" => "\xe1\xbe\x9a", "\xe1\xbe\x93" => "\xe1\xbe\x9b", "\xe1\xbe\x94" => "\xe1\xbe\x9c",
474
+		"\xe1\xbe\x95" => "\xe1\xbe\x9d", "\xe1\xbe\x96" => "\xe1\xbe\x9e", "\xe1\xbe\x97" => "\xe1\xbe\x9f", "\xe1\xbd\xa0\xce\xb9" => "\xe1\xbe\xa0",
475
+		"\xe1\xbd\xa1\xce\xb9" => "\xe1\xbe\xa1", "\xe1\xbd\xa2\xce\xb9" => "\xe1\xbe\xa2", "\xe1\xbd\xa3\xce\xb9" => "\xe1\xbe\xa3", "\xe1\xbd\xa4\xce\xb9" => "\xe1\xbe\xa4",
476
+		"\xe1\xbd\xa5\xce\xb9" => "\xe1\xbe\xa5", "\xe1\xbd\xa6\xce\xb9" => "\xe1\xbe\xa6", "\xe1\xbd\xa7\xce\xb9" => "\xe1\xbe\xa7", "\xe1\xbe\xa0" => "\xe1\xbe\xa8",
477
+		"\xe1\xbe\xa1" => "\xe1\xbe\xa9", "\xe1\xbe\xa2" => "\xe1\xbe\xaa", "\xe1\xbe\xa3" => "\xe1\xbe\xab", "\xe1\xbe\xa4" => "\xe1\xbe\xac",
478
+		"\xe1\xbe\xa5" => "\xe1\xbe\xad", "\xe1\xbe\xa6" => "\xe1\xbe\xae", "\xe1\xbe\xa7" => "\xe1\xbe\xaf", "\xe1\xbd\xb0\xce\xb9" => "\xe1\xbe\xb2",
479
+		"\xce\xb1\xce\xb9" => "\xe1\xbe\xb3", "\xce\xac\xce\xb9" => "\xe1\xbe\xb4", "\xce\xb1\xcd\x82" => "\xe1\xbe\xb6", "\xce\xb1\xcd\x82\xce\xb9" => "\xe1\xbe\xb7",
480
+		"\xe1\xbe\xb0" => "\xe1\xbe\xb8", "\xe1\xbe\xb1" => "\xe1\xbe\xb9", "\xe1\xbd\xb0" => "\xe1\xbe\xba", "\xe1\xbd\xb1" => "\xe1\xbe\xbb",
481
+		"\xe1\xbe\xb3" => "\xe1\xbe\xbc", "\xce\xb9" => "\xe1\xbe\xbe", "\xe1\xbd\xb4\xce\xb9" => "\xe1\xbf\x82", "\xce\xb7\xce\xb9" => "\xe1\xbf\x83",
482
+		"\xce\xae\xce\xb9" => "\xe1\xbf\x84", "\xce\xb7\xcd\x82" => "\xe1\xbf\x86", "\xce\xb7\xcd\x82\xce\xb9" => "\xe1\xbf\x87", "\xe1\xbd\xb2" => "\xe1\xbf\x88",
483
+		"\xe1\xbd\xb3" => "\xe1\xbf\x89", "\xe1\xbd\xb4" => "\xe1\xbf\x8a", "\xe1\xbd\xb5" => "\xe1\xbf\x8b", "\xe1\xbf\x83" => "\xe1\xbf\x8c",
484
+		"\xce\xb9\xcc\x88\xcc\x80" => "\xe1\xbf\x92", "\xce\xb9\xcc\x88\xcc\x81" => "\xe1\xbf\x93", "\xce\xb9\xcd\x82" => "\xe1\xbf\x96", "\xce\xb9\xcc\x88\xcd\x82" => "\xe1\xbf\x97",
485
+		"\xe1\xbf\x90" => "\xe1\xbf\x98", "\xe1\xbf\x91" => "\xe1\xbf\x99", "\xe1\xbd\xb6" => "\xe1\xbf\x9a", "\xe1\xbd\xb7" => "\xe1\xbf\x9b",
486
+		"\xcf\x85\xcc\x88\xcc\x80" => "\xe1\xbf\xa2", "\xcf\x85\xcc\x88\xcc\x81" => "\xe1\xbf\xa3", "\xcf\x81\xcc\x93" => "\xe1\xbf\xa4", "\xcf\x85\xcd\x82" => "\xe1\xbf\xa6",
487
+		"\xcf\x85\xcc\x88\xcd\x82" => "\xe1\xbf\xa7", "\xe1\xbf\xa0" => "\xe1\xbf\xa8", "\xe1\xbf\xa1" => "\xe1\xbf\xa9", "\xe1\xbd\xba" => "\xe1\xbf\xaa",
488
+		"\xe1\xbd\xbb" => "\xe1\xbf\xab", "\xe1\xbf\xa5" => "\xe1\xbf\xac", "\xe1\xbd\xbc\xce\xb9" => "\xe1\xbf\xb2", "\xcf\x89\xce\xb9" => "\xe1\xbf\xb3",
489
+		"\xcf\x8e\xce\xb9" => "\xe1\xbf\xb4", "\xcf\x89\xcd\x82" => "\xe1\xbf\xb6", "\xcf\x89\xcd\x82\xce\xb9" => "\xe1\xbf\xb7", "\xe1\xbd\xb8" => "\xe1\xbf\xb8",
490
+		"\xe1\xbd\xb9" => "\xe1\xbf\xb9", "\xe1\xbd\xbc" => "\xe1\xbf\xba", "\xe1\xbd\xbd" => "\xe1\xbf\xbb", "\xe1\xbf\xb3" => "\xe1\xbf\xbc",
491
+		"\xcf\x89" => "\xe2\x84\xa6", "k" => "\xe2\x84\xaa", "\xc3\xa5" => "\xe2\x84\xab", "\xe2\x85\x8e" => "\xe2\x84\xb2",
492
+		"\xe2\x85\xb0" => "\xe2\x85\xa0", "\xe2\x85\xb1" => "\xe2\x85\xa1", "\xe2\x85\xb2" => "\xe2\x85\xa2", "\xe2\x85\xb3" => "\xe2\x85\xa3",
493
+		"\xe2\x85\xb4" => "\xe2\x85\xa4", "\xe2\x85\xb5" => "\xe2\x85\xa5", "\xe2\x85\xb6" => "\xe2\x85\xa6", "\xe2\x85\xb7" => "\xe2\x85\xa7",
494
+		"\xe2\x85\xb8" => "\xe2\x85\xa8", "\xe2\x85\xb9" => "\xe2\x85\xa9", "\xe2\x85\xba" => "\xe2\x85\xaa", "\xe2\x85\xbb" => "\xe2\x85\xab",
495
+		"\xe2\x85\xbc" => "\xe2\x85\xac", "\xe2\x85\xbd" => "\xe2\x85\xad", "\xe2\x85\xbe" => "\xe2\x85\xae", "\xe2\x85\xbf" => "\xe2\x85\xaf",
496
+		"\xe2\x86\x84" => "\xe2\x86\x83", "\xe2\x93\x90" => "\xe2\x92\xb6", "\xe2\x93\x91" => "\xe2\x92\xb7", "\xe2\x93\x92" => "\xe2\x92\xb8",
497
+		"\xe2\x93\x93" => "\xe2\x92\xb9", "\xe2\x93\x94" => "\xe2\x92\xba", "\xe2\x93\x95" => "\xe2\x92\xbb", "\xe2\x93\x96" => "\xe2\x92\xbc",
498
+		"\xe2\x93\x97" => "\xe2\x92\xbd", "\xe2\x93\x98" => "\xe2\x92\xbe", "\xe2\x93\x99" => "\xe2\x92\xbf", "\xe2\x93\x9a" => "\xe2\x93\x80",
499
+		"\xe2\x93\x9b" => "\xe2\x93\x81", "\xe2\x93\x9c" => "\xe2\x93\x82", "\xe2\x93\x9d" => "\xe2\x93\x83", "\xe2\x93\x9e" => "\xe2\x93\x84",
500
+		"\xe2\x93\x9f" => "\xe2\x93\x85", "\xe2\x93\xa0" => "\xe2\x93\x86", "\xe2\x93\xa1" => "\xe2\x93\x87", "\xe2\x93\xa2" => "\xe2\x93\x88",
501
+		"\xe2\x93\xa3" => "\xe2\x93\x89", "\xe2\x93\xa4" => "\xe2\x93\x8a", "\xe2\x93\xa5" => "\xe2\x93\x8b", "\xe2\x93\xa6" => "\xe2\x93\x8c",
502
+		"\xe2\x93\xa7" => "\xe2\x93\x8d", "\xe2\x93\xa8" => "\xe2\x93\x8e", "\xe2\x93\xa9" => "\xe2\x93\x8f", "\xe2\xb0\xb0" => "\xe2\xb0\x80",
503
+		"\xe2\xb0\xb1" => "\xe2\xb0\x81", "\xe2\xb0\xb2" => "\xe2\xb0\x82", "\xe2\xb0\xb3" => "\xe2\xb0\x83", "\xe2\xb0\xb4" => "\xe2\xb0\x84",
504
+		"\xe2\xb0\xb5" => "\xe2\xb0\x85", "\xe2\xb0\xb6" => "\xe2\xb0\x86", "\xe2\xb0\xb7" => "\xe2\xb0\x87", "\xe2\xb0\xb8" => "\xe2\xb0\x88",
505
+		"\xe2\xb0\xb9" => "\xe2\xb0\x89", "\xe2\xb0\xba" => "\xe2\xb0\x8a", "\xe2\xb0\xbb" => "\xe2\xb0\x8b", "\xe2\xb0\xbc" => "\xe2\xb0\x8c",
506
+		"\xe2\xb0\xbd" => "\xe2\xb0\x8d", "\xe2\xb0\xbe" => "\xe2\xb0\x8e", "\xe2\xb0\xbf" => "\xe2\xb0\x8f", "\xe2\xb1\x80" => "\xe2\xb0\x90",
507
+		"\xe2\xb1\x81" => "\xe2\xb0\x91", "\xe2\xb1\x82" => "\xe2\xb0\x92", "\xe2\xb1\x83" => "\xe2\xb0\x93", "\xe2\xb1\x84" => "\xe2\xb0\x94",
508
+		"\xe2\xb1\x85" => "\xe2\xb0\x95", "\xe2\xb1\x86" => "\xe2\xb0\x96", "\xe2\xb1\x87" => "\xe2\xb0\x97", "\xe2\xb1\x88" => "\xe2\xb0\x98",
509
+		"\xe2\xb1\x89" => "\xe2\xb0\x99", "\xe2\xb1\x8a" => "\xe2\xb0\x9a", "\xe2\xb1\x8b" => "\xe2\xb0\x9b", "\xe2\xb1\x8c" => "\xe2\xb0\x9c",
510
+		"\xe2\xb1\x8d" => "\xe2\xb0\x9d", "\xe2\xb1\x8e" => "\xe2\xb0\x9e", "\xe2\xb1\x8f" => "\xe2\xb0\x9f", "\xe2\xb1\x90" => "\xe2\xb0\xa0",
511
+		"\xe2\xb1\x91" => "\xe2\xb0\xa1", "\xe2\xb1\x92" => "\xe2\xb0\xa2", "\xe2\xb1\x93" => "\xe2\xb0\xa3", "\xe2\xb1\x94" => "\xe2\xb0\xa4",
512
+		"\xe2\xb1\x95" => "\xe2\xb0\xa5", "\xe2\xb1\x96" => "\xe2\xb0\xa6", "\xe2\xb1\x97" => "\xe2\xb0\xa7", "\xe2\xb1\x98" => "\xe2\xb0\xa8",
513
+		"\xe2\xb1\x99" => "\xe2\xb0\xa9", "\xe2\xb1\x9a" => "\xe2\xb0\xaa", "\xe2\xb1\x9b" => "\xe2\xb0\xab", "\xe2\xb1\x9c" => "\xe2\xb0\xac",
514
+		"\xe2\xb1\x9d" => "\xe2\xb0\xad", "\xe2\xb1\x9e" => "\xe2\xb0\xae", "\xe2\xb1\xa1" => "\xe2\xb1\xa0", "\xc9\xab" => "\xe2\xb1\xa2",
515
+		"\xe1\xb5\xbd" => "\xe2\xb1\xa3", "\xc9\xbd" => "\xe2\xb1\xa4", "\xe2\xb1\xa8" => "\xe2\xb1\xa7", "\xe2\xb1\xaa" => "\xe2\xb1\xa9",
516
+		"\xe2\xb1\xac" => "\xe2\xb1\xab", "\xe2\xb1\xb6" => "\xe2\xb1\xb5", "\xe2\xb2\x81" => "\xe2\xb2\x80", "\xe2\xb2\x83" => "\xe2\xb2\x82",
517
+		"\xe2\xb2\x85" => "\xe2\xb2\x84", "\xe2\xb2\x87" => "\xe2\xb2\x86", "\xe2\xb2\x89" => "\xe2\xb2\x88", "\xe2\xb2\x8b" => "\xe2\xb2\x8a",
518
+		"\xe2\xb2\x8d" => "\xe2\xb2\x8c", "\xe2\xb2\x8f" => "\xe2\xb2\x8e", "\xe2\xb2\x91" => "\xe2\xb2\x90", "\xe2\xb2\x93" => "\xe2\xb2\x92",
519
+		"\xe2\xb2\x95" => "\xe2\xb2\x94", "\xe2\xb2\x97" => "\xe2\xb2\x96", "\xe2\xb2\x99" => "\xe2\xb2\x98", "\xe2\xb2\x9b" => "\xe2\xb2\x9a",
520
+		"\xe2\xb2\x9d" => "\xe2\xb2\x9c", "\xe2\xb2\x9f" => "\xe2\xb2\x9e", "\xe2\xb2\xa1" => "\xe2\xb2\xa0", "\xe2\xb2\xa3" => "\xe2\xb2\xa2",
521
+		"\xe2\xb2\xa5" => "\xe2\xb2\xa4", "\xe2\xb2\xa7" => "\xe2\xb2\xa6", "\xe2\xb2\xa9" => "\xe2\xb2\xa8", "\xe2\xb2\xab" => "\xe2\xb2\xaa",
522
+		"\xe2\xb2\xad" => "\xe2\xb2\xac", "\xe2\xb2\xaf" => "\xe2\xb2\xae", "\xe2\xb2\xb1" => "\xe2\xb2\xb0", "\xe2\xb2\xb3" => "\xe2\xb2\xb2",
523
+		"\xe2\xb2\xb5" => "\xe2\xb2\xb4", "\xe2\xb2\xb7" => "\xe2\xb2\xb6", "\xe2\xb2\xb9" => "\xe2\xb2\xb8", "\xe2\xb2\xbb" => "\xe2\xb2\xba",
524
+		"\xe2\xb2\xbd" => "\xe2\xb2\xbc", "\xe2\xb2\xbf" => "\xe2\xb2\xbe", "\xe2\xb3\x81" => "\xe2\xb3\x80", "\xe2\xb3\x83" => "\xe2\xb3\x82",
525
+		"\xe2\xb3\x85" => "\xe2\xb3\x84", "\xe2\xb3\x87" => "\xe2\xb3\x86", "\xe2\xb3\x89" => "\xe2\xb3\x88", "\xe2\xb3\x8b" => "\xe2\xb3\x8a",
526
+		"\xe2\xb3\x8d" => "\xe2\xb3\x8c", "\xe2\xb3\x8f" => "\xe2\xb3\x8e", "\xe2\xb3\x91" => "\xe2\xb3\x90", "\xe2\xb3\x93" => "\xe2\xb3\x92",
527
+		"\xe2\xb3\x95" => "\xe2\xb3\x94", "\xe2\xb3\x97" => "\xe2\xb3\x96", "\xe2\xb3\x99" => "\xe2\xb3\x98", "\xe2\xb3\x9b" => "\xe2\xb3\x9a",
528
+		"\xe2\xb3\x9d" => "\xe2\xb3\x9c", "\xe2\xb3\x9f" => "\xe2\xb3\x9e", "\xe2\xb3\xa1" => "\xe2\xb3\xa0", "\xe2\xb3\xa3" => "\xe2\xb3\xa2",
529
+		"ff" => "\xef\xac\x80", "fi" => "\xef\xac\x81", "fl" => "\xef\xac\x82", "ffi" => "\xef\xac\x83",
530
+		"ffl" => "\xef\xac\x84", "st" => "\xef\xac\x85", "st" => "\xef\xac\x86", "\xd5\xb4\xd5\xb6" => "\xef\xac\x93",
531
+		"\xd5\xb4\xd5\xa5" => "\xef\xac\x94", "\xd5\xb4\xd5\xab" => "\xef\xac\x95", "\xd5\xbe\xd5\xb6" => "\xef\xac\x96", "\xd5\xb4\xd5\xad" => "\xef\xac\x97",
532
+		"\xef\xbd\x81" => "\xef\xbc\xa1", "\xef\xbd\x82" => "\xef\xbc\xa2", "\xef\xbd\x83" => "\xef\xbc\xa3", "\xef\xbd\x84" => "\xef\xbc\xa4",
533
+		"\xef\xbd\x85" => "\xef\xbc\xa5", "\xef\xbd\x86" => "\xef\xbc\xa6", "\xef\xbd\x87" => "\xef\xbc\xa7", "\xef\xbd\x88" => "\xef\xbc\xa8",
534
+		"\xef\xbd\x89" => "\xef\xbc\xa9", "\xef\xbd\x8a" => "\xef\xbc\xaa", "\xef\xbd\x8b" => "\xef\xbc\xab", "\xef\xbd\x8c" => "\xef\xbc\xac",
535
+		"\xef\xbd\x8d" => "\xef\xbc\xad", "\xef\xbd\x8e" => "\xef\xbc\xae", "\xef\xbd\x8f" => "\xef\xbc\xaf", "\xef\xbd\x90" => "\xef\xbc\xb0",
536
+		"\xef\xbd\x91" => "\xef\xbc\xb1", "\xef\xbd\x92" => "\xef\xbc\xb2", "\xef\xbd\x93" => "\xef\xbc\xb3", "\xef\xbd\x94" => "\xef\xbc\xb4",
537
+		"\xef\xbd\x95" => "\xef\xbc\xb5", "\xef\xbd\x96" => "\xef\xbc\xb6", "\xef\xbd\x97" => "\xef\xbc\xb7", "\xef\xbd\x98" => "\xef\xbc\xb8",
538
+		"\xef\xbd\x99" => "\xef\xbc\xb9", "\xef\xbd\x9a" => "\xef\xbc\xba", "\xf0\x90\x90\xa8" => "\xf0\x90\x90\x80", "\xf0\x90\x90\xa9" => "\xf0\x90\x90\x81",
539
+		"\xf0\x90\x90\xaa" => "\xf0\x90\x90\x82", "\xf0\x90\x90\xab" => "\xf0\x90\x90\x83", "\xf0\x90\x90\xac" => "\xf0\x90\x90\x84", "\xf0\x90\x90\xad" => "\xf0\x90\x90\x85",
540
+		"\xf0\x90\x90\xae" => "\xf0\x90\x90\x86", "\xf0\x90\x90\xaf" => "\xf0\x90\x90\x87", "\xf0\x90\x90\xb0" => "\xf0\x90\x90\x88", "\xf0\x90\x90\xb1" => "\xf0\x90\x90\x89",
541
+		"\xf0\x90\x90\xb2" => "\xf0\x90\x90\x8a", "\xf0\x90\x90\xb3" => "\xf0\x90\x90\x8b", "\xf0\x90\x90\xb4" => "\xf0\x90\x90\x8c", "\xf0\x90\x90\xb5" => "\xf0\x90\x90\x8d",
542
+		"\xf0\x90\x90\xb6" => "\xf0\x90\x90\x8e", "\xf0\x90\x90\xb7" => "\xf0\x90\x90\x8f", "\xf0\x90\x90\xb8" => "\xf0\x90\x90\x90", "\xf0\x90\x90\xb9" => "\xf0\x90\x90\x91",
543
+		"\xf0\x90\x90\xba" => "\xf0\x90\x90\x92", "\xf0\x90\x90\xbb" => "\xf0\x90\x90\x93", "\xf0\x90\x90\xbc" => "\xf0\x90\x90\x94", "\xf0\x90\x90\xbd" => "\xf0\x90\x90\x95",
544
+		"\xf0\x90\x90\xbe" => "\xf0\x90\x90\x96", "\xf0\x90\x90\xbf" => "\xf0\x90\x90\x97", "\xf0\x90\x91\x80" => "\xf0\x90\x90\x98", "\xf0\x90\x91\x81" => "\xf0\x90\x90\x99",
545
+		"\xf0\x90\x91\x82" => "\xf0\x90\x90\x9a", "\xf0\x90\x91\x83" => "\xf0\x90\x90\x9b", "\xf0\x90\x91\x84" => "\xf0\x90\x90\x9c", "\xf0\x90\x91\x85" => "\xf0\x90\x90\x9d",
546
+		"\xf0\x90\x91\x86" => "\xf0\x90\x90\x9e", "\xf0\x90\x91\x87" => "\xf0\x90\x90\x9f", "\xf0\x90\x91\x88" => "\xf0\x90\x90\xa0", "\xf0\x90\x91\x89" => "\xf0\x90\x90\xa1",
547
+		"\xf0\x90\x91\x8a" => "\xf0\x90\x90\xa2", "\xf0\x90\x91\x8b" => "\xf0\x90\x90\xa3", "\xf0\x90\x91\x8c" => "\xf0\x90\x90\xa4", "\xf0\x90\x91\x8d" => "\xf0\x90\x90\xa5",
548
+		"\xf0\x90\x90\xa6" => "\xf0\x90\x91\x8e", "\xf0\x90\x90\xa7" => "\xf0\x90\x91\x8f",
549 549
 	);
550 550
 
551 551
 	return strtr($string, $case_folding);
Please login to merge, or discard this patch.
Braces   +5 added lines, -3 removed lines patch added patch discarded remove patch
@@ -11,8 +11,9 @@  discard block
 block discarded – undo
11 11
  * @version 2.1 Beta 3
12 12
  */
13 13
 
14
-if (!defined('SMF'))
14
+if (!defined('SMF')) {
15 15
 	die('No direct access...');
16
+}
16 17
 
17 18
 /**
18 19
  * Converts the given UTF-8 string into lowercase.
@@ -569,8 +570,8 @@  discard block
 block discarded – undo
569 570
 	);
570 571
 	while ($row = $smcFunc['db_fetch_assoc']($request))
571 572
 	{
572
-		if (safe_unserialize($row['extra']) === false && preg_match('~^(a:3:{s:5:"topic";i:\d+;s:7:"subject";s:)(\d+):"(.+)"(;s:6:"member";s:5:"\d+";})$~', $row['extra'], $matches) === 1)
573
-			$smcFunc['db_query']('', '
573
+		if (safe_unserialize($row['extra']) === false && preg_match('~^(a:3:{s:5:"topic";i:\d+;s:7:"subject";s:)(\d+):"(.+)"(;s:6:"member";s:5:"\d+";})$~', $row['extra'], $matches) === 1) {
574
+					$smcFunc['db_query']('', '
574 575
 				UPDATE {db_prefix}log_actions
575 576
 				SET extra = {string:extra}
576 577
 				WHERE id_action = {int:current_action}',
@@ -579,6 +580,7 @@  discard block
 block discarded – undo
579 580
 					'extra' => $matches[1] . strlen($matches[3]) . ':"' . $matches[3] . '"' . $matches[4],
580 581
 				)
581 582
 			);
583
+		}
582 584
 	}
583 585
 	$smcFunc['db_free_result']($request);
584 586
 
Please login to merge, or discard this patch.