@@ -69,7 +69,7 @@ discard block |
||
69 | 69 | $gateway = $payment_action->post_content['gateway']; |
70 | 70 | $is_stripe = $gateway === 'stripe' || ( is_array( $gateway ) && in_array( 'stripe', $gateway, true ) ); |
71 | 71 | if ( ! $is_stripe || empty( $payment_action->post_content['amount'] ) ) { |
72 | - unset( $payment_actions[ $k ] ); |
|
72 | + unset( $payment_actions[$k] ); |
|
73 | 73 | } |
74 | 74 | } |
75 | 75 | return $payment_actions; |
@@ -106,7 +106,7 @@ discard block |
||
106 | 106 | 'run_triggers' => false, |
107 | 107 | 'show_errors' => true, |
108 | 108 | ); |
109 | - $atts = compact( 'action', 'entry', 'form' ); |
|
109 | + $atts = compact( 'action', 'entry', 'form' ); |
|
110 | 110 | |
111 | 111 | $amount = self::prepare_amount( $action->post_content['amount'], $atts ); |
112 | 112 | if ( empty( $amount ) || $amount == 000 ) { |
@@ -293,7 +293,7 @@ discard block |
||
293 | 293 | |
294 | 294 | // Gateway is a radio button but it should always be an array in the database for |
295 | 295 | // compatibility with the payments submodule where it is a checkbox. |
296 | - $settings['gateway'] = ! empty( $settings['gateway'] ) ? (array) $settings['gateway'] : array( 'stripe' ); |
|
296 | + $settings['gateway'] = ! empty( $settings['gateway'] ) ? (array) $settings['gateway'] : array( 'stripe' ); |
|
297 | 297 | |
298 | 298 | $is_stripe = in_array( 'stripe', $settings['gateway'], true ); |
299 | 299 | if ( ! $is_stripe ) { |
@@ -505,7 +505,7 @@ discard block |
||
505 | 505 | $disallowed = array( ';', ':', '!important' ); |
506 | 506 | foreach ( $settings as $k => $s ) { |
507 | 507 | if ( is_string( $s ) ) { |
508 | - $settings[ $k ] = str_replace( $disallowed, '', $s ); |
|
508 | + $settings[$k] = str_replace( $disallowed, '', $s ); |
|
509 | 509 | } |
510 | 510 | } |
511 | 511 | |
@@ -629,18 +629,18 @@ discard block |
||
629 | 629 | * @return array |
630 | 630 | */ |
631 | 631 | public static function remove_cc_validation( $errors, $field, $values ) { |
632 | - $has_processed = isset( $_POST[ 'frmintent' . $field->form_id ] ); // phpcs:ignore WordPress.Security.NonceVerification.Missing |
|
632 | + $has_processed = isset( $_POST['frmintent' . $field->form_id] ); // phpcs:ignore WordPress.Security.NonceVerification.Missing |
|
633 | 633 | if ( ! $has_processed ) { |
634 | 634 | return $errors; |
635 | 635 | } |
636 | 636 | |
637 | 637 | $field_id = isset( $field->temp_id ) ? $field->temp_id : $field->id; |
638 | 638 | |
639 | - if ( isset( $errors[ 'field' . $field_id . '-cc' ] ) ) { |
|
640 | - unset( $errors[ 'field' . $field_id . '-cc' ] ); |
|
639 | + if ( isset( $errors['field' . $field_id . '-cc'] ) ) { |
|
640 | + unset( $errors['field' . $field_id . '-cc'] ); |
|
641 | 641 | } |
642 | - if ( isset( $errors[ 'field' . $field_id ] ) ) { |
|
643 | - unset( $errors[ 'field' . $field_id ] ); |
|
642 | + if ( isset( $errors['field' . $field_id] ) ) { |
|
643 | + unset( $errors['field' . $field_id] ); |
|
644 | 644 | } |
645 | 645 | |
646 | 646 | return $errors; |
@@ -239,8 +239,8 @@ discard block |
||
239 | 239 | } |
240 | 240 | |
241 | 241 | foreach ( $settings as $setting => $default ) { |
242 | - if ( isset( $params[ 'frm_' . $setting ] ) ) { |
|
243 | - $this->{$setting} = $params[ 'frm_' . $setting ]; |
|
242 | + if ( isset( $params['frm_' . $setting] ) ) { |
|
243 | + $this->{$setting} = $params['frm_' . $setting]; |
|
244 | 244 | } elseif ( ! isset( $this->{$setting} ) ) { |
245 | 245 | $this->{$setting} = $default; |
246 | 246 | } |
@@ -432,7 +432,7 @@ discard block |
||
432 | 432 | 'denylist_check', |
433 | 433 | ); |
434 | 434 | foreach ( $checkboxes as $set ) { |
435 | - $this->$set = isset( $params[ 'frm_' . $set ] ) ? absint( $params[ 'frm_' . $set ] ) : 0; |
|
435 | + $this->$set = isset( $params['frm_' . $set] ) ? absint( $params['frm_' . $set] ) : 0; |
|
436 | 436 | } |
437 | 437 | } |
438 | 438 | |
@@ -445,7 +445,7 @@ discard block |
||
445 | 445 | $frm_roles = FrmAppHelper::frm_capabilities(); |
446 | 446 | $roles = get_editable_roles(); |
447 | 447 | foreach ( $frm_roles as $frm_role => $frm_role_description ) { |
448 | - $this->$frm_role = (array) ( isset( $params[ $frm_role ] ) ? $params[ $frm_role ] : 'administrator' ); |
|
448 | + $this->$frm_role = (array) ( isset( $params[$frm_role] ) ? $params[$frm_role] : 'administrator' ); |
|
449 | 449 | |
450 | 450 | // Make sure administrators always have permissions |
451 | 451 | if ( ! in_array( 'administrator', $this->$frm_role, true ) ) { |
@@ -82,12 +82,12 @@ |
||
82 | 82 | $settings = $this->default_options(); |
83 | 83 | |
84 | 84 | foreach ( $settings as $setting => $default ) { |
85 | - if ( isset( $params[ 'frm_' . $this->param() . '_' . $setting ] ) ) { |
|
86 | - $this->settings->{$setting} = trim( sanitize_text_field( $params[ 'frm_' . $this->param() . '_' . $setting ] ) ); |
|
85 | + if ( isset( $params['frm_' . $this->param() . '_' . $setting] ) ) { |
|
86 | + $this->settings->{$setting} = trim( sanitize_text_field( $params['frm_' . $this->param() . '_' . $setting] ) ); |
|
87 | 87 | } |
88 | 88 | } |
89 | 89 | |
90 | - $this->settings->test_mode = isset( $params[ 'frm_' . $this->param() . '_test_mode' ] ) ? absint( $params[ 'frm_' . $this->param() . '_test_mode' ] ) : 0; |
|
90 | + $this->settings->test_mode = isset( $params['frm_' . $this->param() . '_test_mode'] ) ? absint( $params['frm_' . $this->param() . '_test_mode'] ) : 0; |
|
91 | 91 | } |
92 | 92 | |
93 | 93 | /** |
@@ -123,9 +123,9 @@ discard block |
||
123 | 123 | $address_setting = $action->post_content['billing_address']; |
124 | 124 | |
125 | 125 | $entry = self::generate_false_entry(); |
126 | - $first_name = $first_name_setting && isset( $entry->metas[ $first_name_setting ] ) ? $entry->metas[ $first_name_setting ] : ''; |
|
127 | - $last_name = $last_name_setting && isset( $entry->metas[ $last_name_setting ] ) ? $entry->metas[ $last_name_setting ] : ''; |
|
128 | - $address = $address_setting && isset( $entry->metas[ $address_setting ] ) ? $entry->metas[ $address_setting ] : ''; |
|
126 | + $first_name = $first_name_setting && isset( $entry->metas[$first_name_setting] ) ? $entry->metas[$first_name_setting] : ''; |
|
127 | + $last_name = $last_name_setting && isset( $entry->metas[$last_name_setting] ) ? $entry->metas[$last_name_setting] : ''; |
|
128 | + $address = $address_setting && isset( $entry->metas[$address_setting] ) ? $entry->metas[$address_setting] : ''; |
|
129 | 129 | |
130 | 130 | if ( is_array( $first_name ) && isset( $first_name['first'] ) ) { |
131 | 131 | $first_name = $first_name['first']; |
@@ -141,7 +141,7 @@ discard block |
||
141 | 141 | ); |
142 | 142 | |
143 | 143 | if ( $email_setting ) { |
144 | - $shortcode_atts = array( |
|
144 | + $shortcode_atts = array( |
|
145 | 145 | 'entry' => $entry, |
146 | 146 | 'form' => $action->menu_order, |
147 | 147 | 'value' => $email_setting, |
@@ -181,7 +181,7 @@ discard block |
||
181 | 181 | if ( is_array( $v ) ) { |
182 | 182 | foreach ( $v as $f => $value ) { |
183 | 183 | FrmAppHelper::sanitize_value( 'wp_kses_post', $value ); |
184 | - $entry->metas[ absint( $f ) ] = $value; |
|
184 | + $entry->metas[absint( $f )] = $value; |
|
185 | 185 | } |
186 | 186 | } |
187 | 187 | } else { |
@@ -139,7 +139,8 @@ discard block |
||
139 | 139 | * @return string|true string on error, true on success. |
140 | 140 | */ |
141 | 141 | private static function trigger_one_time_payment( $atts ) { |
142 | - if ( empty( $_POST['square-token'] ) || empty( $_POST['square-verification-token'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing |
|
142 | + if ( empty( $_POST['square-token'] ) || empty( $_POST['square-verification-token'] ) ) { |
|
143 | +// phpcs:ignore WordPress.Security.NonceVerification.Missing |
|
143 | 144 | return __( 'Please enter a valid credit card', 'formidable' ); |
144 | 145 | } |
145 | 146 | |
@@ -199,7 +200,8 @@ discard block |
||
199 | 200 | * @return bool|string True on success, error message on failure |
200 | 201 | */ |
201 | 202 | private static function trigger_recurring_payment( $atts ) { |
202 | - if ( empty( $_POST['square-token'] ) || empty( $_POST['square-verification-token'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing |
|
203 | + if ( empty( $_POST['square-token'] ) || empty( $_POST['square-verification-token'] ) ) { |
|
204 | +// phpcs:ignore WordPress.Security.NonceVerification.Missing |
|
203 | 205 | return __( 'Please enter a valid credit card', 'formidable' ); |
204 | 206 | } |
205 | 207 |
@@ -76,7 +76,7 @@ discard block |
||
76 | 76 | $gateway = $payment_action->post_content['gateway']; |
77 | 77 | $is_square = $gateway === 'square' || ( is_array( $gateway ) && in_array( 'square', $gateway, true ) ); |
78 | 78 | if ( ! $is_square || empty( $payment_action->post_content['amount'] ) ) { |
79 | - unset( $payment_actions[ $k ] ); |
|
79 | + unset( $payment_actions[$k] ); |
|
80 | 80 | } |
81 | 81 | } |
82 | 82 | return $payment_actions; |
@@ -97,7 +97,7 @@ discard block |
||
97 | 97 | 'run_triggers' => false, |
98 | 98 | 'show_errors' => true, |
99 | 99 | ); |
100 | - $atts = compact( 'action', 'entry', 'form' ); |
|
100 | + $atts = compact( 'action', 'entry', 'form' ); |
|
101 | 101 | |
102 | 102 | $amount = self::prepare_amount( $action->post_content['amount'], $atts ); |
103 | 103 | if ( empty( $amount ) || $amount == 000 ) { |
@@ -150,7 +150,7 @@ discard block |
||
150 | 150 | 'value' => $atts['action']->post_content['description'], |
151 | 151 | ) |
152 | 152 | ); |
153 | - $result = FrmSquareLiteConnectHelper::create_payment( $atts['amount'], $currency, $square_token, $verification_token, $description ); |
|
153 | + $result = FrmSquareLiteConnectHelper::create_payment( $atts['amount'], $currency, $square_token, $verification_token, $description ); |
|
154 | 154 | |
155 | 155 | if ( false === $result ) { |
156 | 156 | return FrmSquareLiteConnectHelper::get_latest_error_from_square_api(); |
@@ -455,7 +455,7 @@ discard block |
||
455 | 455 | false |
456 | 456 | ); |
457 | 457 | |
458 | - $square_vars = array( |
|
458 | + $square_vars = array( |
|
459 | 459 | 'formId' => $form_id, |
460 | 460 | 'nonce' => wp_create_nonce( 'frm_square_ajax' ), |
461 | 461 | 'ajax' => esc_url_raw( FrmAppHelper::get_ajax_url() ), |
@@ -572,7 +572,7 @@ discard block |
||
572 | 572 | $disallowed = array( ';', ':', '!important' ); |
573 | 573 | foreach ( $settings as $k => $s ) { |
574 | 574 | if ( is_string( $s ) ) { |
575 | - $settings[ $k ] = str_replace( $disallowed, '', $s ); |
|
575 | + $settings[$k] = str_replace( $disallowed, '', $s ); |
|
576 | 576 | } |
577 | 577 | } |
578 | 578 | |
@@ -598,11 +598,11 @@ discard block |
||
598 | 598 | |
599 | 599 | $field_id = isset( $field->temp_id ) ? $field->temp_id : $field->id; |
600 | 600 | |
601 | - if ( isset( $errors[ 'field' . $field_id . '-cc' ] ) ) { |
|
602 | - unset( $errors[ 'field' . $field_id . '-cc' ] ); |
|
601 | + if ( isset( $errors['field' . $field_id . '-cc'] ) ) { |
|
602 | + unset( $errors['field' . $field_id . '-cc'] ); |
|
603 | 603 | } |
604 | - if ( isset( $errors[ 'field' . $field_id ] ) ) { |
|
605 | - unset( $errors[ 'field' . $field_id ] ); |
|
604 | + if ( isset( $errors['field' . $field_id] ) ) { |
|
605 | + unset( $errors['field' . $field_id] ); |
|
606 | 606 | } |
607 | 607 | |
608 | 608 | return $errors; |
@@ -472,8 +472,8 @@ discard block |
||
472 | 472 | return $values; |
473 | 473 | } |
474 | 474 | |
475 | - if ( is_array( $previous_entry->metas ) && isset( $previous_entry->metas[ $field->id ] ) ) { |
|
476 | - $values['value'] = $previous_entry->metas[ $field->id ]; |
|
475 | + if ( is_array( $previous_entry->metas ) && isset( $previous_entry->metas[$field->id] ) ) { |
|
476 | + $values['value'] = $previous_entry->metas[$field->id]; |
|
477 | 477 | } |
478 | 478 | |
479 | 479 | $frm_vars['trans_filled'] = true; |
@@ -508,7 +508,7 @@ discard block |
||
508 | 508 | * @param Closure $destroy_callback |
509 | 509 | * @return void |
510 | 510 | */ |
511 | - function () use ( $entry_id, &$destroy_callback ) { |
|
511 | + function() use ( $entry_id, &$destroy_callback ) { |
|
512 | 512 | FrmEntry::destroy( $entry_id ); |
513 | 513 | // Only call this once. |
514 | 514 | remove_action( 'frm_entry_form', $destroy_callback ); |
@@ -528,7 +528,7 @@ discard block |
||
528 | 528 | * @return array |
529 | 529 | */ |
530 | 530 | public static function before_save_settings( $settings, $action ) { |
531 | - $settings['gateway'] = ! empty( $settings['gateway'] ) ? (array) $settings['gateway'] : array( 'stripe' ); |
|
531 | + $settings['gateway'] = ! empty( $settings['gateway'] ) ? (array) $settings['gateway'] : array( 'stripe' ); |
|
532 | 532 | |
533 | 533 | if ( in_array( 'square', $settings['gateway'] ) ) { |
534 | 534 | $currency = FrmSquareLiteConnectHelper::get_merchant_currency(); |
@@ -156,8 +156,8 @@ discard block |
||
156 | 156 | $field_val = ''; |
157 | 157 | if ( is_object( $this->field ) ) { |
158 | 158 | $field_val = $this->field->{$column}; |
159 | - } elseif ( is_array( $this->field ) && isset( $this->field[ $column ] ) ) { |
|
160 | - $field_val = $this->field[ $column ]; |
|
159 | + } elseif ( is_array( $this->field ) && isset( $this->field[$column] ) ) { |
|
160 | + $field_val = $this->field[$column]; |
|
161 | 161 | } |
162 | 162 | |
163 | 163 | return $field_val; |
@@ -171,7 +171,7 @@ discard block |
||
171 | 171 | if ( is_object( $this->field ) ) { |
172 | 172 | $this->field->{$column} = $value; |
173 | 173 | } elseif ( is_array( $this->field ) ) { |
174 | - $this->field[ $column ] = $value; |
|
174 | + $this->field[$column] = $value; |
|
175 | 175 | } |
176 | 176 | } |
177 | 177 | |
@@ -637,7 +637,7 @@ discard block |
||
637 | 637 | printf( |
638 | 638 | /* translators: %s: Field type */ |
639 | 639 | esc_html__( '%s Options', 'formidable' ), |
640 | - esc_html( $all_field_types[ $args['display']['type'] ]['name'] ) |
|
640 | + esc_html( $all_field_types[$args['display']['type']]['name'] ) |
|
641 | 641 | ); |
642 | 642 | FrmAppHelper::icon_by_class( 'frmfont frm_arrowdown6_icon', array( 'aria-hidden' => 'true' ) ); |
643 | 643 | ?> |
@@ -737,7 +737,7 @@ discard block |
||
737 | 737 | * New field |
738 | 738 | */ |
739 | 739 | public function get_new_field_defaults() { |
740 | - $field = array( |
|
740 | + $field = array( |
|
741 | 741 | 'name' => $this->get_new_field_name(), |
742 | 742 | 'description' => '', |
743 | 743 | 'type' => $this->type, |
@@ -768,8 +768,8 @@ discard block |
||
768 | 768 | |
769 | 769 | $fields = array_merge( $fields, $pro_fields ); |
770 | 770 | |
771 | - if ( isset( $fields[ $this->type ] ) ) { |
|
772 | - $name = is_array( $fields[ $this->type ] ) ? $fields[ $this->type ]['name'] : $fields[ $this->type ]; |
|
771 | + if ( isset( $fields[$this->type] ) ) { |
|
772 | + $name = is_array( $fields[$this->type] ) ? $fields[$this->type]['name'] : $fields[$this->type]; |
|
773 | 773 | } |
774 | 774 | |
775 | 775 | return $name; |
@@ -786,7 +786,7 @@ discard block |
||
786 | 786 | * @return array |
787 | 787 | */ |
788 | 788 | public function get_default_field_options() { |
789 | - $opts = array( |
|
789 | + $opts = array( |
|
790 | 790 | 'size' => '', |
791 | 791 | 'max' => '', |
792 | 792 | 'label' => '', |
@@ -1030,7 +1030,7 @@ discard block |
||
1030 | 1030 | * @return void |
1031 | 1031 | */ |
1032 | 1032 | public function set_aria_invalid_error( &$shortcode_atts, $args ) { |
1033 | - $shortcode_atts['aria-invalid'] = isset( $args['errors'][ 'field' . $this->field_id ] ) ? 'true' : 'false'; |
|
1033 | + $shortcode_atts['aria-invalid'] = isset( $args['errors']['field' . $this->field_id] ) ? 'true' : 'false'; |
|
1034 | 1034 | } |
1035 | 1035 | |
1036 | 1036 | /** |
@@ -1181,11 +1181,11 @@ discard block |
||
1181 | 1181 | } |
1182 | 1182 | |
1183 | 1183 | $options = array_values( $this->field['options'] ); |
1184 | - if ( ! isset( $options[ $opt ] ) ) { |
|
1184 | + if ( ! isset( $options[$opt] ) ) { |
|
1185 | 1185 | return $hidden; |
1186 | 1186 | } |
1187 | 1187 | |
1188 | - $option = $options[ $opt ]; |
|
1188 | + $option = $options[$opt]; |
|
1189 | 1189 | if ( is_array( $option ) ) { |
1190 | 1190 | $option = $option['value']; |
1191 | 1191 | } |
@@ -1249,8 +1249,8 @@ discard block |
||
1249 | 1249 | $selected = $values['field_value']; |
1250 | 1250 | |
1251 | 1251 | if ( isset( $values['combo_name'] ) ) { |
1252 | - $options = $options[ $values['combo_name'] ]; |
|
1253 | - $selected = is_array( $selected ) && isset( $selected[ $values['combo_name'] ] ) ? $selected[ $values['combo_name'] ] : ''; |
|
1252 | + $options = $options[$values['combo_name']]; |
|
1253 | + $selected = is_array( $selected ) && isset( $selected[$values['combo_name']] ) ? $selected[$values['combo_name']] : ''; |
|
1254 | 1254 | } |
1255 | 1255 | |
1256 | 1256 | $input = $this->select_tag( $values ); |
@@ -1305,7 +1305,7 @@ discard block |
||
1305 | 1305 | } |
1306 | 1306 | |
1307 | 1307 | protected function fill_display_field_values( $args = array() ) { |
1308 | - $defaults = array( |
|
1308 | + $defaults = array( |
|
1309 | 1309 | 'field_name' => 'item_meta[' . $this->get_field_column( 'id' ) . ']', |
1310 | 1310 | 'field_id' => $this->get_field_column( 'id' ), |
1311 | 1311 | 'field_plus_id' => '', |
@@ -1362,7 +1362,7 @@ discard block |
||
1362 | 1362 | } |
1363 | 1363 | } |
1364 | 1364 | |
1365 | - if ( isset( $args['errors'][ 'field' . $args['field_id'] ] ) && ! $custom_error_fields ) { |
|
1365 | + if ( isset( $args['errors']['field' . $args['field_id']] ) && ! $custom_error_fields ) { |
|
1366 | 1366 | if ( $error_comes_first ) { |
1367 | 1367 | array_unshift( $describedby, 'frm_error_' . $args['html_id'] ); |
1368 | 1368 | } else { |
@@ -1440,11 +1440,11 @@ discard block |
||
1440 | 1440 | |
1441 | 1441 | $field_id = $this->get_field_column( 'id' ); |
1442 | 1442 | if ( ! array_key_exists( $field_id, $frm_validated_unique_values ) ) { |
1443 | - $frm_validated_unique_values[ $field_id ] = array(); |
|
1443 | + $frm_validated_unique_values[$field_id] = array(); |
|
1444 | 1444 | return false; |
1445 | 1445 | } |
1446 | 1446 | |
1447 | - $already_validated_this_value = in_array( $value, $frm_validated_unique_values[ $field_id ], true ); |
|
1447 | + $already_validated_this_value = in_array( $value, $frm_validated_unique_values[$field_id], true ); |
|
1448 | 1448 | return $already_validated_this_value; |
1449 | 1449 | } |
1450 | 1450 | |
@@ -1469,7 +1469,7 @@ discard block |
||
1469 | 1469 | private function value_validated_as_unique( $value ) { |
1470 | 1470 | global $frm_validated_unique_values; |
1471 | 1471 | $field_id = $this->get_field_column( 'id' ); |
1472 | - $frm_validated_unique_values[ $field_id ][] = $value; |
|
1472 | + $frm_validated_unique_values[$field_id][] = $value; |
|
1473 | 1473 | } |
1474 | 1474 | |
1475 | 1475 | /** |
@@ -1514,8 +1514,8 @@ discard block |
||
1514 | 1514 | $value = $this->prepare_display_value( $value, $atts ); |
1515 | 1515 | |
1516 | 1516 | if ( is_array( $value ) ) { |
1517 | - if ( ! empty( $atts['show'] ) && isset( $value[ $atts['show'] ] ) ) { |
|
1518 | - $value = $value[ $atts['show'] ]; |
|
1517 | + if ( ! empty( $atts['show'] ) && isset( $value[$atts['show']] ) ) { |
|
1518 | + $value = $value[$atts['show']]; |
|
1519 | 1519 | } elseif ( empty( $atts['return_array'] ) ) { |
1520 | 1520 | $sep = isset( $atts['sep'] ) ? $atts['sep'] : ', '; |
1521 | 1521 | $value = FrmAppHelper::safe_implode( $sep, $value ); |
@@ -1645,8 +1645,8 @@ discard block |
||
1645 | 1645 | $saved_entries = $atts['ids']; |
1646 | 1646 | $new_value = array(); |
1647 | 1647 | foreach ( (array) $value as $old_child_id ) { |
1648 | - if ( isset( $saved_entries[ $old_child_id ] ) ) { |
|
1649 | - $new_value[] = $saved_entries[ $old_child_id ]; |
|
1648 | + if ( isset( $saved_entries[$old_child_id] ) ) { |
|
1649 | + $new_value[] = $saved_entries[$old_child_id]; |
|
1650 | 1650 | } |
1651 | 1651 | } |
1652 | 1652 |