Completed
Push — work-fleets ( 9e987d...ec9dc8 )
by SuperNova.WS
06:04
created
stat.php 1 patch
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -11,8 +11,8 @@  discard block
 block discarded – undo
11 11
   global $who;
12 12
 
13 13
   // $sn_group_stat_common = sn_get_groups('STAT_COMMON');
14
-  foreach($array as $key => $value) {
15
-    if($array_name == 'type' && $who == 2 && !in_array($key, $sn_group_stat_common)) {
14
+  foreach ($array as $key => $value) {
15
+    if ($array_name == 'type' && $who == 2 && !in_array($key, $sn_group_stat_common)) {
16 16
       continue;
17 17
     }
18 18
 
@@ -28,7 +28,7 @@  discard block
 block discarded – undo
28 28
 
29 29
 $allow_anonymous = true;
30 30
 
31
-include('common.' . substr(strrchr(__FILE__, '.'), 1));
31
+include('common.'.substr(strrchr(__FILE__, '.'), 1));
32 32
 
33 33
 lng_include('stat');
34 34
 
@@ -44,7 +44,7 @@  discard block
 block discarded – undo
44 44
 $subject_list = array(
45 45
   1 => array('header' => classLocale::$lang['stat_player']),
46 46
 );
47
-if(!$source) {
47
+if (!$source) {
48 48
   $subject_list[2] = array('header' => classLocale::$lang['stat_allys']);
49 49
 }
50 50
 stat_tpl_assign($template, $who, 'subject', $subject_list, $sn_group_stat_common);
@@ -113,7 +113,7 @@  discard block
 block discarded – undo
113 113
 
114 114
 $page_count = floor($record_count / 100);
115 115
 $pages = array();
116
-for($i = 0; $i <= $page_count; $i++) {
116
+for ($i = 0; $i <= $page_count; $i++) {
117 117
   $first_element = $i * 100 + 1;
118 118
   $last_element = $first_element + 99;
119 119
   $pages[$first_element] = array(
@@ -133,7 +133,7 @@  discard block
 block discarded – undo
133 133
   );
134 134
 //pdump($row);
135 135
 
136
-  if($who == 1) {
136
+  if ($who == 1) {
137 137
     $row_stat['ALLY_NAME'] = $row['ally_name'];
138 138
     $row_stat['ALLY_ID'] = $row['ally_id'];
139 139
     empty($row['username']) ? $row['username'] = $row['name'] : false;
Please login to merge, or discard this patch.
reg.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -1,7 +1,7 @@
 block discarded – undo
1 1
 <?php
2 2
 
3 3
 $id_ref = $_GET['id_ref'] ? intval($_GET['id_ref']) : 0;
4
-$id_ref = $id_ref ? '?id_ref=' . $id_ref : '';
4
+$id_ref = $id_ref ? '?id_ref='.$id_ref : '';
5 5
 
6 6
 header('HTTP/1.1 301 Moved Permanently');
7 7
 header("Location: login.php{$id_ref}#tab_password_reset");
Please login to merge, or discard this patch.
artifacts.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -15,7 +15,7 @@  discard block
 block discarded – undo
15 15
 
16 16
 global $user, $planetrow;
17 17
 
18
-include('common.' . substr(strrchr(__FILE__, '.'), 1));
18
+include('common.'.substr(strrchr(__FILE__, '.'), 1));
19 19
 
20 20
 lng_include('infos');
21 21
 lng_include('artifacts');
@@ -65,7 +65,7 @@  discard block
 block discarded – undo
65 65
       die();
66 66
     break;
67 67
   }
68
-  message($Message, classLocale::$lang['tech'][UNIT_ARTIFACTS], 'artifacts.' . PHP_EX, 5);
68
+  message($Message, classLocale::$lang['tech'][UNIT_ARTIFACTS], 'artifacts.'.PHP_EX, 5);
69 69
 }
70 70
 
71 71
 $template = gettemplate('artifacts', true);
Please login to merge, or discard this patch.
includes/general.php 1 patch
Spacing   +25 added lines, -25 removed lines patch added patch discarded remove patch
@@ -36,7 +36,7 @@  discard block
 block discarded – undo
36 36
     }
37 37
   } else {
38 38
     // TODO: This is left for backward compatibility. Appropriate code should be rewrote!
39
-    $func_name = isset(classSupernova::$functions[$func_name]) && is_callable(classSupernova::$functions[$func_name]) ? classSupernova::$functions[$func_name] : ('sn_' . $func_name);
39
+    $func_name = isset(classSupernova::$functions[$func_name]) && is_callable(classSupernova::$functions[$func_name]) ? classSupernova::$functions[$func_name] : ('sn_'.$func_name);
40 40
     if (is_callable($func_name)) {
41 41
       $result = call_user_func_array($func_name, $func_arg);
42 42
     }
@@ -111,7 +111,7 @@  discard block
 block discarded – undo
111 111
  */
112 112
 function get_exchange_rate($currency_symbol) {
113 113
   $currency_symbol = strtolower($currency_symbol);
114
-  $config_field = 'payment_currency_exchange_' . $currency_symbol;
114
+  $config_field = 'payment_currency_exchange_'.$currency_symbol;
115 115
 
116 116
   // Заворачиваем получение стоимости ММ через перекрываемую процедуру
117 117
   $exchange_rate = floatval($currency_symbol == 'mm_' ? get_mm_cost() : classSupernova::$config->$config_field);
@@ -623,8 +623,8 @@  discard block
 block discarded – undo
623 623
   $from = trim($from ? $from : classSupernova::$config->game_adminEmail);
624 624
 
625 625
   $head = '';
626
-  $head .= "Content-Type: text/" . ($html ? 'html' : 'plain') . "; charset=utf-8 \r\n";
627
-  $head .= "Date: " . date('r') . " \r\n";
626
+  $head .= "Content-Type: text/".($html ? 'html' : 'plain')."; charset=utf-8 \r\n";
627
+  $head .= "Date: ".date('r')." \r\n";
628 628
   $classConfig = classSupernova::$config;
629 629
   $head .= "Return-Path: {$classConfig->game_adminEmail} \r\n";
630 630
   $head .= "From: {$from} \r\n";
@@ -637,10 +637,10 @@  discard block
 block discarded – undo
637 637
   $body = str_replace("\n", "\r\n", $body);
638 638
 
639 639
   if ($html) {
640
-    $body = '<html><head><base href="' . SN_ROOT_VIRTUAL . '"></head><body>' . nl2br($body) . '</body></html>';
640
+    $body = '<html><head><base href="'.SN_ROOT_VIRTUAL.'"></head><body>'.nl2br($body).'</body></html>';
641 641
   }
642 642
 
643
-  $title = '=?UTF-8?B?' . base64_encode($title) . '?=';
643
+  $title = '=?UTF-8?B?'.base64_encode($title).'?=';
644 644
 
645 645
   return @mail($email_unsafe, $title, $body, $head);
646 646
 }
@@ -656,14 +656,14 @@  discard block
 block discarded – undo
656 656
   $classLocale = classLocale::$lang;
657 657
 
658 658
   return
659
-    ($full || $time ? "{$time} {$classLocale['sys_day']}&nbsp;" : '') .
660
-    ($full || $hours ? "{$hours} {$classLocale['sys_hrs']}&nbsp;" : '') .
661
-    ($full || $minutes ? "{$minutes} {$classLocale['sys_min']}&nbsp;" : '') .
659
+    ($full || $time ? "{$time} {$classLocale['sys_day']}&nbsp;" : '').
660
+    ($full || $hours ? "{$hours} {$classLocale['sys_hrs']}&nbsp;" : '').
661
+    ($full || $minutes ? "{$minutes} {$classLocale['sys_min']}&nbsp;" : '').
662 662
     ($full || !$time || $seconds ? "{$seconds} {$classLocale['sys_sec']}" : '');
663 663
 }
664 664
 
665 665
 function sys_time_human_system($time) {
666
-  return $time ? date(FMT_DATE_TIME_SQL, $time) . " ({$time}), " . sys_time_human(SN_TIME_NOW - $time) : '{NEVER}';
666
+  return $time ? date(FMT_DATE_TIME_SQL, $time)." ({$time}), ".sys_time_human(SN_TIME_NOW - $time) : '{NEVER}';
667 667
 }
668 668
 
669 669
 function sys_redirect($url) {
@@ -756,13 +756,13 @@  discard block
 block discarded – undo
756 756
       // usw..
757 757
     );
758 758
 
759
-    $rexep = "#" . strtr(preg_quote($format), $masks) . "#";
759
+    $rexep = "#".strtr(preg_quote($format), $masks)."#";
760 760
     if (preg_match($rexep, $date, $out)) {
761 761
       $ret = array(
762
-        "tm_sec"  => (int)$out['S'],
763
-        "tm_min"  => (int)$out['M'],
764
-        "tm_hour" => (int)$out['H'],
765
-        "tm_mday" => (int)$out['d'],
762
+        "tm_sec"  => (int) $out['S'],
763
+        "tm_min"  => (int) $out['M'],
764
+        "tm_hour" => (int) $out['H'],
765
+        "tm_mday" => (int) $out['d'],
766 766
         "tm_mon"  => $out['m'] ? $out['m'] - 1 : 0,
767 767
         "tm_year" => $out['Y'] > 1900 ? $out['Y'] - 1900 : 0,
768 768
       );
@@ -832,7 +832,7 @@  discard block
 block discarded – undo
832 832
         $functions[$function_name] = array();
833 833
       } elseif (!isset($functions[$function_name])) {
834 834
         $functions[$function_name] = array();
835
-        $sn_function_name = 'sn_' . $function_name . ($sub_type ? '_' . $sub_type : '');
835
+        $sn_function_name = 'sn_'.$function_name.($sub_type ? '_'.$sub_type : '');
836 836
         $functions[$function_name][] = $sn_function_name;
837 837
       }
838 838
 
@@ -899,7 +899,7 @@  discard block
 block discarded – undo
899 899
   }
900 900
 
901 901
   if (isset($nick_array[NICK_GENDER])) {
902
-    $result[NICK_GENDER] = '<img src="' . ($user['dpath'] ? $user['dpath'] : DEFAULT_SKINPATH) . 'images/gender_' . $nick_array[NICK_GENDER] . '.png" />';
902
+    $result[NICK_GENDER] = '<img src="'.($user['dpath'] ? $user['dpath'] : DEFAULT_SKINPATH).'images/gender_'.$nick_array[NICK_GENDER].'.png" />';
903 903
   }
904 904
 
905 905
   if (isset($nick_array[NICK_AUTH_LEVEL]) || isset($nick_array[NICK_PREMIUM])) {
@@ -931,14 +931,14 @@  discard block
 block discarded – undo
931 931
   }
932 932
 
933 933
   if (isset($nick_array[NICK_CLASS])) {
934
-    $result[NICK_CLASS] = '<span ' . $nick_array[NICK_CLASS] . '>';
934
+    $result[NICK_CLASS] = '<span '.$nick_array[NICK_CLASS].'>';
935 935
     $result[NICK_CLASS_END] = '</span>';
936 936
   }
937 937
 
938 938
   $result[NICK_NICK] = sys_safe_output($nick_array[NICK_NICK]);
939 939
 
940 940
   if (isset($nick_array[NICK_ALLY])) {
941
-    $result[NICK_ALLY] = '[' . sys_safe_output($nick_array[NICK_ALLY]) . ']';
941
+    $result[NICK_ALLY] = '['.sys_safe_output($nick_array[NICK_ALLY]).']';
942 942
   }
943 943
 
944 944
   $result[NICK_HTML] = true;
@@ -961,7 +961,7 @@  discard block
 block discarded – undo
961 961
   */
962 962
 
963 963
 
964
-  if ($render_user['user_birthday'] && ($options === true || isset($options['icons']) || isset($options['birthday'])) && (date('Y', SN_TIME_NOW) . date('-m-d', strtotime($render_user['user_birthday'])) == date('Y-m-d', SN_TIME_NOW))) {
964
+  if ($render_user['user_birthday'] && ($options === true || isset($options['icons']) || isset($options['birthday'])) && (date('Y', SN_TIME_NOW).date('-m-d', strtotime($render_user['user_birthday'])) == date('Y-m-d', SN_TIME_NOW))) {
965 965
     $result[NICK_BIRTHSDAY] = '';
966 966
   }
967 967
 
@@ -983,7 +983,7 @@  discard block
 block discarded – undo
983 983
   }
984 984
 
985 985
   if ((isset($options['class']) && $options['class'])) {
986
-    $result[NICK_CLASS] = (isset($result_options[NICK_CLASS]) ? ' ' . $result_options[NICK_CLASS] : '') . $options['class'];
986
+    $result[NICK_CLASS] = (isset($result_options[NICK_CLASS]) ? ' '.$result_options[NICK_CLASS] : '').$options['class'];
987 987
   }
988 988
 
989 989
   if ($render_user['ally_tag'] && ($options === true || (isset($options['ally']) && $options['ally']))) {
@@ -1011,7 +1011,7 @@  discard block
 block discarded – undo
1011 1011
     foreach ($temp as $user_id) {
1012 1012
       $user_id = floatval($user_id);
1013 1013
       if ($user_id) {
1014
-        $user_skip_list[] = '`id` = ' . $user_id;
1014
+        $user_skip_list[] = '`id` = '.$user_id;
1015 1015
       }
1016 1016
     }
1017 1017
   }
@@ -1410,7 +1410,7 @@  discard block
 block discarded – undo
1410 1410
     $time_left = min(floor($time_left / PERIOD_DAY), $term_original);
1411 1411
     $cost_left = $term_original > 0 ? ceil($time_left / $term_original * $original_cost) : 0;
1412 1412
 
1413
-    array_walk_recursive($result, function (&$value) use ($cost_left) {
1413
+    array_walk_recursive($result, function(&$value) use ($cost_left) {
1414 1414
       $value -= $cost_left;
1415 1415
     });
1416 1416
   }
@@ -1465,7 +1465,7 @@  discard block
 block discarded – undo
1465 1465
 }
1466 1466
 
1467 1467
 function print_rr($var, $capture = false) {
1468
-  $print = '<pre>' . htmlspecialchars(print_r($var, true)) . '</pre>';
1468
+  $print = '<pre>'.htmlspecialchars(print_r($var, true)).'</pre>';
1469 1469
   if ($capture) {
1470 1470
     return $print;
1471 1471
   } else {
@@ -1567,7 +1567,7 @@  discard block
 block discarded – undo
1567 1567
       break;
1568 1568
     }
1569 1569
     $sort_option_inverse_closure = $sort_option_inverse ? -1 : 1;
1570
-    usort($ListToSort, function ($a, $b) use ($sort_option_field, $sort_option_inverse_closure) {
1570
+    usort($ListToSort, function($a, $b) use ($sort_option_field, $sort_option_inverse_closure) {
1571 1571
       return $a[$sort_option_field] < $b[$sort_option_field] ? -1 * $sort_option_inverse_closure : (
1572 1572
       $a[$sort_option_field] > $b[$sort_option_field] ? 1 * $sort_option_inverse_closure : 0
1573 1573
       );
Please login to merge, or discard this patch.
officer.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -1,6 +1,6 @@
 block discarded – undo
1 1
 <?php
2 2
 
3
-include('common.' . substr(strrchr(__FILE__, '.'), 1));
3
+include('common.'.substr(strrchr(__FILE__, '.'), 1));
4 4
 
5 5
 $template = gettemplate('viewreport', true);
6 6
 $template->assign_var('PAGE_HINT', classLocale::$lang['cr_view_hint']);
Please login to merge, or discard this patch.
logout.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -1,6 +1,6 @@
 block discarded – undo
1 1
 <?php
2 2
 
3
-include('common.' . substr(strrchr(__FILE__, '.'), 1));
3
+include('common.'.substr(strrchr(__FILE__, '.'), 1));
4 4
 
5 5
 $template = gettemplate('viewreport', true);
6 6
 $template->assign_var('PAGE_HINT', classLocale::$lang['cr_view_hint']);
Please login to merge, or discard this patch.
admin/adm_metamatter.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -13,10 +13,10 @@
 block discarded – undo
13 13
 define('INSTALL', false);
14 14
 define('IN_ADMIN', true);
15 15
 
16
-require('../common.' . substr(strrchr(__FILE__, '.'), 1));
16
+require('../common.'.substr(strrchr(__FILE__, '.'), 1));
17 17
 
18 18
 if (!sn_module_get_active_count('payment')) {
19
-  sys_redirect(SN_ROOT_VIRTUAL . 'admin/overview.php');
19
+  sys_redirect(SN_ROOT_VIRTUAL.'admin/overview.php');
20 20
 }
21 21
 
22 22
 if ($user['authlevel'] < 3) {
Please login to merge, or discard this patch.
server_info.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -1,6 +1,6 @@
 block discarded – undo
1 1
 <?php
2 2
 
3
-include('common.' . substr(strrchr(__FILE__, '.'), 1));
3
+include('common.'.substr(strrchr(__FILE__, '.'), 1));
4 4
 
5 5
 $template = gettemplate('viewreport', true);
6 6
 $template->assign_var('PAGE_HINT', classLocale::$lang['cr_view_hint']);
Please login to merge, or discard this patch.
includes/functions/int_banner_create.php 1 patch
Spacing   +14 added lines, -14 removed lines patch added patch discarded remove patch
@@ -24,8 +24,8 @@  discard block
 block discarded – undo
24 24
       $img_name = classSupernova::$config->int_userbar_background;
25 25
     break;
26 26
   }
27
-  $size = getimagesize(SN_ROOT_PHYSICAL . $img_name);
28
-  $im = imagecreatefrompng(SN_ROOT_PHYSICAL . $img_name);
27
+  $size = getimagesize(SN_ROOT_PHYSICAL.$img_name);
28
+  $im = imagecreatefrompng(SN_ROOT_PHYSICAL.$img_name);
29 29
   $image = imagecreatetruecolor($size[0], $size[1]);
30 30
   imagecopy($image, $im, 0, 0, 0, 0, $size[0], $size[1]);
31 31
   imagedestroy($im);
@@ -37,10 +37,10 @@  discard block
 block discarded – undo
37 37
   $txt_color2 = imagecolorallocatealpha($image, 255, 255, 255, 40);
38 38
 
39 39
   $fonts = array(
40
-    'userbar'  => SN_ROOT_PHYSICAL . "design/fonts/" . classSupernova::$config->int_userbar_font,
41
-    'universe' => SN_ROOT_PHYSICAL . "design/fonts/" . classSupernova::$config->int_banner_fontUniverse,
42
-    'raids'    => SN_ROOT_PHYSICAL . "design/fonts/" . classSupernova::$config->int_banner_fontRaids,
43
-    'info'     => SN_ROOT_PHYSICAL . "design/fonts/" . classSupernova::$config->int_banner_fontInfo,
40
+    'userbar'  => SN_ROOT_PHYSICAL."design/fonts/".classSupernova::$config->int_userbar_font,
41
+    'universe' => SN_ROOT_PHYSICAL."design/fonts/".classSupernova::$config->int_banner_fontUniverse,
42
+    'raids'    => SN_ROOT_PHYSICAL."design/fonts/".classSupernova::$config->int_banner_fontRaids,
43
+    'info'     => SN_ROOT_PHYSICAL."design/fonts/".classSupernova::$config->int_banner_fontInfo,
44 44
   );
45 45
 
46 46
   if ($id) {
@@ -52,8 +52,8 @@  discard block
 block discarded – undo
52 52
     $b_user = $user['username'];
53 53
     $b_ally = $user['ally_name'];
54 54
     $b_planet = $planet_row['name'];
55
-    $b_xyz = "[" . $planet_row['galaxy'] . ":" . $planet_row['system'] . ":" . $planet_row['planet'] . "]";
56
-    $b_lvl = ($user['total_rank'] ? $user['total_rank'] : classSupernova::$config->users_amount) . "/" . classSupernova::$config->users_amount;
55
+    $b_xyz = "[".$planet_row['galaxy'].":".$planet_row['system'].":".$planet_row['planet']."]";
56
+    $b_lvl = ($user['total_rank'] ? $user['total_rank'] : classSupernova::$config->users_amount)."/".classSupernova::$config->users_amount;
57 57
   } else {
58 58
     $b_user = classLocale::$lang['ov_banner_empty_id'];
59 59
     $b_lvl = '';
@@ -88,11 +88,11 @@  discard block
 block discarded – undo
88 88
         imagettftext($image, 9, 0, 410 - $is[2], 35, $txt_color, $fonts['info'], $b_ally);
89 89
 
90 90
         // Player b_planet
91
-        imagettftext($image, 6, 0, 8, 10, $txt_shadow2, $fonts['raids'], $b_planet . " " . $b_xyz);
92
-        imagettftext($image, 6, 0, 6, 9, $txt_color2, $fonts['raids'], $b_planet . " " . $b_xyz);
91
+        imagettftext($image, 6, 0, 8, 10, $txt_shadow2, $fonts['raids'], $b_planet." ".$b_xyz);
92
+        imagettftext($image, 6, 0, 6, 9, $txt_color2, $fonts['raids'], $b_planet." ".$b_xyz);
93 93
 
94 94
         //StatPoint
95
-        $b_points = classLocale::$lang['ov_points'] . ": " . pretty_number(!empty($user['total_points']) ? $user['total_points'] : 0);
95
+        $b_points = classLocale::$lang['ov_points'].": ".pretty_number(!empty($user['total_points']) ? $user['total_points'] : 0);
96 96
         $is = imagettfbbox(8, 0, $fonts['info'], $b_points);
97 97
         imagettftext($image, 8, 0, 412 - $is[2], 11, $txt_shadow, $fonts['info'], $b_points);
98 98
         imagettftext($image, 8, 0, 410 - $is[2], 9, $txt_color, $fonts['info'], $b_points);
@@ -100,21 +100,21 @@  discard block
 block discarded – undo
100 100
         //Raids Total
101 101
         imagettftext($image, 6, 0, 8, 37, $txt_shadow2, $fonts['raids'], classLocale::$lang['NumberOfRaids']);
102 102
         imagettftext($image, 6, 0, 6, 35, $txt_color2, $fonts['raids'], classLocale::$lang['NumberOfRaids']);
103
-        $b_points = ": " . pretty_number(!empty($user['raids']) ? $user['raids'] : 0);
103
+        $b_points = ": ".pretty_number(!empty($user['raids']) ? $user['raids'] : 0);
104 104
         imagettftext($image, 6, 0, 61, 37, $txt_shadow2, $fonts['raids'], $b_points);
105 105
         imagettftext($image, 6, 0, 59, 35, $txt_color2, $fonts['raids'], $b_points);
106 106
 
107 107
         //Raids Won
108 108
         imagettftext($image, 6, 0, 8, 47, $txt_shadow2, $fonts['raids'], classLocale::$lang['RaidsWin']);
109 109
         imagettftext($image, 6, 0, 6, 45, $txt_color2, $fonts['raids'], classLocale::$lang['RaidsWin']);
110
-        $b_points = ": " . pretty_number(!empty($user['raidswin']) ? $user['raidswin'] : 0);
110
+        $b_points = ": ".pretty_number(!empty($user['raidswin']) ? $user['raidswin'] : 0);
111 111
         imagettftext($image, 6, 0, 61, 47, $txt_shadow2, $fonts['raids'], $b_points);
112 112
         imagettftext($image, 6, 0, 59, 45, $txt_color2, $fonts['raids'], $b_points);
113 113
 
114 114
         //Raids Lost
115 115
         imagettftext($image, 6, 0, 8, 57, $txt_shadow2, $fonts['raids'], classLocale::$lang['RaidsLoose']);
116 116
         imagettftext($image, 6, 0, 6, 55, $txt_color2, $fonts['raids'], classLocale::$lang['RaidsLoose']);
117
-        $b_points = ": " . pretty_number(!empty($user['raidsloose']) ? $user['raidsloose'] : 0);
117
+        $b_points = ": ".pretty_number(!empty($user['raidsloose']) ? $user['raidsloose'] : 0);
118 118
         imagettftext($image, 6, 0, 61, 57, $txt_shadow2, $fonts['raids'], $b_points);
119 119
         imagettftext($image, 6, 0, 59, 55, $txt_color2, $fonts['raids'], $b_points);
120 120
       }
Please login to merge, or discard this patch.