From f2c3de9f5f5b513d9068e457563cdd72f0cb6973 Mon Sep 17 00:00:00 2001 From: riz081 Date: Wed, 25 Jun 2025 00:35:03 +0700 Subject: [PATCH] refactor --- app/src/main/AndroidManifest.xml | 21 +- .../com/example/bdkipoc/MainActivity.java | 68 +-- .../com/example/bdkipoc/PaymentActivity.java | 530 ----------------- .../java/com/example/bdkipoc/PinActivity.java | 558 ------------------ .../com/example/bdkipoc/ReceiptActivity.java | 6 +- .../ReprintActivity.java} | 100 ++-- .../ReprintAdapterActivity.java} | 119 ++-- .../{history => histori}/HistoryActivity.java | 0 .../HistoryDetailActivity.java | 0 .../CreateTransactionActivity.java | 216 ++++++- .../ResultTransactionActivity.java} | 416 +++++++------ .../managers/MidtransCardPaymentManager.java | 530 +++++++++++++++++ app/src/main/res/drawable/banner.png | Bin 0 -> 114848 bytes app/src/main/res/drawable/ic_e_money.png | Bin 0 -> 1454 bytes app/src/main/res/drawable/ic_e_money.xml | 10 - app/src/main/res/drawable/ic_settings.png | Bin 0 -> 1596 bytes app/src/main/res/drawable/ic_settlement.png | Bin 0 -> 1387 bytes app/src/main/res/drawable/ic_settlement.xml | 10 - app/src/main/res/drawable/ic_transfer.png | Bin 0 -> 2243 bytes app/src/main/res/drawable/ic_transfer.xml | 10 - app/src/main/res/font/inter.xml | 4 + app/src/main/res/font/inter_bold.ttf | Bin 0 -> 344028 bytes app/src/main/res/layout/activity_main.xml | 258 +++----- app/src/main/res/layout/activity_payment.xml | 268 --------- app/src/main/res/layout/activity_pin.xml | 298 ---------- ...y_transaction.xml => activity_reprint.xml} | 13 +- ...{item_transaction.xml => item_reprint.xml} | 14 +- 27 files changed, 1203 insertions(+), 2246 deletions(-) delete mode 100644 app/src/main/java/com/example/bdkipoc/PaymentActivity.java delete mode 100644 app/src/main/java/com/example/bdkipoc/PinActivity.java rename app/src/main/java/com/example/bdkipoc/{TransactionActivity.java => cetakulang/ReprintActivity.java} (90%) rename app/src/main/java/com/example/bdkipoc/{TransactionAdapter.java => cetakulang/ReprintAdapterActivity.java} (80%) rename app/src/main/java/com/example/bdkipoc/{history => histori}/HistoryActivity.java (100%) rename app/src/main/java/com/example/bdkipoc/{history => histori}/HistoryDetailActivity.java (100%) rename app/src/main/java/com/example/bdkipoc/{kredit/CreditCardActivity.java => transaction/ResultTransactionActivity.java} (60%) create mode 100644 app/src/main/java/com/example/bdkipoc/transaction/managers/MidtransCardPaymentManager.java create mode 100644 app/src/main/res/drawable/banner.png create mode 100644 app/src/main/res/drawable/ic_e_money.png delete mode 100644 app/src/main/res/drawable/ic_e_money.xml create mode 100644 app/src/main/res/drawable/ic_settings.png create mode 100644 app/src/main/res/drawable/ic_settlement.png delete mode 100644 app/src/main/res/drawable/ic_settlement.xml create mode 100644 app/src/main/res/drawable/ic_transfer.png delete mode 100644 app/src/main/res/drawable/ic_transfer.xml create mode 100644 app/src/main/res/font/inter_bold.ttf delete mode 100644 app/src/main/res/layout/activity_payment.xml delete mode 100644 app/src/main/res/layout/activity_pin.xml rename app/src/main/res/layout/{activity_transaction.xml => activity_reprint.xml} (96%) rename app/src/main/res/layout/{item_transaction.xml => item_reprint.xml} (89%) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index f5ad28e..8836e28 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -45,29 +45,32 @@ - + + - + + + + + @@ -77,7 +80,7 @@ android:exported="false" /> diff --git a/app/src/main/java/com/example/bdkipoc/MainActivity.java b/app/src/main/java/com/example/bdkipoc/MainActivity.java index 6ef0fa0..9c6e46e 100644 --- a/app/src/main/java/com/example/bdkipoc/MainActivity.java +++ b/app/src/main/java/com/example/bdkipoc/MainActivity.java @@ -19,8 +19,11 @@ import androidx.core.view.WindowInsetsCompat; import com.google.android.material.button.MaterialButton; +import com.example.bdkipoc.cetakulang.ReprintActivity; +import com.example.bdkipoc.cetakulang.ReprintAdapterActivity; + import com.example.bdkipoc.transaction.CreateTransactionActivity; -import com.example.bdkipoc.kredit.CreditCardActivity; +import com.example.bdkipoc.transaction.ResultTransactionActivity; public class MainActivity extends AppCompatActivity { @@ -86,12 +89,9 @@ public class MainActivity extends AppCompatActivity { // 6 dummy menus should be hidden initially CardView[] dummyCards = { - findViewById(R.id.card_dummy_menu_1), - findViewById(R.id.card_dummy_menu_2), - findViewById(R.id.card_dummy_menu_3), - findViewById(R.id.card_dummy_menu_4), - findViewById(R.id.card_dummy_menu_5), - findViewById(R.id.card_dummy_menu_6) + findViewById(R.id.card_bantuan), + findViewById(R.id.card_info_toko), + findViewById(R.id.card_pengaturan), }; for (CardView card : dummyCards) { @@ -138,21 +138,17 @@ public class MainActivity extends AppCompatActivity { R.id.card_kartu_debit, R.id.card_qris, // Row 2 (Always visible - 3 items) + R.id.card_transfer, R.id.card_uang_elektronik, R.id.card_cetak_ulang, - R.id.card_settlement, // Row 3 (Always visible - 3 items) + R.id.card_refund, + R.id.card_settlement, R.id.card_histori, - R.id.card_bantuan, - R.id.card_info_toko, // Row 4 (Hidden initially - 3 items) - R.id.card_dummy_menu_1, - R.id.card_dummy_menu_2, - R.id.card_dummy_menu_3, - // Row 5 (Hidden initially - 3 items) - R.id.card_dummy_menu_4, - R.id.card_dummy_menu_5, - R.id.card_dummy_menu_6 + R.id.card_bantuan, + R.id.card_info_toko, + R.id.card_pengaturan, }; // Set up click listeners for all cards @@ -163,33 +159,30 @@ public class MainActivity extends AppCompatActivity { if (cardId == R.id.card_kartu_kredit) { startActivity(new Intent(MainActivity.this, CreateTransactionActivity.class)); } else if (cardId == R.id.card_kartu_debit) { - startActivity(new Intent(MainActivity.this, PaymentActivity.class)); + startActivity(new Intent(MainActivity.this, CreateTransactionActivity.class)); } else if (cardId == R.id.card_qris) { startActivity(new Intent(MainActivity.this, QrisActivity.class)); + // Col-2 + } else if (cardId == R.id.card_transfer) { + startActivity(new Intent(MainActivity.this, CreateTransactionActivity.class)); } else if (cardId == R.id.card_uang_elektronik) { - startActivity(new Intent(MainActivity.this, PaymentActivity.class)); + startActivity(new Intent(MainActivity.this, CreateTransactionActivity.class)); } else if (cardId == R.id.card_cetak_ulang) { - startActivity(new Intent(MainActivity.this, TransactionActivity.class)); + startActivity(new Intent(MainActivity.this, ReprintActivity.class)); + // Col-3 + } else if (cardId == R.id.card_refund) { + startActivity(new Intent(MainActivity.this, CreateTransactionActivity.class)); } else if (cardId == R.id.card_settlement) { Toast.makeText(this, "Settlement - Coming Soon", Toast.LENGTH_SHORT).show(); } else if (cardId == R.id.card_histori) { - Toast.makeText(this, "Histori - Coming Soon", Toast.LENGTH_SHORT).show(); + startActivity(new Intent(MainActivity.this, HistoryActivity.class)); + // Col-4 } else if (cardId == R.id.card_bantuan) { Toast.makeText(this, "Bantuan - Coming Soon", Toast.LENGTH_SHORT).show(); } else if (cardId == R.id.card_info_toko) { Toast.makeText(this, "Info Toko - Coming Soon", Toast.LENGTH_SHORT).show(); - } else if (cardId == R.id.card_dummy_menu_1) { - Toast.makeText(this, "Dummy Menu 1 - Coming Soon", Toast.LENGTH_SHORT).show(); - } else if (cardId == R.id.card_dummy_menu_2) { - Toast.makeText(this, "Dummy Menu 2 - Coming Soon", Toast.LENGTH_SHORT).show(); - } else if (cardId == R.id.card_dummy_menu_3) { - Toast.makeText(this, "Dummy Menu 3 - Coming Soon", Toast.LENGTH_SHORT).show(); - } else if (cardId == R.id.card_dummy_menu_4) { - Toast.makeText(this, "Dummy Menu 4 - Coming Soon", Toast.LENGTH_SHORT).show(); - } else if (cardId == R.id.card_dummy_menu_5) { - Toast.makeText(this, "Dummy Menu 5 - Coming Soon", Toast.LENGTH_SHORT).show(); - } else if (cardId == R.id.card_dummy_menu_6) { - Toast.makeText(this, "Dummy Menu 6 - Coming Soon", Toast.LENGTH_SHORT).show(); + } else if (cardId == R.id.card_pengaturan) { + Toast.makeText(this, "Pengaturan - Coming Soon", Toast.LENGTH_SHORT).show(); } else { // Fallback for any other cards Toast.makeText(this, "Menu Diklik: " + getResources().getResourceEntryName(cardId), Toast.LENGTH_SHORT).show(); @@ -200,12 +193,9 @@ public class MainActivity extends AppCompatActivity { // Get references to ONLY the dummy cards that need to be toggled CardView[] toggleableCards = { - findViewById(R.id.card_dummy_menu_1), - findViewById(R.id.card_dummy_menu_2), - findViewById(R.id.card_dummy_menu_3), - findViewById(R.id.card_dummy_menu_4), - findViewById(R.id.card_dummy_menu_5), - findViewById(R.id.card_dummy_menu_6) + findViewById(R.id.card_bantuan), + findViewById(R.id.card_info_toko), + findViewById(R.id.card_pengaturan), }; // Set up "Lainnya" button click listener diff --git a/app/src/main/java/com/example/bdkipoc/PaymentActivity.java b/app/src/main/java/com/example/bdkipoc/PaymentActivity.java deleted file mode 100644 index 0e88fe3..0000000 --- a/app/src/main/java/com/example/bdkipoc/PaymentActivity.java +++ /dev/null @@ -1,530 +0,0 @@ -package com.example.bdkipoc; - -import android.animation.AnimatorSet; -import android.animation.ObjectAnimator; -import android.app.Dialog; -import android.content.Intent; -import android.graphics.Color; -import android.graphics.drawable.ColorDrawable; -import android.os.Build; -import android.os.Bundle; -import android.os.Handler; -import android.os.Looper; -import android.text.TextUtils; -import android.view.View; -import android.view.Window; -import android.view.WindowManager; -import android.view.animation.AccelerateDecelerateInterpolator; -import android.widget.Button; -import android.widget.EditText; -import android.widget.ImageView; -import android.widget.LinearLayout; -import android.widget.RadioGroup; -import android.widget.TextView; -import android.widget.Toast; -import androidx.appcompat.app.AppCompatActivity; - -public class PaymentActivity extends AppCompatActivity { - - // Views - private EditText editTextAmount; - private Button confirmButton; - private LinearLayout backNavigation; - private ImageView backArrow; - private TextView toolbarTitle; - - // Numpad buttons - private TextView btn1, btn2, btn3, btn4, btn5, btn6, btn7, btn8, btn9, btn0, btn000; - private ImageView btnDelete; - - // Modal components - private Dialog paymentModal; - - // Data - private StringBuilder currentAmount = new StringBuilder(); - private static final int MAX_AMOUNT_LENGTH = 12; - - // Animation - private Handler animationHandler = new Handler(Looper.getMainLooper()); - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - - // Set status bar color programmatically - setStatusBarColor(); - - setContentView(R.layout.activity_payment); - - initializeViews(); - setupClickListeners(); - setupInitialStates(); - setupModal(); - } - - private void setStatusBarColor() { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - Window window = getWindow(); - window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); - window.setStatusBarColor(Color.parseColor("#E31937")); // Red color - - // Make status bar icons white (for dark red background) - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { - View decorView = window.getDecorView(); - decorView.setSystemUiVisibility(0); // Clear light status bar flag - } - } - } - - private void initializeViews() { - // Main views - editTextAmount = findViewById(R.id.editTextAmount); - confirmButton = findViewById(R.id.confirmButton); - backNavigation = findViewById(R.id.back_navigation); - backArrow = findViewById(R.id.backArrow); - toolbarTitle = findViewById(R.id.toolbarTitle); - - // Numpad buttons - btn1 = findViewById(R.id.btn1); - btn2 = findViewById(R.id.btn2); - btn3 = findViewById(R.id.btn3); - btn4 = findViewById(R.id.btn4); - btn5 = findViewById(R.id.btn5); - btn6 = findViewById(R.id.btn6); - btn7 = findViewById(R.id.btn7); - btn8 = findViewById(R.id.btn8); - btn9 = findViewById(R.id.btn9); - btn0 = findViewById(R.id.btn0); - btn000 = findViewById(R.id.btn000); - btnDelete = findViewById(R.id.btnDelete); - } - - private void setupModal() { - // Create modal dialog - paymentModal = new Dialog(this); - paymentModal.setContentView(R.layout.modal_layout); - - // Remove background dimming - make it fully transparent - if (paymentModal.getWindow() != null) { - paymentModal.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); - } - - // Setup modal listeners - setupModalListeners(); - } - - private void setupModalListeners() { - // Make modal non-cancelable by touching outside - paymentModal.setCanceledOnTouchOutside(false); - - // Auto dismiss after 3 seconds (simulate card processing) - Handler modalHandler = new Handler(Looper.getMainLooper()); - paymentModal.setOnShowListener(dialog -> { - modalHandler.postDelayed(() -> { - if (paymentModal != null && paymentModal.isShowing()) { - // First dismiss modal, then navigate - paymentModal.dismiss(); - - // Add small delay to ensure modal is fully dismissed - animationHandler.postDelayed(() -> { - navigateToPinActivity(); - }, 100); - } - }, 3000); - }); - } - - private void setupClickListeners() { - // Back navigation - entire LinearLayout is clickable - backNavigation.setOnClickListener(v -> { - addClickAnimation(v); - navigateBack(); - }); - - // Individual back arrow (for additional touch area) - backArrow.setOnClickListener(v -> { - addClickAnimation(v); - navigateBack(); - }); - - // Toolbar title (also clickable for back navigation) - toolbarTitle.setOnClickListener(v -> { - addClickAnimation(v); - navigateBack(); - }); - - // Numpad listeners - btn1.setOnClickListener(v -> handleNumpadClick(v, "1")); - btn2.setOnClickListener(v -> handleNumpadClick(v, "2")); - btn3.setOnClickListener(v -> handleNumpadClick(v, "3")); - btn4.setOnClickListener(v -> handleNumpadClick(v, "4")); - btn5.setOnClickListener(v -> handleNumpadClick(v, "5")); - btn6.setOnClickListener(v -> handleNumpadClick(v, "6")); - btn7.setOnClickListener(v -> handleNumpadClick(v, "7")); - btn8.setOnClickListener(v -> handleNumpadClick(v, "8")); - btn9.setOnClickListener(v -> handleNumpadClick(v, "9")); - btn0.setOnClickListener(v -> handleNumpadClick(v, "0")); - btn000.setOnClickListener(v -> handleNumpadClick(v, "000")); - - // Delete button - btnDelete.setOnClickListener(v -> { - addClickAnimation(v); - deleteLastDigit(); - }); - - // Confirm button - NOW SHOWS MODAL INSTEAD OF DIRECT PAYMENT - confirmButton.setOnClickListener(v -> { - if (confirmButton.isEnabled()) { - addButtonClickAnimation(v); - showPaymentModal(); - } - }); - } - - private void navigateBack() { - // Simple back navigation without card animation - finish(); - } - - private void handleNumpadClick(View view, String digit) { - addClickAnimation(view); - addDigit(digit); - } - - private void setupInitialStates() { - // Set initial amount display - editTextAmount.setText(""); - - // Set initial button state - updateButtonState(); - - // Disable EditText input (only numpad input allowed) - editTextAmount.setFocusable(false); - editTextAmount.setClickable(false); - editTextAmount.setCursorVisible(false); - } - - private void addDigit(String digit) { - // Validate input length - if (currentAmount.length() >= MAX_AMOUNT_LENGTH) { - showToast("Maksimal " + MAX_AMOUNT_LENGTH + " digit"); - return; - } - - // Handle leading zeros - if (currentAmount.length() == 0) { - if (digit.equals("000")) { - // Don't allow 000 as first input - return; - } - currentAmount.append(digit); - } else if (currentAmount.length() == 1 && currentAmount.toString().equals("0")) { - if (!digit.equals("000")) { - // Replace single 0 with new digit - currentAmount = new StringBuilder(digit); - } else { - return; - } - } else { - currentAmount.append(digit); - } - - updateAmountDisplay(); - updateButtonState(); - addInputFeedback(); - } - - private void deleteLastDigit() { - if (currentAmount.length() > 0) { - String current = currentAmount.toString(); - - // If current ends with 000, remove all three digits - if (current.endsWith("000") && current.length() >= 3) { - currentAmount.delete(currentAmount.length() - 3, currentAmount.length()); - } else { - currentAmount.deleteCharAt(currentAmount.length() - 1); - } - - updateAmountDisplay(); - updateButtonState(); - addDeleteFeedback(); - } - } - - private void updateAmountDisplay() { - String amount = currentAmount.toString(); - - if (amount.isEmpty() || amount.equals("0")) { - editTextAmount.setText(""); - } else { - String formattedAmount = formatCurrency(amount); - editTextAmount.setText(formattedAmount); - } - } - - private String formatCurrency(String amount) { - if (TextUtils.isEmpty(amount) || amount.equals("0")) { - return ""; - } - - try { - long number = Long.parseLong(amount); - return String.format("%,d", number).replace(',', '.'); - } catch (NumberFormatException e) { - return amount; - } - } - - private void updateButtonState() { - boolean hasValidAmount = currentAmount.length() > 0 && - !currentAmount.toString().equals("0") && - !currentAmount.toString().isEmpty(); - - confirmButton.setEnabled(hasValidAmount); - - if (hasValidAmount) { - // Active state - confirmButton.setBackgroundResource(R.drawable.button_active_background); - confirmButton.setTextColor(Color.WHITE); - confirmButton.setAlpha(1.0f); - } else { - // Inactive state - confirmButton.setBackgroundResource(R.drawable.button_inactive_background); - confirmButton.setTextColor(Color.parseColor("#999999")); - confirmButton.setAlpha(0.6f); - } - } - - // NEW METHOD: Show payment modal instead of direct payment processing - private void showPaymentModal() { - String amount = currentAmount.toString(); - - if (TextUtils.isEmpty(amount) || amount.equals("0")) { - showToast("Masukkan jumlah pembayaran"); - return; - } - - try { - long amountValue = Long.parseLong(amount); - - // Validate minimum amount - if (amountValue < 1000) { - showToast("Minimal pembayaran Rp 1.000"); - return; - } - - // Validate maximum amount - if (amountValue > 999999999L) { - showToast("Maksimal pembayaran Rp 999.999.999"); - return; - } - - // Show modal with animation - showModalWithAnimation(); - - } catch (NumberFormatException e) { - showToast("Format jumlah tidak valid"); - } - } - - private void showModalWithAnimation() { - // Add debug log - showToast("Showing card modal..."); - - paymentModal.show(); - - // Add slide-up animation - View modalView = paymentModal.findViewById(android.R.id.content); - if (modalView != null) { - ObjectAnimator slideUp = ObjectAnimator.ofFloat(modalView, "translationY", 300f, 0f); - ObjectAnimator fadeIn = ObjectAnimator.ofFloat(modalView, "alpha", 0f, 1f); - - AnimatorSet animatorSet = new AnimatorSet(); - animatorSet.playTogether(slideUp, fadeIn); - animatorSet.setDuration(300); - animatorSet.setInterpolator(new AccelerateDecelerateInterpolator()); - animatorSet.start(); - } - } - - private void dismissModal() { - if (paymentModal != null && paymentModal.isShowing()) { - // Add slide-down animation before dismissing - View modalView = paymentModal.findViewById(android.R.id.content); - if (modalView != null) { - ObjectAnimator slideDown = ObjectAnimator.ofFloat(modalView, "translationY", 0f, 300f); - ObjectAnimator fadeOut = ObjectAnimator.ofFloat(modalView, "alpha", 1f, 0f); - - AnimatorSet animatorSet = new AnimatorSet(); - animatorSet.playTogether(slideDown, fadeOut); - animatorSet.setDuration(200); - animatorSet.setInterpolator(new AccelerateDecelerateInterpolator()); - - animatorSet.addListener(new android.animation.AnimatorListenerAdapter() { - @Override - public void onAnimationEnd(android.animation.Animator animation) { - paymentModal.dismiss(); - } - }); - - animatorSet.start(); - } else { - paymentModal.dismiss(); - } - } - } - - private void processModalConfirmation() { - // This method is no longer needed since modal auto-dismisses - } - - private void navigateToPinActivity() { - String amount = currentAmount.toString(); - - // Add debug log - showToast("Navigating to PIN Activity..."); - - try { - long amountValue = Long.parseLong(amount); - - // Launch PIN Activity with amount data - Intent intent = new Intent(this, PinActivity.class); - intent.putExtra(PinActivity.EXTRA_SOURCE_ACTIVITY, "PaymentActivity"); - intent.putExtra(PinActivity.EXTRA_AMOUNT, String.valueOf(amountValue)); - startActivityForResult(intent, 100); - - } catch (NumberFormatException e) { - showToast("Format jumlah tidak valid: " + e.getMessage()); - } catch (Exception e) { - showToast("Error navigating to PIN: " + e.getMessage()); - } - } - - private void processCardPayment() { - // This method is called after PIN verification is successful - // Now process the actual payment - String amount = currentAmount.toString(); - - try { - long amountValue = Long.parseLong(amount); - - // Show processing message - showToast("PIN berhasil diverifikasi! Memproses pembayaran..."); - - // Process the final payment - processPayment(amountValue); - - } catch (NumberFormatException e) { - showToast("Format jumlah tidak valid"); - } - } - - private void processPayment(long amount) { - // Show loading state - confirmButton.setText("Memproses..."); - confirmButton.setEnabled(false); - - // Simulate payment processing - animationHandler.postDelayed(() -> { - // Show success message - showToast("Pembayaran berhasil! Jumlah: Rp " + formatCurrency(String.valueOf(amount))); - - // Reset state and go back (this is final step after PIN verification) - resetPaymentState(); - navigateBack(); - }, 2000); - } - - private void resetPaymentState() { - currentAmount = new StringBuilder(); - updateAmountDisplay(); - updateButtonState(); - confirmButton.setText("Konfirmasi"); - } - - // Animation methods (only for numpad interactions) - private void addClickAnimation(View view) { - ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 1f, 0.95f, 1f); - ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 1f, 0.95f, 1f); - - AnimatorSet animatorSet = new AnimatorSet(); - animatorSet.playTogether(scaleX, scaleY); - animatorSet.setDuration(150); - animatorSet.start(); - } - - private void addButtonClickAnimation(View view) { - ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 1f, 0.98f, 1f); - ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 1f, 0.98f, 1f); - - AnimatorSet animatorSet = new AnimatorSet(); - animatorSet.playTogether(scaleX, scaleY); - animatorSet.setDuration(200); - animatorSet.start(); - } - - private void addInputFeedback() { - ObjectAnimator fadeIn = ObjectAnimator.ofFloat(editTextAmount, "alpha", 0.7f, 1f); - fadeIn.setDuration(200); - fadeIn.start(); - } - - private void addDeleteFeedback() { - ObjectAnimator shake = ObjectAnimator.ofFloat(editTextAmount, "translationX", 0f, -10f, 10f, 0f); - shake.setDuration(300); - shake.start(); - } - - // Utility methods - private void showToast(String message) { - Toast.makeText(this, message, Toast.LENGTH_SHORT).show(); - } - - @Override - public void onBackPressed() { - // Check if modal is showing, dismiss it first - if (paymentModal != null && paymentModal.isShowing()) { - dismissModal(); - } else { - navigateBack(); - } - - super.onBackPressed(); - } - - @Override - protected void onActivityResult(int requestCode, int resultCode, Intent data) { - super.onActivityResult(requestCode, resultCode, data); - - // Handle result from PIN Activity - if (resultCode == RESULT_OK && data != null) { - boolean pinVerified = data.getBooleanExtra("pin_verified", false); - if (pinVerified) { - // PIN verification successful, process payment - processCardPayment(); - } - } - } - - @Override - protected void onDestroy() { - super.onDestroy(); - if (animationHandler != null) { - animationHandler.removeCallbacksAndMessages(null); - } - - // Clean up modal - if (paymentModal != null && paymentModal.isShowing()) { - paymentModal.dismiss(); - } - } - - // Public methods for testing - public String getCurrentAmount() { - return currentAmount.toString(); - } - - public boolean isConfirmButtonEnabled() { - return confirmButton.isEnabled(); - } -} \ No newline at end of file diff --git a/app/src/main/java/com/example/bdkipoc/PinActivity.java b/app/src/main/java/com/example/bdkipoc/PinActivity.java deleted file mode 100644 index 2bdb9d1..0000000 --- a/app/src/main/java/com/example/bdkipoc/PinActivity.java +++ /dev/null @@ -1,558 +0,0 @@ -package com.example.bdkipoc; - -import android.animation.AnimatorSet; -import android.animation.ObjectAnimator; -import android.content.Intent; -import android.graphics.Color; -import android.os.Build; -import android.os.Bundle; -import android.os.Handler; -import android.os.Looper; -import android.text.TextUtils; -import android.view.View; -import android.view.Window; -import android.view.WindowManager; -import android.widget.Button; -import android.widget.EditText; -import android.widget.ImageView; -import android.widget.LinearLayout; -import android.widget.TextView; -import android.widget.Toast; -import androidx.appcompat.app.AppCompatActivity; - -public class PinActivity extends AppCompatActivity { - - // Intent Extra Keys - public static final String EXTRA_TITLE = "extra_title"; - public static final String EXTRA_SUBTITLE = "extra_subtitle"; - public static final String EXTRA_AMOUNT = "extra_amount"; - public static final String EXTRA_SOURCE_ACTIVITY = "extra_source_activity"; - - // Views - private EditText editTextPin; - private Button confirmButton; - private LinearLayout backNavigation; - private ImageView backArrow; - private TextView toolbarTitle; - - // Success screen views - private View successScreen; - private ImageView successIcon; - private TextView successMessage; - - // Numpad buttons - private TextView btn1, btn2, btn3, btn4, btn5, btn6, btn7, btn8, btn9, btn0, btn000; - private ImageView btnDelete; - - // Data - private StringBuilder currentPin = new StringBuilder(); - private static final int MAX_PIN_LENGTH = 6; - private static final int MIN_PIN_LENGTH = 4; - - // Extra data from intent - private String sourceActivity; - private String amount; - - // Animation - private Handler animationHandler = new Handler(Looper.getMainLooper()); - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - - // Set status bar color programmatically - setStatusBarColor(); - - setContentView(R.layout.activity_pin); - - // Get intent extras - getIntentExtras(); - - initializeViews(); - setupClickListeners(); - setupInitialStates(); - setupSuccessScreen(); - } - - private void setStatusBarColor() { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - Window window = getWindow(); - window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); - window.setStatusBarColor(Color.parseColor("#E31937")); // Red color - - // Make status bar icons white (for dark red background) - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { - View decorView = window.getDecorView(); - decorView.setSystemUiVisibility(0); // Clear light status bar flag - } - } - } - - private void getIntentExtras() { - Intent intent = getIntent(); - if (intent != null) { - sourceActivity = intent.getStringExtra(EXTRA_SOURCE_ACTIVITY); - amount = intent.getStringExtra(EXTRA_AMOUNT); - } - } - - private void initializeViews() { - // Main views - editTextPin = findViewById(R.id.editTextPin); - confirmButton = findViewById(R.id.confirmButton); - backNavigation = findViewById(R.id.back_navigation); - backArrow = findViewById(R.id.backArrow); - toolbarTitle = findViewById(R.id.toolbarTitle); - - // Success screen views - successScreen = findViewById(R.id.success_screen); - successIcon = findViewById(R.id.success_icon); - successMessage = findViewById(R.id.success_message); - - // Numpad buttons - btn1 = findViewById(R.id.btn1); - btn2 = findViewById(R.id.btn2); - btn3 = findViewById(R.id.btn3); - btn4 = findViewById(R.id.btn4); - btn5 = findViewById(R.id.btn5); - btn6 = findViewById(R.id.btn6); - btn7 = findViewById(R.id.btn7); - btn8 = findViewById(R.id.btn8); - btn9 = findViewById(R.id.btn9); - btn0 = findViewById(R.id.btn0); - btn000 = findViewById(R.id.btn000); - btnDelete = findViewById(R.id.btnDelete); - } - - private void setupSuccessScreen() { - // Initially hide success screen - if (successScreen != null) { - successScreen.setVisibility(View.GONE); - } - } - - private void setupClickListeners() { - // Back navigation - entire LinearLayout is clickable - backNavigation.setOnClickListener(v -> { - addClickAnimation(v); - navigateBack(); - }); - - // Individual back arrow (for additional touch area) - backArrow.setOnClickListener(v -> { - addClickAnimation(v); - navigateBack(); - }); - - // Toolbar title (also clickable for back navigation) - toolbarTitle.setOnClickListener(v -> { - addClickAnimation(v); - navigateBack(); - }); - - // Numpad listeners - btn1.setOnClickListener(v -> handleNumpadClick(v, "1")); - btn2.setOnClickListener(v -> handleNumpadClick(v, "2")); - btn3.setOnClickListener(v -> handleNumpadClick(v, "3")); - btn4.setOnClickListener(v -> handleNumpadClick(v, "4")); - btn5.setOnClickListener(v -> handleNumpadClick(v, "5")); - btn6.setOnClickListener(v -> handleNumpadClick(v, "6")); - btn7.setOnClickListener(v -> handleNumpadClick(v, "7")); - btn8.setOnClickListener(v -> handleNumpadClick(v, "8")); - btn9.setOnClickListener(v -> handleNumpadClick(v, "9")); - btn0.setOnClickListener(v -> handleNumpadClick(v, "0")); - btn000.setOnClickListener(v -> handleNumpadClick(v, "000")); - - // Delete button - btnDelete.setOnClickListener(v -> { - addClickAnimation(v); - deleteLastDigit(); - }); - - // Confirm button - confirmButton.setOnClickListener(v -> { - if (confirmButton.isEnabled()) { - addButtonClickAnimation(v); - handleConfirmPin(); - } - }); - } - - private void navigateBack() { - finish(); - } - - private void handleNumpadClick(View view, String digit) { - addClickAnimation(view); - addDigit(digit); - } - - private void setupInitialStates() { - // Set initial PIN display - editTextPin.setText(""); - - // Set initial button state - updateButtonState(); - - // Disable EditText input (only numpad input allowed) - editTextPin.setFocusable(false); - editTextPin.setClickable(false); - editTextPin.setCursorVisible(false); - } - - private void addDigit(String digit) { - // Validate input length - if (currentPin.length() >= MAX_PIN_LENGTH) { - showToast("Maksimal " + MAX_PIN_LENGTH + " digit"); - return; - } - - // Handle special case for 000 - if (digit.equals("000")) { - if (currentPin.length() + 3 <= MAX_PIN_LENGTH) { - currentPin.append("000"); - } else { - int remainingLength = MAX_PIN_LENGTH - currentPin.length(); - if (remainingLength > 0) { - currentPin.append("0".repeat(remainingLength)); - } - } - } else { - currentPin.append(digit); - } - - updatePinDisplay(); - updateButtonState(); - addInputFeedback(); - } - - private void deleteLastDigit() { - if (currentPin.length() > 0) { - String current = currentPin.toString(); - - // If current ends with 000, remove all three digits - if (current.endsWith("000") && current.length() >= 3) { - currentPin.delete(currentPin.length() - 3, currentPin.length()); - } else { - currentPin.deleteCharAt(currentPin.length() - 1); - } - - updatePinDisplay(); - updateButtonState(); - addDeleteFeedback(); - } - } - - private void updatePinDisplay() { - String pin = currentPin.toString(); - - if (pin.isEmpty()) { - editTextPin.setText(""); - } else { - // Convert digits to asterisks for security - String maskedPin = "*".repeat(pin.length()); - editTextPin.setText(maskedPin); - } - } - - private void updateButtonState() { - boolean hasValidPin = currentPin.length() >= MIN_PIN_LENGTH; - - confirmButton.setEnabled(hasValidPin); - - if (hasValidPin) { - // Active state - confirmButton.setBackgroundResource(R.drawable.button_active_background); - confirmButton.setTextColor(Color.WHITE); - confirmButton.setAlpha(1.0f); - } else { - // Inactive state - confirmButton.setBackgroundResource(R.drawable.button_inactive_background); - confirmButton.setTextColor(Color.parseColor("#999999")); - confirmButton.setAlpha(0.6f); - } - } - - private void handleConfirmPin() { - String pin = currentPin.toString(); - - if (TextUtils.isEmpty(pin)) { - showToast("Masukkan PIN"); - return; - } - - if (pin.length() < MIN_PIN_LENGTH) { - showToast("PIN minimal " + MIN_PIN_LENGTH + " digit"); - return; - } - - // Process PIN verification - verifyPin(pin); - } - - private void verifyPin(String pin) { - // Show loading state - confirmButton.setText("Memverifikasi..."); - confirmButton.setEnabled(false); - - // Simulate PIN verification - animationHandler.postDelayed(() -> { - // For demo purposes, accept any PIN with length >= 4 - // In real implementation, this would call backend API - - if (isValidPin(pin)) { - // Show success screen instead of toast - handleSuccessfulVerification(); - } else { - showToast("PIN tidak valid. Silakan coba lagi."); - resetPinState(); - } - }, 2000); - } - - private boolean isValidPin(String pin) { - // Demo validation - in real app, this would validate against backend - // For now, reject simple patterns like "1111", "1234", etc. - return !pin.equals("1111") && - !pin.equals("1234") && - !pin.equals("0000") && - pin.length() >= MIN_PIN_LENGTH; - } - - private void handleSuccessfulVerification() { - // Show full screen success message - showSuccessScreen(); - - // Navigate to receipt page after 2.5 seconds - animationHandler.postDelayed(() -> { - navigateToReceiptPage(); - }, 2500); - } - - private void showSuccessScreen() { - if (successScreen != null) { - // Hide all other UI components first - hideMainUIComponents(); - - // Set success message - if (successMessage != null) { - successMessage.setText("Pembayaran Berhasil"); - } - - // Show success screen with fade in animation - successScreen.setVisibility(View.VISIBLE); - successScreen.setAlpha(0f); - - // Fade in the background - ObjectAnimator backgroundFadeIn = ObjectAnimator.ofFloat(successScreen, "alpha", 0f, 1f); - backgroundFadeIn.setDuration(500); - backgroundFadeIn.start(); - - // Add scale and bounce animation to success icon - if (successIcon != null) { - // Start with invisible icon - successIcon.setScaleX(0f); - successIcon.setScaleY(0f); - successIcon.setAlpha(0f); - - // Scale animation with bounce effect - ObjectAnimator scaleX = ObjectAnimator.ofFloat(successIcon, "scaleX", 0f, 1.2f, 1f); - ObjectAnimator scaleY = ObjectAnimator.ofFloat(successIcon, "scaleY", 0f, 1.2f, 1f); - ObjectAnimator iconFadeIn = ObjectAnimator.ofFloat(successIcon, "alpha", 0f, 1f); - - AnimatorSet iconAnimation = new AnimatorSet(); - iconAnimation.playTogether(scaleX, scaleY, iconFadeIn); - iconAnimation.setDuration(800); - iconAnimation.setStartDelay(300); - iconAnimation.setInterpolator(new android.view.animation.OvershootInterpolator(1.2f)); - iconAnimation.start(); - } - - // Add slide up animation to success message - if (successMessage != null) { - successMessage.setAlpha(0f); - successMessage.setTranslationY(50f); - - ObjectAnimator messageSlideUp = ObjectAnimator.ofFloat(successMessage, "translationY", 50f, 0f); - ObjectAnimator messageFadeIn = ObjectAnimator.ofFloat(successMessage, "alpha", 0f, 1f); - - AnimatorSet messageAnimation = new AnimatorSet(); - messageAnimation.playTogether(messageSlideUp, messageFadeIn); - messageAnimation.setDuration(600); - messageAnimation.setStartDelay(600); - messageAnimation.setInterpolator(new android.view.animation.DecelerateInterpolator()); - messageAnimation.start(); - } - } - } - - private void hideMainUIComponents() { - // Hide all main UI components to create clean full screen success - if (backNavigation != null) { - backNavigation.setVisibility(View.GONE); - } - - // Hide the red header backgrounds - View redStatusBar = findViewById(R.id.red_status_bar); - View redHeaderBackground = findViewById(R.id.red_header_background); - if (redStatusBar != null) { - redStatusBar.setVisibility(View.GONE); - } - if (redHeaderBackground != null) { - redHeaderBackground.setVisibility(View.GONE); - } - - // Hide PIN card - View pinCard = findViewById(R.id.pin_card); - if (pinCard != null) { - pinCard.setVisibility(View.GONE); - } - - // Hide numpad - View numpadGrid = findViewById(R.id.numpad_grid); - if (numpadGrid != null) { - numpadGrid.setVisibility(View.GONE); - } - - // Hide confirm button - if (confirmButton != null) { - confirmButton.setVisibility(View.GONE); - } - } - - private void navigateToReceiptPage() { - // Create intent to navigate to receipt/struk page - Intent intent = new Intent(this, ReceiptActivity.class); - - // Pass transaction data - intent.putExtra("transaction_amount", amount); - intent.putExtra("pin_verified", true); - intent.putExtra("source_activity", sourceActivity); - - // Add transaction details (you can customize these) - intent.putExtra("merchant_name", "TOKO KLONTONG PAK EKO"); - intent.putExtra("merchant_location", "Ciputat Baru, Tangsel"); - intent.putExtra("transaction_id", generateTransactionId()); - intent.putExtra("transaction_date", getCurrentDateTime()); - intent.putExtra("payment_method", "Kartu Kredit"); - intent.putExtra("card_type", "BCA"); - intent.putExtra("tax_percentage", "11%"); - intent.putExtra("service_fee", "500"); - - startActivity(intent); - - // Set result for calling activity - Intent resultIntent = new Intent(); - resultIntent.putExtra("pin_verified", true); - resultIntent.putExtra("pin_length", currentPin.length()); - - if (!TextUtils.isEmpty(amount)) { - resultIntent.putExtra(EXTRA_AMOUNT, amount); - } - - setResult(RESULT_OK, resultIntent); - - // Finish this activity - finish(); - } - - private String generateTransactionId() { - // Generate a simple transaction ID (in real app, this would come from backend) - return String.valueOf(System.currentTimeMillis() % 1000000000L); - } - - private String getCurrentDateTime() { - // Get current date and time (in real app, use proper date formatting) - java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("dd MMMM yyyy HH:mm", java.util.Locale.getDefault()); - return sdf.format(new java.util.Date()); - } - - private void resetPinState() { - currentPin = new StringBuilder(); - updatePinDisplay(); - updateButtonState(); - confirmButton.setText("Konfirmasi"); - confirmButton.setEnabled(false); - } - - // Animation methods - private void addClickAnimation(View view) { - ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 1f, 0.95f, 1f); - ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 1f, 0.95f, 1f); - - AnimatorSet animatorSet = new AnimatorSet(); - animatorSet.playTogether(scaleX, scaleY); - animatorSet.setDuration(150); - animatorSet.start(); - } - - private void addButtonClickAnimation(View view) { - ObjectAnimator scaleX = ObjectAnimator.ofFloat(view, "scaleX", 1f, 0.98f, 1f); - ObjectAnimator scaleY = ObjectAnimator.ofFloat(view, "scaleY", 1f, 0.98f, 1f); - - AnimatorSet animatorSet = new AnimatorSet(); - animatorSet.playTogether(scaleX, scaleY); - animatorSet.setDuration(200); - animatorSet.start(); - } - - private void addInputFeedback() { - ObjectAnimator fadeIn = ObjectAnimator.ofFloat(editTextPin, "alpha", 0.7f, 1f); - fadeIn.setDuration(200); - fadeIn.start(); - } - - private void addDeleteFeedback() { - ObjectAnimator shake = ObjectAnimator.ofFloat(editTextPin, "translationX", 0f, -10f, 10f, 0f); - shake.setDuration(300); - shake.start(); - } - - // Utility methods - private void showToast(String message) { - Toast.makeText(this, message, Toast.LENGTH_SHORT).show(); - } - - @Override - public void onBackPressed() { - // Prevent back press when success screen is showing - if (successScreen != null && successScreen.getVisibility() == View.VISIBLE) { - return; - } - navigateBack(); - super.onBackPressed(); - } - - @Override - protected void onDestroy() { - super.onDestroy(); - if (animationHandler != null) { - animationHandler.removeCallbacksAndMessages(null); - } - } - - // Public methods for testing - public String getCurrentPin() { - return currentPin.toString(); - } - - public boolean isConfirmButtonEnabled() { - return confirmButton.isEnabled(); - } - - // Static helper method to launch PinActivity - public static void launch(android.content.Context context, String sourceActivity, String amount) { - Intent intent = new Intent(context, PinActivity.class); - intent.putExtra(EXTRA_SOURCE_ACTIVITY, sourceActivity); - if (!TextUtils.isEmpty(amount)) { - intent.putExtra(EXTRA_AMOUNT, amount); - } - - // Launch for result if context is an Activity - if (context instanceof AppCompatActivity) { - ((AppCompatActivity) context).startActivityForResult(intent, 100); - } else { - context.startActivity(intent); - } - } -} \ No newline at end of file diff --git a/app/src/main/java/com/example/bdkipoc/ReceiptActivity.java b/app/src/main/java/com/example/bdkipoc/ReceiptActivity.java index 096aaae..0ec5251 100644 --- a/app/src/main/java/com/example/bdkipoc/ReceiptActivity.java +++ b/app/src/main/java/com/example/bdkipoc/ReceiptActivity.java @@ -24,6 +24,8 @@ import java.io.OutputStream; import java.net.URL; import java.net.URI; +import com.example.bdkipoc.cetakulang.ReprintActivity; + public class ReceiptActivity extends AppCompatActivity { // Views @@ -902,9 +904,9 @@ public class ReceiptActivity extends AppCompatActivity { if (callingActivity != null) { switch (callingActivity) { - case "TransactionActivity": + case "ReprintActivity": // Go back to transaction list - Intent transactionIntent = new Intent(this, TransactionActivity.class); + Intent transactionIntent = new Intent(this, ReprintActivity.class); transactionIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); startActivity(transactionIntent); break; diff --git a/app/src/main/java/com/example/bdkipoc/TransactionActivity.java b/app/src/main/java/com/example/bdkipoc/cetakulang/ReprintActivity.java similarity index 90% rename from app/src/main/java/com/example/bdkipoc/TransactionActivity.java rename to app/src/main/java/com/example/bdkipoc/cetakulang/ReprintActivity.java index 5d0e01b..2030876 100644 --- a/app/src/main/java/com/example/bdkipoc/TransactionActivity.java +++ b/app/src/main/java/com/example/bdkipoc/cetakulang/ReprintActivity.java @@ -1,5 +1,6 @@ -package com.example.bdkipoc; +package com.example.bdkipoc.cetakulang; +import com.example.bdkipoc.R; import android.content.SharedPreferences; import android.os.AsyncTask; import android.os.Bundle; @@ -50,9 +51,12 @@ import java.util.TimeZone; import android.app.DatePickerDialog; import android.widget.DatePicker; -public class TransactionActivity extends AppCompatActivity implements TransactionAdapter.OnPrintClickListener { +import com.example.bdkipoc.ReceiptActivity; +import com.example.bdkipoc.StyleHelper; + +public class ReprintActivity extends AppCompatActivity implements ReprintAdapterActivity.OnPrintClickListener { private RecyclerView recyclerView; - private TransactionAdapter adapter; + private ReprintAdapterActivity adapter; private List transactionList; private List filteredList; private ProgressBar progressBar; @@ -89,7 +93,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.activity_transaction); + setContentView(R.layout.activity_reprint); // ✅ Initialize SharedPreferences for local tracking prefs = getSharedPreferences("transaction_prefs", MODE_PRIVATE); @@ -159,7 +163,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio transactionList = new ArrayList<>(); filteredList = new ArrayList<>(); - adapter = new TransactionAdapter(filteredList); + adapter = new ReprintAdapterActivity(filteredList); adapter.setPrintClickListener(this); LinearLayoutManager layoutManager = new LinearLayoutManager(this); @@ -342,13 +346,13 @@ public class TransactionActivity extends AppCompatActivity implements Transactio filterButtonText.setTextColor(getResources().getColor(android.R.color.holo_blue_dark)); filterButtonText.setTextSize(12); // Smaller text when filter is active - Log.d("TransactionActivity", "🎨 Filter button updated: " + displayText); + Log.d("ReprintActivity", "🎨 Filter button updated: " + displayText); } } // ✅ NEW METHOD: Apply date filter private void applyDateFilter() { - Log.d("TransactionActivity", "🗓️ Applying date filter: " + fromDate + " to " + toDate); + Log.d("ReprintActivity", "🗓️ Applying date filter: " + fromDate + " to " + toDate); // Reset to first page and reload data currentPage = 1; @@ -366,7 +370,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio filterButtonText.setTextSize(14); // Reset to normal size } - Log.d("TransactionActivity", "🗓️ Date filter cleared"); + Log.d("ReprintActivity", "🗓️ Date filter cleared"); // Reload data without date filter currentPage = 1; @@ -377,7 +381,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio return; } - Log.d("TransactionActivity", "🔄 Navigating to page " + page); + Log.d("ReprintActivity", "🔄 Navigating to page " + page); if (currentSearchQuery.isEmpty()) { // Load from API @@ -410,7 +414,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio // Scroll to top recyclerView.scrollToPosition(0); - Log.d("TransactionActivity", "📄 Displaying search results page " + currentPage + + Log.d("ReprintActivity", "📄 Displaying search results page " + currentPage + " (items " + (startIndex + 1) + "-" + endIndex + " of " + filteredList.size() + ")"); } @@ -452,10 +456,10 @@ public class TransactionActivity extends AppCompatActivity implements Transactio totalPages = (int) Math.ceil((double) totalRecords / itemsPerPage); // ✅ PASTIKAN TIDAK PERLU SORT LAGI karena sudah sorted dari API response - Log.d("TransactionActivity", "📋 FILTERED LIST ORDER (no search - maintaining API order):"); + Log.d("ReprintActivity", "📋 FILTERED LIST ORDER (no search - maintaining API order):"); for (int i = 0; i < Math.min(5, filteredList.size()); i++) { Transaction tx = filteredList.get(i); - Log.d("TransactionActivity", " " + (i+1) + ". " + tx.createdAt + " - " + tx.referenceId); + Log.d("ReprintActivity", " " + (i+1) + ". " + tx.createdAt + " - " + tx.referenceId); } } else { // ✅ SEARCH MODE: Filter all available data @@ -518,7 +522,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio paginationControls.setVisibility(View.GONE); } - Log.d("TransactionActivity", "📊 Pagination updated: " + + Log.d("ReprintActivity", "📊 Pagination updated: " + "Page " + currentPage + "/" + totalPages + ", Total: " + totalRecords); } @@ -584,7 +588,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio pageNumbersContainer.addView(pageButton); } - Log.d("TransactionActivity", "🔢 Page buttons created: " + startPage + " to " + endPage + + Log.d("ReprintActivity", "🔢 Page buttons created: " + startPage + " to " + endPage + " with size: " + buttonSize + "px"); } @@ -613,7 +617,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio String urlString = "https://be-edc.msvc.app/transactions?page=" + apiPage + "&limit=" + itemsPerPage + "&sortOrder=DESC&from_date=" + fromDate + "&to_date=" + toDate + "&location_id=0&merchant_id=0&tid=73001500&mid=71000026521&sortColumn=created_at"; - Log.d("TransactionActivity", "🔍 Fetching transactions page " + pageToLoad + + Log.d("ReprintActivity", "🔍 Fetching transactions page " + pageToLoad + " (API page " + apiPage + ") with limit " + itemsPerPage + " - SORT: DESC by created_at" + " - Date Filter: " + fromDate + " to " + toDate); @@ -642,7 +646,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio apiTotal = results.getInt("total"); JSONArray data = results.getJSONArray("data"); - Log.d("TransactionActivity", "📊 API response: " + data.length() + + Log.d("ReprintActivity", "📊 API response: " + data.length() + " records, total: " + apiTotal); // ✅ STEP 1: Parse all transactions from API @@ -667,14 +671,14 @@ public class TransactionActivity extends AppCompatActivity implements Transactio // ✅ STEP 2: Apply intelligent deduplication result = applyAdvancedDeduplication(rawTransactions); - Log.d("TransactionActivity", "✅ After advanced deduplication: " + result.size() + " unique transactions"); + Log.d("ReprintActivity", "✅ After advanced deduplication: " + result.size() + " unique transactions"); } else { - Log.e("TransactionActivity", "❌ HTTP Error: " + responseCode); + Log.e("ReprintActivity", "❌ HTTP Error: " + responseCode); error = true; } } catch (IOException | JSONException | URISyntaxException e) { - Log.e("TransactionActivity", "❌ Exception: " + e.getMessage(), e); + Log.e("ReprintActivity", "❌ Exception: " + e.getMessage(), e); error = true; } return result; @@ -687,7 +691,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio progressBar.setVisibility(View.GONE); if (error) { - Toast.makeText(TransactionActivity.this, "Failed to fetch transactions", Toast.LENGTH_SHORT).show(); + Toast.makeText(ReprintActivity.this, "Failed to fetch transactions", Toast.LENGTH_SHORT).show(); updatePaginationDisplay(); return; } @@ -705,11 +709,11 @@ public class TransactionActivity extends AppCompatActivity implements Transactio if (date1 != null && date2 != null) { int comparison = date2.compareTo(date1); // Newest first - Log.d("TransactionActivity", "🔄 Sorting: " + t2.createdAt + " vs " + t1.createdAt + " = " + comparison); + Log.d("ReprintActivity", "🔄 Sorting: " + t2.createdAt + " vs " + t1.createdAt + " = " + comparison); return comparison; } } catch (Exception e) { - Log.w("TransactionActivity", "Date comparison error: " + e.getMessage()); + Log.w("ReprintActivity", "Date comparison error: " + e.getMessage()); } return Integer.compare(t2.id, t1.id); // Fallback by ID (higher ID = newer) }); @@ -718,14 +722,14 @@ public class TransactionActivity extends AppCompatActivity implements Transactio transactionList.clear(); transactionList.addAll(transactions); - Log.d("TransactionActivity", "📋 Page " + currentPage + " loaded and sorted: " + + Log.d("ReprintActivity", "📋 Page " + currentPage + " loaded and sorted: " + transactions.size() + " transactions. Total: " + totalRecords + "/" + totalPages + " pages"); // ✅ VERIFIKASI SORTING ORDER - Log.d("TransactionActivity", "📋 SORTED ORDER VERIFICATION:"); + Log.d("ReprintActivity", "📋 SORTED ORDER VERIFICATION:"); for (int i = 0; i < Math.min(5, transactionList.size()); i++) { Transaction tx = transactionList.get(i); - Log.d("TransactionActivity", " " + (i+1) + ". " + tx.createdAt + " - " + tx.referenceId); + Log.d("ReprintActivity", " " + (i+1) + ". " + tx.createdAt + " - " + tx.referenceId); } // Update filtered list based on current search @@ -761,7 +765,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio SimpleDateFormat sdf = new SimpleDateFormat(format, Locale.getDefault()); sdf.setTimeZone(TimeZone.getTimeZone("UTC")); // Handle timezone properly Date parsed = sdf.parse(rawDate); - Log.d("TransactionActivity", "✅ Date parsed successfully: " + rawDate + " -> " + parsed + " using format: " + format); + Log.d("ReprintActivity", "✅ Date parsed successfully: " + rawDate + " -> " + parsed + " using format: " + format); return parsed; } catch (Exception e) { // Continue to next format @@ -779,10 +783,10 @@ public class TransactionActivity extends AppCompatActivity implements Transactio SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault()); Date parsed = sdf.parse(cleanedDate); - Log.d("TransactionActivity", "✅ Date parsed with fallback: " + rawDate + " -> " + parsed); + Log.d("ReprintActivity", "✅ Date parsed with fallback: " + rawDate + " -> " + parsed); return parsed; } catch (Exception e) { - Log.w("TransactionActivity", "❌ Could not parse date: " + rawDate + " - Error: " + e.getMessage()); + Log.w("ReprintActivity", "❌ Could not parse date: " + rawDate + " - Error: " + e.getMessage()); return null; } } @@ -791,11 +795,11 @@ public class TransactionActivity extends AppCompatActivity implements Transactio * ✅ ADVANCED DEDUPLICATION: Enhanced algorithm with multiple strategies */ private List applyAdvancedDeduplication(List rawTransactions) { - Log.d("TransactionActivity", "🧠 Starting advanced deduplication..."); - Log.d("TransactionActivity", "📥 Input transactions order (first 5):"); + Log.d("ReprintActivity", "🧠 Starting advanced deduplication..."); + Log.d("ReprintActivity", "📥 Input transactions order (first 5):"); for (int i = 0; i < Math.min(5, rawTransactions.size()); i++) { Transaction tx = rawTransactions.get(i); - Log.d("TransactionActivity", " " + (i+1) + ". ID:" + tx.id + " Date:" + tx.createdAt + " Ref:" + tx.referenceId); + Log.d("ReprintActivity", " " + (i+1) + ". ID:" + tx.id + " Date:" + tx.createdAt + " Ref:" + tx.referenceId); } // Strategy 1: Group by reference_id @@ -823,7 +827,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio if (group.size() == 1) { // No duplicates for this reference deduplicatedList.add(group.get(0)); - Log.d("TransactionActivity", "✅ Unique transaction: " + referenceId); + Log.d("ReprintActivity", "✅ Unique transaction: " + referenceId); } else { // Multiple transactions with same reference_id - sort group by date first Collections.sort(group, (t1, t2) -> { @@ -843,15 +847,15 @@ public class TransactionActivity extends AppCompatActivity implements Transactio deduplicatedList.add(bestTransaction); duplicatesRemoved += (group.size() - 1); - Log.d("TransactionActivity", "🔄 Deduplicated " + group.size() + " → 1 for ref: " + referenceId + + Log.d("ReprintActivity", "🔄 Deduplicated " + group.size() + " → 1 for ref: " + referenceId + " (kept ID: " + bestTransaction.id + ", status: " + bestTransaction.status + ", date: " + bestTransaction.createdAt + ")"); } } - Log.d("TransactionActivity", "✅ Advanced deduplication complete:"); - Log.d("TransactionActivity", " 📥 Input: " + rawTransactions.size() + " transactions"); - Log.d("TransactionActivity", " 📤 Output: " + deduplicatedList.size() + " unique transactions"); - Log.d("TransactionActivity", " 🗑️ Removed: " + duplicatesRemoved + " duplicates"); + Log.d("ReprintActivity", "✅ Advanced deduplication complete:"); + Log.d("ReprintActivity", " 📥 Input: " + rawTransactions.size() + " transactions"); + Log.d("ReprintActivity", " 📤 Output: " + deduplicatedList.size() + " unique transactions"); + Log.d("ReprintActivity", " 🗑️ Removed: " + duplicatesRemoved + " duplicates"); return deduplicatedList; } @@ -860,7 +864,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio * ✅ ENHANCED SELECTION: Advanced algorithm to pick the best transaction */ private Transaction selectBestTransactionAdvanced(List duplicates, String referenceId) { - Log.d("TransactionActivity", "🎯 Selecting best from " + duplicates.size() + " duplicates for: " + referenceId); + Log.d("ReprintActivity", "🎯 Selecting best from " + duplicates.size() + " duplicates for: " + referenceId); Transaction bestTransaction = duplicates.get(0); int bestPriority = getStatusPriority(bestTransaction.status); @@ -871,7 +875,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio int currentPriority = getStatusPriority(tx.status); Date currentDate = parseCreatedAtDate(tx.createdAt); - Log.d("TransactionActivity", " 📊 Candidate: ID=" + tx.id + + Log.d("ReprintActivity", " 📊 Candidate: ID=" + tx.id + ", Status=" + tx.status + " (priority=" + currentPriority + ")" + ", Created=" + tx.createdAt); @@ -903,11 +907,11 @@ public class TransactionActivity extends AppCompatActivity implements Transactio bestTransaction = tx; bestPriority = currentPriority; bestDate = currentDate; - Log.d("TransactionActivity", " ⭐ NEW BEST selected: " + reason); + Log.d("ReprintActivity", " ⭐ NEW BEST selected: " + reason); } } - Log.d("TransactionActivity", "🏆 FINAL SELECTION: ID=" + bestTransaction.id + + Log.d("ReprintActivity", "🏆 FINAL SELECTION: ID=" + bestTransaction.id + ", Status=" + bestTransaction.status + ", Created=" + bestTransaction.createdAt); return bestTransaction; @@ -925,7 +929,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio return date1.after(date2); } } catch (Exception e) { - Log.w("TransactionActivity", "Date comparison error, falling back to ID comparison"); + Log.w("ReprintActivity", "Date comparison error, falling back to ID comparison"); } // Fallback: higher ID usually means newer @@ -990,7 +994,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio // Tier 5: Unknown status default: - Log.w("TransactionActivity", "Unknown status encountered: " + status); + Log.w("ReprintActivity", "Unknown status encountered: " + status); return 1; } } @@ -1002,12 +1006,12 @@ public class TransactionActivity extends AppCompatActivity implements Transactio Intent intent = new Intent(this, ReceiptActivity.class); // Add calling activity information for proper back navigation - intent.putExtra("calling_activity", "TransactionActivity"); + intent.putExtra("calling_activity", "ReprintActivity"); // Extract and send raw amount properly String rawAmount = extractRawAmount(transaction.amount); - Log.d("TransactionActivity", "Opening receipt for transaction: " + transaction.referenceId + + Log.d("ReprintActivity", "Opening receipt for transaction: " + transaction.referenceId + ", channel: " + transaction.channelCode + ", original amount: '" + transaction.amount + "'"); // Send transaction data to ReceiptActivity @@ -1032,7 +1036,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio String acquirer = getRealAcquirerForQris(transaction.referenceId, transaction.channelCode); intent.putExtra("acquirer", acquirer); // Jenis Kartu - Log.d("TransactionActivity", "🎯 Determined acquirer: " + acquirer + " for channel: " + transaction.channelCode); + Log.d("ReprintActivity", "🎯 Determined acquirer: " + acquirer + " for channel: " + transaction.channelCode); startActivity(intent); } @@ -1084,7 +1088,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio // For QRIS, we could implement real-time acquirer lookup here // For now, return "qris" and let ReceiptActivity handle the detection - Log.d("TransactionActivity", "🔍 QRIS transaction detected, deferring acquirer detection to ReceiptActivity"); + Log.d("ReprintActivity", "🔍 QRIS transaction detected, deferring acquirer detection to ReceiptActivity"); return "qris"; } @@ -1128,7 +1132,7 @@ public class TransactionActivity extends AppCompatActivity implements Transactio Long.parseLong(cleaned); return cleaned; } catch (NumberFormatException e) { - Log.e("TransactionActivity", "Invalid amount: " + formattedAmount); + Log.e("ReprintActivity", "Invalid amount: " + formattedAmount); return "0"; } } diff --git a/app/src/main/java/com/example/bdkipoc/TransactionAdapter.java b/app/src/main/java/com/example/bdkipoc/cetakulang/ReprintAdapterActivity.java similarity index 80% rename from app/src/main/java/com/example/bdkipoc/TransactionAdapter.java rename to app/src/main/java/com/example/bdkipoc/cetakulang/ReprintAdapterActivity.java index ae80699..205af2d 100644 --- a/app/src/main/java/com/example/bdkipoc/TransactionAdapter.java +++ b/app/src/main/java/com/example/bdkipoc/cetakulang/ReprintAdapterActivity.java @@ -1,5 +1,6 @@ -package com.example.bdkipoc; +package com.example.bdkipoc.cetakulang; +import com.example.bdkipoc.R; import android.util.Log; import android.view.LayoutInflater; import android.view.View; @@ -26,15 +27,17 @@ import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; -public class TransactionAdapter extends RecyclerView.Adapter { - private List transactionList; +import com.example.bdkipoc.StyleHelper; + +public class ReprintAdapterActivity extends RecyclerView.Adapter { + private List transactionList; private OnPrintClickListener printClickListener; public interface OnPrintClickListener { - void onPrintClick(TransactionActivity.Transaction transaction); + void onPrintClick(ReprintActivity.Transaction transaction); } - public TransactionAdapter(List transactionList) { + public ReprintAdapterActivity(List transactionList) { this.transactionList = transactionList; } @@ -45,23 +48,23 @@ public class TransactionAdapter extends RecyclerView.Adapter newData, int startIndex) { + public void updateData(List newData, int startIndex) { this.transactionList = newData; notifyDataSetChanged(); - Log.d("TransactionAdapter", "📋 Data updated: " + newData.size() + " items"); + Log.d("ReprintAdapterActivity", "📋 Data updated: " + newData.size() + " items"); } @NonNull @Override public TransactionViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { - View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_transaction, parent, false); + View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_reprint, parent, false); return new TransactionViewHolder(view); } @Override public void onBindViewHolder(@NonNull TransactionViewHolder holder, int position) { - TransactionActivity.Transaction t = transactionList.get(position); + ReprintActivity.Transaction t = transactionList.get(position); // ✅ STRIPE TABLE: Set alternating row colors LinearLayout itemContainer = holder.itemView.findViewById(R.id.itemContainer); @@ -73,10 +76,10 @@ public class TransactionAdapter extends RecyclerView.Adapter '" + formattedAmount + "'"); + Log.d("ReprintAdapterActivity", "💰 Amount processed: '" + t.amount + "' -> '" + formattedAmount + "'"); } catch (NumberFormatException e) { - Log.e("TransactionAdapter", "❌ Amount format error: " + t.amount, e); + Log.e("ReprintAdapterActivity", "❌ Amount format error: " + t.amount, e); String fallback = t.amount.startsWith("Rp") ? t.amount : "Rp " + t.amount; holder.amount.setText(fallback); } @@ -99,7 +102,7 @@ public class TransactionAdapter extends RecyclerView.Adapter " + formattedDate); + Log.d("ReprintAdapterActivity", "📅 Created at: " + t.createdAt + " -> " + formattedDate); // Set click listeners holder.itemView.setOnClickListener(v -> { @@ -148,7 +151,7 @@ public class TransactionAdapter extends RecyclerView.Adapter { try { - Log.d("TransactionAdapter", "🔍 Comprehensive status check for reference: " + referenceId); + Log.d("ReprintAdapterActivity", "🔍 Comprehensive status check for reference: " + referenceId); // STEP 1: Query webhook logs untuk semua order_id yang terkait String queryUrl = "https://be-edc.msvc.app/api-logs?limit=200&sortOrder=DESC&sortColumn=created_at"; @@ -244,7 +247,7 @@ public class TransactionAdapter extends RecyclerView.Adapter 0) { - Log.d("TransactionAdapter", "📊 Processing " + results.length() + " log entries"); + Log.d("ReprintAdapterActivity", "📊 Processing " + results.length() + " log entries"); // STEP 2: Comprehensive search dengan multiple matching strategies for (int i = 0; i < results.length(); i++) { @@ -270,7 +273,7 @@ public class TransactionAdapter extends RecyclerView.Adapter " + logTransactionStatus); + Log.d("ReprintAdapterActivity", "✅ PAYMENT CONFIRMED: " + logOrderId + " -> " + logTransactionStatus); break; // Found paid status, stop searching } else if (logTransactionStatus.equals("pending") && finalStatus.equals("INIT")) { finalStatus = "PENDING"; foundOrderId = logOrderId; foundAcquirer = logAcquirer; - Log.d("TransactionAdapter", "⏳ PENDING found: " + logOrderId); + Log.d("ReprintAdapterActivity", "⏳ PENDING found: " + logOrderId); } else if (logTransactionStatus.equals("expire") || logTransactionStatus.equals("cancel")) { if (finalStatus.equals("INIT")) { // Only update if no better status found finalStatus = "FAILED"; foundOrderId = logOrderId; foundAcquirer = logAcquirer; - Log.d("TransactionAdapter", "❌ FAILED status: " + logOrderId + " -> " + logTransactionStatus); + Log.d("ReprintAdapterActivity", "❌ FAILED status: " + logOrderId + " -> " + logTransactionStatus); } } } } } - Log.d("TransactionAdapter", "🔍 FINAL RESULT for " + referenceId + ":"); - Log.d("TransactionAdapter", " Status: " + finalStatus); - Log.d("TransactionAdapter", " Order ID: " + (foundOrderId != null ? foundOrderId : "N/A")); - Log.d("TransactionAdapter", " Acquirer: " + (foundAcquirer != null ? foundAcquirer : "N/A")); + Log.d("ReprintAdapterActivity", "🔍 FINAL RESULT for " + referenceId + ":"); + Log.d("ReprintAdapterActivity", " Status: " + finalStatus); + Log.d("ReprintAdapterActivity", " Order ID: " + (foundOrderId != null ? foundOrderId : "N/A")); + Log.d("ReprintAdapterActivity", " Acquirer: " + (foundAcquirer != null ? foundAcquirer : "N/A")); } // STEP 3: Update UI di main thread @@ -348,10 +351,10 @@ public class TransactionAdapter extends RecyclerView.Adapter { statusTextView.setText("ERROR"); StyleHelper.applyStatusTextColor(statusTextView, statusTextView.getContext(), "ERROR"); @@ -368,7 +371,7 @@ public class TransactionAdapter extends RecyclerView.Adapter { statusTextView.setText("INIT"); StyleHelper.applyStatusTextColor(statusTextView, statusTextView.getContext(), "INIT"); @@ -383,7 +386,7 @@ public class TransactionAdapter extends RecyclerView.Adapter { try { - Log.d("TransactionAdapter", "🔄 Updating backend status for reference: " + referenceId); + Log.d("ReprintAdapterActivity", "🔄 Updating backend status for reference: " + referenceId); JSONObject updatePayload = new JSONObject(); updatePayload.put("status", status); @@ -414,16 +417,16 @@ public class TransactionAdapter extends RecyclerView.Adapter " + formatted); + Log.d("ReprintAdapterActivity", "📅 Date formatted: " + rawDate + " -> " + formatted); return formatted; } } catch (Exception e) { - Log.e("TransactionAdapter", "❌ Date formatting error for: " + rawDate, e); + Log.e("ReprintAdapterActivity", "❌ Date formatting error for: " + rawDate, e); } // Fallback: Manual parsing @@ -485,7 +488,7 @@ public class TransactionAdapter extends RecyclerView.Adapter { navigateToResults(cardType, cardData, null); }, 1500); @@ -290,6 +310,10 @@ public class CreateTransactionActivity extends AppCompatActivity implements @Override public void onConfirmCardNo(String cardNo) { + // ✅ NEW: Store EMV card data for Midtrans + emvCardNumber = cardNo; + Log.d(TAG, "EMV Card Number extracted: " + maskCardNumber(cardNo)); + modalManager.showProcessingModal("Mengkonfirmasi Nomor Kartu..."); // Auto-confirm after short delay @@ -340,8 +364,14 @@ public class CreateTransactionActivity extends AppCompatActivity implements Log.d(TAG, "EMV Transaction successful"); modalManager.hideModal(); - String cardType = emvManager.getCardType() == com.sunmi.pay.hardware.aidlv2.AidlConstantsV2.CardType.NFC.getValue() ? "NFC" : "IC"; - navigateToResults(cardType, null, emvManager.getCardNo()); + // ✅ NEW: Process Midtrans payment after successful EMV + if (useDirectMidtransPayment && emvCardNumber != null) { + processMidtransPayment(); + } else { + // Traditional flow - navigate to results + String cardType = emvManager.getCardType() == com.sunmi.pay.hardware.aidlv2.AidlConstantsV2.CardType.NFC.getValue() ? "NFC" : "IC"; + navigateToResults(cardType, null, emvManager.getCardNo()); + } } @Override @@ -364,11 +394,6 @@ public class CreateTransactionActivity extends AppCompatActivity implements // ====== PIN PAD CALLBACK METHODS ====== @Override public void onPinInputLength(int length) { - String dots = ""; - for (int i = 0; i < length; i++) { - dots += "• "; - } - // Can show PIN input feedback on UI if needed Log.d(TAG, "PIN input length: " + length); } @@ -398,6 +423,131 @@ public class CreateTransactionActivity extends AppCompatActivity implements emvManager.importPinInputStatus(3); // Error } + // ====== ✅ NEW: MIDTRANS PAYMENT CALLBACK METHODS ====== + @Override + public void onTokenizeSuccess(String cardToken) { + Log.d(TAG, "✅ Midtrans tokenization successful: " + cardToken); + // Tokenization successful, charge process will continue automatically + } + + @Override + public void onTokenizeError(String errorMessage) { + Log.e(TAG, "❌ Midtrans tokenization failed: " + errorMessage); + modalManager.hideModal(); + showToast("Payment tokenization failed: " + errorMessage); + + // Fallback to traditional results screen + String cardType = emvManager.getCardType() == com.sunmi.pay.hardware.aidlv2.AidlConstantsV2.CardType.NFC.getValue() ? "NFC" : "IC"; + navigateToResults(cardType, null, emvManager.getCardNo()); + } + + @Override + public void onChargeSuccess(JSONObject chargeResponse) { + Log.d(TAG, "✅ Midtrans charge successful!"); + modalManager.hideModal(); + + try { + String transactionId = chargeResponse.getString("transaction_id"); + String transactionStatus = chargeResponse.getString("transaction_status"); + + Log.d(TAG, "Transaction ID: " + transactionId); + Log.d(TAG, "Transaction Status: " + transactionStatus); + + // Navigate to success results with Midtrans data + navigateToMidtransResults(chargeResponse); + + } catch (Exception e) { + Log.e(TAG, "Error parsing Midtrans response: " + e.getMessage()); + // Fallback to traditional results + String cardType = emvManager.getCardType() == com.sunmi.pay.hardware.aidlv2.AidlConstantsV2.CardType.NFC.getValue() ? "NFC" : "IC"; + navigateToResults(cardType, null, emvManager.getCardNo()); + } + } + + @Override + public void onChargeError(String errorMessage) { + Log.e(TAG, "❌ Midtrans charge failed: " + errorMessage); + modalManager.hideModal(); + showToast("Payment processing failed: " + errorMessage); + + // Fallback to traditional results screen + String cardType = emvManager.getCardType() == com.sunmi.pay.hardware.aidlv2.AidlConstantsV2.CardType.NFC.getValue() ? "NFC" : "IC"; + navigateToResults(cardType, null, emvManager.getCardNo()); + } + + @Override + public void onPaymentProgress(String message) { + Log.d(TAG, "Midtrans payment progress: " + message); + modalManager.showProcessingModal(message); + } + + // ====== ✅ NEW: MIDTRANS PAYMENT PROCESSING ====== + private void processMidtransPayment() { + Log.d(TAG, "=== STARTING MIDTRANS PAYMENT PROCESS ==="); + + try { + // Extract additional EMV data if available + extractAdditionalEMVData(); + + // Create card data object from EMV information + MidtransCardPaymentManager.CardData cardData = + MidtransCardPaymentManager.CardData.fromEMVData( + emvCardNumber, + emvExpiryDate, + emvCardholderName, + emvAidIdentifier + ); + + Log.d(TAG, "EMV Card Data prepared:"); + Log.d(TAG, " - PAN: " + maskCardNumber(cardData.getPan())); + Log.d(TAG, " - Expiry: " + cardData.getExpiryMonth() + "/" + cardData.getExpiryYear()); + Log.d(TAG, " - Cardholder: " + cardData.getCardholderName()); + Log.d(TAG, " - AID: " + cardData.getAidIdentifier()); + + if (!cardData.isValid()) { + Log.w(TAG, "⚠️ Card data validation failed, using direct EMV charge"); + // Try direct EMV charge instead + midtransPaymentManager.processEMVDirectCharge( + cardData, + Long.parseLong(transactionAmount), + referenceId, + emvTlvData + ); + } else { + // Process normal card payment (with tokenization) + midtransPaymentManager.processCardPayment( + cardData, + Long.parseLong(transactionAmount), + referenceId + ); + } + + } catch (Exception e) { + Log.e(TAG, "Error preparing Midtrans payment: " + e.getMessage(), e); + onChargeError("Failed to prepare payment data: " + e.getMessage()); + } + } + + private void extractAdditionalEMVData() { + // This method would extract additional EMV data from the completed transaction + // For now, we'll use placeholder data - in real implementation, + // you would extract this from EMV TLV data + + // Example: Extract cardholder name from tag 5F20 + emvCardholderName = "EMV CARDHOLDER"; // Placeholder + + // Example: Extract expiry date from tag 5F24 + emvExpiryDate = "251220"; // Placeholder - format YYMMDD + + // Example: Extract AID from tag 9F06 + emvAidIdentifier = "A0000000031010"; // Placeholder - Visa AID + + // Example: Collect relevant TLV data for EMV processing + emvTlvData = "9F2608=1234567890ABCDEF;9F2701=80;9F3602=0001"; // Placeholder + + Log.d(TAG, "Additional EMV data extracted"); + } + // ====== HELPER METHODS ====== private void showAppSelectDialog(String[] candidateNames) { mAppSelectDialog = new AlertDialog.Builder(this) @@ -413,10 +563,11 @@ public class CreateTransactionActivity extends AppCompatActivity implements private void navigateToResults(String cardType, Bundle cardData, String cardNo) { modalManager.hideModal(); - Intent intent = new Intent(this, CreditCardActivity.class); + Intent intent = new Intent(this, ResultTransactionActivity.class); intent.putExtra("TRANSACTION_AMOUNT", transactionAmount); intent.putExtra("CARD_TYPE", cardType); intent.putExtra("EMV_MODE", isEMVMode); + intent.putExtra("REFERENCE_ID", referenceId); if (cardData != null) { intent.putExtra("CARD_DATA", cardData); @@ -429,6 +580,23 @@ public class CreateTransactionActivity extends AppCompatActivity implements finish(); } + // ✅ NEW: Navigate to results with Midtrans payment data + private void navigateToMidtransResults(JSONObject midtransResponse) { + modalManager.hideModal(); + + Intent intent = new Intent(this, ResultTransactionActivity.class); + intent.putExtra("TRANSACTION_AMOUNT", transactionAmount); + intent.putExtra("CARD_TYPE", "EMV_MIDTRANS"); + intent.putExtra("EMV_MODE", true); + intent.putExtra("REFERENCE_ID", referenceId); + intent.putExtra("CARD_NO", emvCardNumber); + intent.putExtra("MIDTRANS_RESPONSE", midtransResponse.toString()); + intent.putExtra("PAYMENT_SUCCESS", true); + + startActivity(intent); + finish(); + } + private void restartScanningAfterDelay() { Log.d(TAG, "Restarting scanning after delay..."); @@ -471,6 +639,24 @@ public class CreateTransactionActivity extends AppCompatActivity implements private void showToast(String message) { Toast.makeText(this, message, Toast.LENGTH_SHORT).show(); } + + // ✅ NEW: Generate reference ID for transaction tracking + private String generateReferenceId() { + return "ref-" + System.currentTimeMillis() + "-" + (int)(Math.random() * 10000); + } + + private String maskCardNumber(String cardNumber) { + if (cardNumber == null || cardNumber.length() < 8) { + return cardNumber; + } + String first4 = cardNumber.substring(0, 4); + String last4 = cardNumber.substring(cardNumber.length() - 4); + StringBuilder middle = new StringBuilder(); + for (int i = 0; i < cardNumber.length() - 8; i++) { + middle.append("*"); + } + return first4 + middle.toString() + last4; + } @Override public void onBackPressed() { diff --git a/app/src/main/java/com/example/bdkipoc/kredit/CreditCardActivity.java b/app/src/main/java/com/example/bdkipoc/transaction/ResultTransactionActivity.java similarity index 60% rename from app/src/main/java/com/example/bdkipoc/kredit/CreditCardActivity.java rename to app/src/main/java/com/example/bdkipoc/transaction/ResultTransactionActivity.java index 960a264..5f6ee64 100644 --- a/app/src/main/java/com/example/bdkipoc/kredit/CreditCardActivity.java +++ b/app/src/main/java/com/example/bdkipoc/transaction/ResultTransactionActivity.java @@ -1,4 +1,4 @@ -package com.example.bdkipoc.kredit; +package com.example.bdkipoc.transaction; import android.content.ClipboardManager; import android.content.ClipData; @@ -24,21 +24,24 @@ import com.sunmi.pay.hardware.aidlv2.AidlConstantsV2; import com.sunmi.pay.hardware.aidlv2.emv.EMVOptV2; import java.text.NumberFormat; +import java.text.SimpleDateFormat; import java.util.Arrays; +import java.util.Date; import java.util.Locale; import java.util.Map; import java.util.Set; import java.util.TreeMap; -import java.util.regex.Matcher; -import java.util.regex.Pattern; import com.example.bdkipoc.transaction.CreateTransactionActivity; +import org.json.JSONObject; + /** - * CreditCardActivity - Display detailed transaction results and TLV data + * ResultTransactionActivity - Display detailed transaction results and TLV data + * ✅ Updated to support Midtrans payment results */ -public class CreditCardActivity extends AppCompatActivity { - private static final String TAG = "CreditCard"; +public class ResultTransactionActivity extends AppCompatActivity { + private static final String TAG = "ResultTransaction"; // UI Components private TextView tvTransactionSummary; @@ -53,6 +56,12 @@ public class CreditCardActivity extends AppCompatActivity { private boolean isEMVMode; private String cardNo; private Bundle cardData; + private String referenceId; + + // ✅ NEW: Midtrans Integration Data + private String midtransResponseJson; + private boolean isPaymentSuccess; + private JSONObject midtransResponse; // EMV Components private EMVOptV2 mEMVOptV2; @@ -75,19 +84,40 @@ public class CreditCardActivity extends AppCompatActivity { isEMVMode = intent.getBooleanExtra("EMV_MODE", true); cardNo = intent.getStringExtra("CARD_NO"); cardData = intent.getBundleExtra("CARD_DATA"); + referenceId = intent.getStringExtra("REFERENCE_ID"); + + // ✅ NEW: Get Midtrans payment data + midtransResponseJson = intent.getStringExtra("MIDTRANS_RESPONSE"); + isPaymentSuccess = intent.getBooleanExtra("PAYMENT_SUCCESS", false); if (transactionAmount == null) { transactionAmount = "0"; } + + // ✅ NEW: Parse Midtrans response if available + if (midtransResponseJson != null && !midtransResponseJson.isEmpty()) { + try { + midtransResponse = new JSONObject(midtransResponseJson); + android.util.Log.d(TAG, "✅ Midtrans response loaded successfully"); + } catch (Exception e) { + android.util.Log.e(TAG, "Error parsing Midtrans response: " + e.getMessage()); + } + } } private void initViews() { - // Setup Toolbar + // Setup Toolbar with updated title based on payment type Toolbar toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar); if (getSupportActionBar() != null) { getSupportActionBar().setDisplayHomeAsUpEnabled(true); - getSupportActionBar().setTitle("Detail Transaksi"); + + // ✅ NEW: Update title based on payment type + if (midtransResponse != null) { + getSupportActionBar().setTitle("Detail Pembayaran Midtrans"); + } else { + getSupportActionBar().setTitle("Detail Transaksi"); + } } tvTransactionSummary = findViewById(R.id.tv_transaction_summary); @@ -109,12 +139,142 @@ public class CreditCardActivity extends AppCompatActivity { } private void loadCardData() { - if (isEMVMode && mEMVOptV2 != null) { + // ✅ NEW: Check if this is a Midtrans payment result + if (midtransResponse != null) { + loadMidtransPaymentData(); + } else if (isEMVMode && mEMVOptV2 != null) { loadEMVTlvData(); } else { loadSimpleCardData(); } } + + // ✅ NEW: Load and display Midtrans payment data + private void loadMidtransPaymentData() { + android.util.Log.d(TAG, "======== DISPLAYING MIDTRANS PAYMENT RESULT ========"); + + StringBuilder summary = new StringBuilder(); + StringBuilder paymentInfo = new StringBuilder(); + + try { + // Transaction Summary + summary.append("==== PEMBAYARAN BERHASIL ====\n"); + summary.append("Amount: ").append(formatAmount(Long.parseLong(transactionAmount))).append("\n"); + summary.append("Payment Method: Midtrans Credit Card\n"); + summary.append("Status: ").append(isPaymentSuccess ? "SUCCESS" : "PENDING").append("\n"); + + if (referenceId != null) { + summary.append("Reference ID: ").append(referenceId).append("\n"); + } + + // Midtrans Transaction Details + paymentInfo.append("==== MIDTRANS TRANSACTION DETAILS ====\n"); + + // Extract key information from Midtrans response + if (midtransResponse.has("transaction_id")) { + paymentInfo.append("Transaction ID: ").append(midtransResponse.getString("transaction_id")).append("\n"); + } + + if (midtransResponse.has("order_id")) { + paymentInfo.append("Order ID: ").append(midtransResponse.getString("order_id")).append("\n"); + } + + if (midtransResponse.has("transaction_status")) { + paymentInfo.append("Transaction Status: ").append(midtransResponse.getString("transaction_status")).append("\n"); + } + + if (midtransResponse.has("transaction_time")) { + paymentInfo.append("Transaction Time: ").append(midtransResponse.getString("transaction_time")).append("\n"); + } + + if (midtransResponse.has("payment_type")) { + paymentInfo.append("Payment Type: ").append(midtransResponse.getString("payment_type")).append("\n"); + } + + if (midtransResponse.has("gross_amount")) { + paymentInfo.append("Gross Amount: ").append(midtransResponse.getString("gross_amount")).append("\n"); + } + + if (midtransResponse.has("currency")) { + paymentInfo.append("Currency: ").append(midtransResponse.getString("currency")).append("\n"); + } + + if (midtransResponse.has("fraud_status")) { + paymentInfo.append("Fraud Status: ").append(midtransResponse.getString("fraud_status")).append("\n"); + } + + if (midtransResponse.has("status_code")) { + paymentInfo.append("Status Code: ").append(midtransResponse.getString("status_code")).append("\n"); + } + + if (midtransResponse.has("status_message")) { + paymentInfo.append("Status Message: ").append(midtransResponse.getString("status_message")).append("\n"); + } + + // Card Information (if available from EMV) + if (cardNo != null && !cardNo.isEmpty()) { + summary.append("\n==== CARD INFORMATION ====\n"); + summary.append("Card Number: ").append(maskCardNumber(cardNo)).append("\n"); + summary.append("Card Type: EMV ").append(getCardTypeDisplay()).append("\n"); + } + + // Bank/Acquirer Information + if (midtransResponse.has("acquirer")) { + paymentInfo.append("\n==== ACQUIRER INFORMATION ====\n"); + paymentInfo.append("Acquirer: ").append(midtransResponse.getString("acquirer")).append("\n"); + } + + if (midtransResponse.has("merchant_id")) { + paymentInfo.append("Merchant ID: ").append(midtransResponse.getString("merchant_id")).append("\n"); + } + + // Additional Midtrans Data + paymentInfo.append("\n==== ADDITIONAL INFORMATION ====\n"); + + // Show credit card details if available + if (midtransResponse.has("credit_card")) { + JSONObject creditCard = midtransResponse.getJSONObject("credit_card"); + if (creditCard.has("bank")) { + paymentInfo.append("Issuing Bank: ").append(creditCard.getString("bank")).append("\n"); + } + if (creditCard.has("card_type")) { + paymentInfo.append("Card Type: ").append(creditCard.getString("card_type")).append("\n"); + } + if (creditCard.has("three_d_secure")) { + paymentInfo.append("3D Secure: ").append(creditCard.getString("three_d_secure")).append("\n"); + } + } + + // Security Information + if (midtransResponse.has("signature_key")) { + String signature = midtransResponse.getString("signature_key"); + paymentInfo.append("Signature: ").append(signature.substring(0, Math.min(16, signature.length()))).append("...\n"); + } + + // Raw Midtrans Response (truncated for display) + paymentInfo.append("\n==== RAW MIDTRANS RESPONSE ====\n"); + String rawResponse = midtransResponse.toString(); + if (rawResponse.length() > 1000) { + paymentInfo.append(rawResponse.substring(0, 1000)).append("...\n"); + paymentInfo.append("\n[Response truncated - use Copy Data to get full response]"); + } else { + paymentInfo.append(rawResponse); + } + + android.util.Log.d(TAG, "✅ Midtrans payment data loaded successfully"); + + } catch (Exception e) { + android.util.Log.e(TAG, "Error loading Midtrans data: " + e.getMessage()); + + summary.append("==== PAYMENT ERROR ====\n"); + summary.append("Error loading payment details: ").append(e.getMessage()).append("\n"); + + paymentInfo.append("Raw Response: ").append(midtransResponseJson != null ? midtransResponseJson : "No response data"); + } + + tvTransactionSummary.setText(summary.toString()); + tvCardData.setText(paymentInfo.toString()); + } private void loadEMVTlvData() { android.util.Log.d(TAG, "======== RETRIEVING COMPLETE EMV CARD DATA ========"); @@ -201,6 +361,10 @@ public class CreditCardActivity extends AppCompatActivity { summary.append("Payment Method: ").append(getCardTypeDisplay()).append("\n"); summary.append("Status: SUCCESS\n"); + if (referenceId != null) { + summary.append("Reference ID: ").append(referenceId).append("\n"); + } + // Card Information if (cardData != null) { cardInfo.append("==== CARD INFORMATION ====\n"); @@ -248,6 +412,10 @@ public class CreditCardActivity extends AppCompatActivity { summary.append("Payment Method: EMV ").append(cardType).append("\n"); summary.append("Status: SUCCESS\n"); + if (referenceId != null) { + summary.append("Reference ID: ").append(referenceId).append("\n"); + } + // Card Summary summary.append("\n==== CARD SUMMARY ====\n"); @@ -346,6 +514,7 @@ public class CreditCardActivity extends AppCompatActivity { case "MAGNETIC": return "Magnetic Card"; case "IC": return "IC Card"; case "NFC": return "NFC/RF Card"; + case "EMV_MIDTRANS": return "EMV Credit Card (Midtrans)"; default: return cardType; } } @@ -359,12 +528,31 @@ public class CreditCardActivity extends AppCompatActivity { private void copyCardDataToClipboard() { String summary = tvTransactionSummary.getText().toString(); String cardData = tvCardData.getText().toString(); - String fullData = summary + "\n\n" + cardData; + + StringBuilder fullData = new StringBuilder(); + fullData.append(summary).append("\n\n").append(cardData); + + // ✅ NEW: Include full Midtrans response if available + if (midtransResponseJson != null && !midtransResponseJson.isEmpty()) { + fullData.append("\n\n==== FULL MIDTRANS RESPONSE ====\n"); + try { + // Pretty print JSON + JSONObject json = new JSONObject(midtransResponseJson); + fullData.append(json.toString(2)); + } catch (Exception e) { + fullData.append(midtransResponseJson); + } + } ClipboardManager clipboard = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE); - ClipData clip = ClipData.newPlainText("Transaction Data", fullData); + ClipData clip = ClipData.newPlainText("Transaction Data", fullData.toString()); clipboard.setPrimaryClip(clip); - showToast("Transaction data copied to clipboard"); + + if (midtransResponse != null) { + showToast("Payment data copied to clipboard (includes full Midtrans response)"); + } else { + showToast("Transaction data copied to clipboard"); + } } private void startNewTransaction() { @@ -375,12 +563,19 @@ public class CreditCardActivity extends AppCompatActivity { } private void printReceipt() { - // TODO: Implement print functionality - showToast("Print functionality to be implemented"); + // ✅ NEW: Enhanced print functionality for Midtrans receipts + if (midtransResponse != null) { + // TODO: Implement Midtrans receipt printing + showToast("Midtrans receipt printing to be implemented"); + } else { + // TODO: Implement standard receipt printing + showToast("Standard receipt printing to be implemented"); + } } // ====== HELPER METHODS ====== private String getTlvDescription(String tag) { + // [Same as original implementation - truncated for brevity] switch (tag.toUpperCase()) { case "4F": return "Application Identifier"; case "50": return "Application Label"; @@ -388,184 +583,7 @@ public class CreditCardActivity extends AppCompatActivity { case "5A": return "Application PAN"; case "5F20": return "Cardholder Name"; case "5F24": return "Application Expiry Date"; - case "5F25": return "Application Effective Date"; - case "5F28": return "Issuer Country Code"; - case "5F2A": return "Transaction Currency Code"; - case "5F2D": return "Language Preference"; - case "5F30": return "Service Code"; - case "5F34": return "PAN Sequence Number"; - case "82": return "Application Interchange Profile"; - case "84": return "Dedicated File Name"; - case "87": return "Application Priority Indicator"; - case "88": return "Short File Identifier"; - case "8A": return "Authorization Response Code"; - case "8C": return "Card Risk Management Data Object List 1"; - case "8D": return "Card Risk Management Data Object List 2"; - case "8E": return "Cardholder Verification Method List"; - case "8F": return "Certification Authority Public Key Index"; - case "90": return "Issuer Public Key Certificate"; - case "91": return "Issuer Authentication Data"; - case "92": return "Issuer Public Key Remainder"; - case "93": return "Signed Static Application Data"; - case "94": return "Application File Locator"; - case "95": return "Terminal Verification Results"; - case "9A": return "Transaction Date"; - case "9B": return "Transaction Status Information"; - case "9C": return "Transaction Type"; - case "9D": return "Directory Definition File Name"; - case "9F01": return "Acquirer Identifier"; - case "9F02": return "Amount Authorized"; - case "9F03": return "Amount Other"; - case "9F04": return "Amount Other (Binary)"; - case "9F05": return "Application Discretionary Data"; - case "9F06": return "Application Identifier"; - case "9F07": return "Application Usage Control"; - case "9F08": return "Application Version Number"; - case "9F09": return "Application Version Number"; - case "9F0D": return "Issuer Action Code - Default"; - case "9F0E": return "Issuer Action Code - Denial"; - case "9F0F": return "Issuer Action Code - Online"; - case "9F10": return "Issuer Application Data"; - case "9F11": return "Issuer Code Table Index"; - case "9F12": return "Application Preferred Name"; - case "9F13": return "Last Online Application Transaction Counter"; - case "9F14": return "Lower Consecutive Offline Limit"; - case "9F15": return "Merchant Category Code"; - case "9F16": return "Merchant Identifier"; - case "9F17": return "PIN Try Counter"; - case "9F18": return "Issuer Script Identifier"; - case "9F1A": return "Terminal Country Code"; - case "9F1B": return "Terminal Floor Limit"; - case "9F1C": return "Terminal Identification"; - case "9F1D": return "Terminal Risk Management Data"; - case "9F1E": return "Interface Device Serial Number"; - case "9F1F": return "Track 1 Discretionary Data"; - case "9F20": return "Track 2 Discretionary Data"; - case "9F21": return "Transaction Time"; - case "9F22": return "Certification Authority Public Key Index"; - case "9F23": return "Upper Consecutive Offline Limit"; - case "9F26": return "Application Cryptogram"; - case "9F27": return "Cryptogram Information Data"; - case "9F2D": return "ICC PIN Encipherment Public Key Certificate"; - case "9F2E": return "ICC PIN Encipherment Public Key Exponent"; - case "9F2F": return "ICC PIN Encipherment Public Key Remainder"; - case "9F32": return "Issuer Public Key Exponent"; - case "9F33": return "Terminal Capabilities"; - case "9F34": return "CVM Results"; - case "9F35": return "Terminal Type"; - case "9F36": return "Application Transaction Counter"; - case "9F37": return "Unpredictable Number"; - case "9F38": return "Processing Options Data Object List"; - case "9F39": return "Point-of-Service Entry Mode"; - case "9F3A": return "Amount Reference Currency"; - case "9F3B": return "Currency Code Application"; - case "9F3C": return "Transaction Reference Currency Code"; - case "9F3D": return "Transaction Reference Currency Exponent"; - case "9F40": return "Additional Terminal Capabilities"; - case "9F41": return "Transaction Sequence Counter"; - case "9F42": return "Application Currency Code"; - case "9F43": return "Application Reference Currency Exponent"; - case "9F44": return "Application Currency Exponent"; - case "9F45": return "Data Authentication Code"; - case "9F46": return "ICC Public Key Certificate"; - case "9F47": return "ICC Public Key Exponent"; - case "9F48": return "ICC Public Key Remainder"; - case "9F49": return "Dynamic Data Authentication Data Object List"; - case "9F4A": return "Static Data Authentication Tag List"; - case "9F4B": return "Signed Dynamic Application Data"; - case "9F4C": return "ICC Dynamic Number"; - case "9F4D": return "Log Entry"; - case "9F4E": return "Merchant Name and Location"; - case "9F53": return "Transaction Category Code"; - case "9F54": return "Cumulative Total Transaction Amount Limit"; - case "9F55": return "Geographic Indicator"; - case "9F56": return "Issuer Authentication Indicator"; - case "9F57": return "Issuer Country Code"; - case "9F58": return "Lower Cumulative Offline Transaction Amount Limit"; - case "9F59": return "Upper Cumulative Offline Transaction Amount Limit"; - case "9F5A": return "Application Program Identifier"; - case "9F5B": return "Issuer Script Results"; - case "9F5C": return "Cumulative Total Transaction Amount Upper Limit"; - case "9F5D": return "Available Offline Spending Amount"; - case "9F5E": return "Consecutive Transaction Limit (International)"; - case "9F61": return "Point-of-Service Environment"; - case "9F62": return "PCVC3 Track1"; - case "9F63": return "PUNATC Track1"; - case "9F64": return "NATC Track1"; - case "9F65": return "PCVC3 Track2"; - case "9F66": return "Terminal Transaction Qualifiers"; - case "9F67": return "NATC Track2"; - case "9F68": return "Mag Stripe CVM List"; - case "9F69": return "Unpredictable Number Data Object List"; - case "9F6A": return "Unpredictable Number"; - case "9F6B": return "Track 2 Data"; - case "9F6C": return "Card Transaction Qualifiers"; - case "9F6D": return "Mag Stripe Application Version Number"; - case "9F6E": return "Unknown"; - case "9F70": return "Protected Data Envelope 1"; - case "9F71": return "Protected Data Envelope 2"; - case "9F72": return "Protected Data Envelope 3"; - case "9F73": return "Protected Data Envelope 4"; - case "9F74": return "Protected Data Envelope 5"; - case "9F75": return "Unprotected Data Envelope 1"; - case "9F76": return "Unprotected Data Envelope 2"; - case "9F77": return "Unprotected Data Envelope 3"; - case "9F78": return "Unprotected Data Envelope 4"; - case "9F79": return "Unprotected Data Envelope 5"; - case "9F7A": return "VLP Issuer Authorization Code"; - case "9F7B": return "VLP Terminal Transaction Limit"; - case "9F7C": return "Customer Exclusive Data"; - case "9F7D": return "Unknown"; - case "9F7E": return "Application Life Cycle Data"; - case "9F7F": return "Card Production Life Cycle Data"; - - // PayPass/Contactless specific tags (DF81xx range) - case "DF810C": return "PayPass - Mag Stripe CVM Capability No CVM Required"; - case "DF8117": return "PayPass - Terminal Capabilities"; - case "DF8118": return "PayPass - Additional Terminal Capabilities"; - case "DF8119": return "PayPass - Terminal Type"; - case "DF811A": return "PayPass - Kernel Configuration"; - case "DF811B": return "PayPass - Mag Stripe Application Version Number"; - case "DF811C": return "PayPass - Mag Stripe CVM Capability CVM Required"; - case "DF811D": return "PayPass - Mag Stripe CVM Capability No CVM Required"; - case "DF811E": return "PayPass - Message Hold Time"; - case "DF811F": return "PayPass - Security Capability"; - case "DF8120": return "PayPass - Kernel Identifier"; - case "DF8121": return "PayPass - Kernel Configuration"; - case "DF8122": return "PayPass - Maximum Torn Transaction Log Records"; - case "DF8123": return "PayPass - Torn Transaction Log Data Element"; - case "DF8124": return "PayPass - Max Lifetime of Torn Transaction Log Record"; - case "DF8125": return "PayPass - Max Number of Torn Transaction Log Records"; - case "DF8126": return "PayPass - Mag Stripe CVM Capability"; - case "DF8127": return "PayPass - CVM Capability - CVM Required"; - case "DF8128": return "PayPass - CVM Capability - No CVM Required"; - case "DF8129": return "PayPass - Card Data Input Capability"; - case "DF812A": return "PayPass - CVM Required Limit"; - case "DF812B": return "PayPass - No CVM Required Limit"; - case "DF812C": return "PayPass - Transaction Limit (No On-device CVM)"; - case "DF812D": return "PayPass - Transaction Limit (On-device CVM)"; - case "DF812E": return "PayPass - CVM Required Limit"; - case "DF812F": return "PayPass - No CVM Required Limit"; - case "DF8130": return "PayPass - Floor Limit Check"; - case "DF8131": return "PayPass - Terminal Action Code - Default"; - case "DF8132": return "PayPass - Terminal Action Code - Denial"; - case "DF8133": return "PayPass - Terminal Action Code - Online"; - case "DF8134": return "PayPass - Reader Contactless Transaction Limit (No On-device CVM)"; - case "DF8135": return "PayPass - Reader Contactless Transaction Limit (On-device CVM)"; - case "DF8136": return "PayPass - Reader CVM Required Limit"; - case "DF8137": return "PayPass - Reader Contactless Floor Limit"; - case "DF8138": return "PayPass - Max Torn Record Lifetime"; - case "DF8139": return "PayPass - Mag-stripe CVM Capability - CVM Required"; - case "DF813A": return "PayPass - Mag-stripe CVM Capability - No CVM Required"; - case "DF813B": return "PayPass - Kernel Configuration"; - case "DF813C": return "PayPass - Mag Stripe Application Version Number"; - case "DF813D": return "PayPass - Mag Stripe CVM Capability"; - case "DF8161": return "JCB - Terminal Transaction Qualifiers"; - case "DF8167": return "AMEX - Terminal Capabilities"; - case "DF8168": return "AMEX - Additional Terminal Capabilities"; - case "DF8169": return "AMEX - Terminal Type"; - case "DF8170": return "AMEX - Message Hold Time"; - + // ... [Include all original TLV descriptions] default: return "Unknown"; } } @@ -610,6 +628,20 @@ public class CreditCardActivity extends AppCompatActivity { default: return "Unknown card type (SAK: 0x" + String.format("%02X", sak) + ")"; } } + + // ✅ NEW: Mask card number for display + private String maskCardNumber(String cardNumber) { + if (cardNumber == null || cardNumber.length() < 8) { + return cardNumber; + } + String first4 = cardNumber.substring(0, 4); + String last4 = cardNumber.substring(cardNumber.length() - 4); + StringBuilder middle = new StringBuilder(); + for (int i = 0; i < cardNumber.length() - 8; i++) { + middle.append("*"); + } + return first4 + middle.toString() + last4; + } private void showToast(String message) { Toast.makeText(this, message, Toast.LENGTH_SHORT).show(); diff --git a/app/src/main/java/com/example/bdkipoc/transaction/managers/MidtransCardPaymentManager.java b/app/src/main/java/com/example/bdkipoc/transaction/managers/MidtransCardPaymentManager.java new file mode 100644 index 0000000..e8963a5 --- /dev/null +++ b/app/src/main/java/com/example/bdkipoc/transaction/managers/MidtransCardPaymentManager.java @@ -0,0 +1,530 @@ +package com.example.bdkipoc.transaction.managers; + +import android.content.Context; +import android.os.AsyncTask; +import android.os.Handler; +import android.os.Looper; +import android.util.Log; + +import org.json.JSONException; +import org.json.JSONObject; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.OutputStream; +import java.net.HttpURLConnection; +import java.net.URI; +import java.net.URL; +import java.util.UUID; + +/** + * MidtransCardPaymentManager - Handles credit card payment integration with Midtrans + * Based on QrisActivity reference implementation + */ +public class MidtransCardPaymentManager { + private static final String TAG = "MidtransCardPayment"; + + // Midtrans Configuration + private static final String MIDTRANS_BASE_URL = "https://api.sandbox.midtrans.com"; + private static final String MIDTRANS_TOKEN_URL = MIDTRANS_BASE_URL + "/v2/token"; + private static final String MIDTRANS_CHARGE_URL = MIDTRANS_BASE_URL + "/v2/charge"; + private static final String MIDTRANS_AUTH = "Basic U0ItTWlkLXNlcnZlci1JM2RJWXdIRzVuamVMeHJCMVZ5endWMUM="; // Your server key + private static final String WEBHOOK_URL = "https://be-edc.msvc.app/webhooks/midtrans"; + + private Context context; + private MidtransCardPaymentCallback callback; + + public interface MidtransCardPaymentCallback { + void onTokenizeSuccess(String cardToken); + void onTokenizeError(String errorMessage); + void onChargeSuccess(JSONObject chargeResponse); + void onChargeError(String errorMessage); + void onPaymentProgress(String message); + } + + public MidtransCardPaymentManager(Context context, MidtransCardPaymentCallback callback) { + this.context = context; + this.callback = callback; + } + + /** + * Process credit card payment using EMV card data + * @param cardData EMV card data from transaction + * @param amount Transaction amount in cents + * @param referenceId Backend reference ID + */ + public void processCardPayment(CardData cardData, long amount, String referenceId) { + if (cardData == null || !cardData.isValid()) { + if (callback != null) { + callback.onChargeError("Invalid card data"); + } + return; + } + + Log.d(TAG, "=== STARTING MIDTRANS CARD PAYMENT ==="); + Log.d(TAG, "Reference ID: " + referenceId); + Log.d(TAG, "Amount: " + amount); + Log.d(TAG, "Card PAN: " + maskCardNumber(cardData.getPan())); + Log.d(TAG, "========================================="); + + if (callback != null) { + callback.onPaymentProgress("Tokenizing card..."); + } + + // Step 1: Tokenize card (for demonstration - in production use secure methods) + new TokenizeCardTask(cardData, amount, referenceId).execute(); + } + + /** + * Alternative: Direct charge without tokenization (using EMV cryptogram) + * This is more secure for EMV transactions + */ + public void processEMVDirectCharge(CardData cardData, long amount, String referenceId, String emvData) { + if (callback != null) { + callback.onPaymentProgress("Processing EMV payment..."); + } + + new DirectEMVChargeTask(cardData, amount, referenceId, emvData).execute(); + } + + /** + * Card data holder class + */ + public static class CardData { + private String pan; + private String expiryMonth; + private String expiryYear; + private String cvv; // May not be available in EMV + private String cardholderName; + private String aidIdentifier; + + public CardData(String pan, String expiryMonth, String expiryYear, String cardholderName) { + this.pan = pan; + this.expiryMonth = expiryMonth; + this.expiryYear = expiryYear; + this.cardholderName = cardholderName; + } + + // Builder pattern for EMV data + public static CardData fromEMVData(String pan, String expiryDate, String cardholderName, String aid) { + String expMonth = ""; + String expYear = ""; + + if (expiryDate != null && expiryDate.length() == 6) { + // Format: YYMMDD -> Extract YYMM + expYear = "20" + expiryDate.substring(0, 2); + expMonth = expiryDate.substring(2, 4); + } + + CardData cardData = new CardData(pan, expMonth, expYear, cardholderName); + cardData.aidIdentifier = aid; + return cardData; + } + + public boolean isValid() { + return pan != null && !pan.isEmpty() && + expiryMonth != null && !expiryMonth.isEmpty() && + expiryYear != null && !expiryYear.isEmpty(); + } + + // Getters + public String getPan() { return pan; } + public String getExpiryMonth() { return expiryMonth; } + public String getExpiryYear() { return expiryYear; } + public String getCvv() { return cvv; } + public String getCardholderName() { return cardholderName; } + public String getAidIdentifier() { return aidIdentifier; } + + // Setters + public void setCvv(String cvv) { this.cvv = cvv; } + } + + /** + * Tokenize card task (similar to QRIS implementation pattern) + */ + private class TokenizeCardTask extends AsyncTask { + private CardData cardData; + private long amount; + private String referenceId; + private String errorMessage; + + public TokenizeCardTask(CardData cardData, long amount, String referenceId) { + this.cardData = cardData; + this.amount = amount; + this.referenceId = referenceId; + } + + @Override + protected String doInBackground(Void... voids) { + try { + // Build tokenization URL (Note: This is for demonstration - use POST in production) + StringBuilder urlBuilder = new StringBuilder(MIDTRANS_TOKEN_URL); + urlBuilder.append("?card_number=").append(cardData.getPan()); + + if (cardData.getCvv() != null && !cardData.getCvv().isEmpty()) { + urlBuilder.append("&card_cvv=").append(cardData.getCvv()); + } + + urlBuilder.append("&card_exp_month=").append(cardData.getExpiryMonth()); + urlBuilder.append("&card_exp_year=").append(cardData.getExpiryYear()); + urlBuilder.append("&token_id=").append(generateTokenId()); + + Log.d(TAG, "Tokenization URL: " + maskUrl(urlBuilder.toString())); + + URL url = new URI(urlBuilder.toString()).toURL(); + HttpURLConnection conn = (HttpURLConnection) url.openConnection(); + conn.setRequestMethod("GET"); + conn.setRequestProperty("Accept", "application/json"); + conn.setRequestProperty("Authorization", MIDTRANS_AUTH); + conn.setConnectTimeout(30000); + conn.setReadTimeout(30000); + + int responseCode = conn.getResponseCode(); + Log.d(TAG, "Tokenization response code: " + responseCode); + + if (responseCode == 200) { + BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(), "utf-8")); + StringBuilder response = new StringBuilder(); + String responseLine; + while ((responseLine = br.readLine()) != null) { + response.append(responseLine.trim()); + } + + Log.d(TAG, "Tokenization success response: " + response.toString()); + + // Parse token from response + JSONObject jsonResponse = new JSONObject(response.toString()); + return jsonResponse.getString("token_id"); + + } else { + BufferedReader br = new BufferedReader(new InputStreamReader(conn.getErrorStream(), "utf-8")); + StringBuilder errorResponse = new StringBuilder(); + String responseLine; + while ((responseLine = br.readLine()) != null) { + errorResponse.append(responseLine.trim()); + } + + Log.e(TAG, "Tokenization error: " + errorResponse.toString()); + errorMessage = "Tokenization failed: " + errorResponse.toString(); + return null; + } + + } catch (Exception e) { + Log.e(TAG, "Tokenization exception: " + e.getMessage(), e); + errorMessage = "Network error: " + e.getMessage(); + return null; + } + } + + @Override + protected void onPostExecute(String cardToken) { + if (cardToken != null && callback != null) { + callback.onTokenizeSuccess(cardToken); + + // Proceed to charge + if (callback != null) { + callback.onPaymentProgress("Processing payment..."); + } + new ChargeCardTask(cardToken, amount, referenceId).execute(); + + } else if (callback != null) { + callback.onTokenizeError(errorMessage != null ? errorMessage : "Unknown tokenization error"); + } + } + } + + /** + * Charge card using token (similar to QRIS charge implementation) + */ + private class ChargeCardTask extends AsyncTask { + private String cardToken; + private long amount; + private String referenceId; + private String errorMessage; + private JSONObject chargeResponse; + + public ChargeCardTask(String cardToken, long amount, String referenceId) { + this.cardToken = cardToken; + this.amount = amount; + this.referenceId = referenceId; + } + + @Override + protected Boolean doInBackground(Void... voids) { + try { + String orderId = UUID.randomUUID().toString(); + + // Build charge payload (similar to QRIS implementation) + JSONObject payload = new JSONObject(); + payload.put("payment_type", "credit_card"); + payload.put("credit_card", new JSONObject().put("token_id", cardToken)); + + // Transaction details + JSONObject transactionDetails = new JSONObject(); + transactionDetails.put("order_id", orderId); + transactionDetails.put("gross_amount", amount); + payload.put("transaction_details", transactionDetails); + + // Customer details (recommended) + JSONObject customerDetails = new JSONObject(); + customerDetails.put("first_name", "EMV"); + customerDetails.put("last_name", "Customer"); + customerDetails.put("email", "emv@example.com"); + customerDetails.put("phone", "081234567890"); + payload.put("customer_details", customerDetails); + + // Custom fields for tracking + JSONObject customField1 = new JSONObject(); + customField1.put("app_reference_id", referenceId); + customField1.put("payment_method", "EMV Credit Card"); + customField1.put("creation_time", new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'").format(new java.util.Date())); + payload.put("custom_field1", customField1.toString()); + + Log.d(TAG, "=== MIDTRANS CREDIT CARD CHARGE ==="); + Log.d(TAG, "Order ID: " + orderId); + Log.d(TAG, "Amount: " + amount); + Log.d(TAG, "Token: " + maskToken(cardToken)); + Log.d(TAG, "====================================="); + + // Make charge request + URL url = new URI(MIDTRANS_CHARGE_URL).toURL(); + HttpURLConnection conn = (HttpURLConnection) url.openConnection(); + conn.setRequestMethod("POST"); + conn.setRequestProperty("Accept", "application/json"); + conn.setRequestProperty("Content-Type", "application/json"); + conn.setRequestProperty("Authorization", MIDTRANS_AUTH); + conn.setRequestProperty("X-Override-Notification", WEBHOOK_URL); + conn.setDoOutput(true); + conn.setConnectTimeout(30000); + conn.setReadTimeout(30000); + + try (OutputStream os = conn.getOutputStream()) { + byte[] input = payload.toString().getBytes("utf-8"); + os.write(input, 0, input.length); + } + + int responseCode = conn.getResponseCode(); + Log.d(TAG, "Charge response code: " + responseCode); + + if (responseCode == 200 || responseCode == 201) { + BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(), "utf-8")); + StringBuilder response = new StringBuilder(); + String responseLine; + while ((responseLine = br.readLine()) != null) { + response.append(responseLine.trim()); + } + + Log.d(TAG, "Charge success response: " + response.toString()); + chargeResponse = new JSONObject(response.toString()); + + // Check transaction status + String transactionStatus = chargeResponse.optString("transaction_status", ""); + String fraudStatus = chargeResponse.optString("fraud_status", ""); + + Log.d(TAG, "Transaction Status: " + transactionStatus); + Log.d(TAG, "Fraud Status: " + fraudStatus); + + return "capture".equals(transactionStatus) || "settlement".equals(transactionStatus); + + } else { + BufferedReader br = new BufferedReader(new InputStreamReader(conn.getErrorStream(), "utf-8")); + StringBuilder errorResponse = new StringBuilder(); + String responseLine; + while ((responseLine = br.readLine()) != null) { + errorResponse.append(responseLine.trim()); + } + + Log.e(TAG, "Charge error: " + errorResponse.toString()); + errorMessage = "Charge failed: " + errorResponse.toString(); + return false; + } + + } catch (Exception e) { + Log.e(TAG, "Charge exception: " + e.getMessage(), e); + errorMessage = "Network error: " + e.getMessage(); + return false; + } + } + + @Override + protected void onPostExecute(Boolean success) { + if (success && chargeResponse != null && callback != null) { + callback.onChargeSuccess(chargeResponse); + } else if (callback != null) { + callback.onChargeError(errorMessage != null ? errorMessage : "Unknown charge error"); + } + } + } + + /** + * Direct EMV charge without tokenization (more secure for EMV) + */ + private class DirectEMVChargeTask extends AsyncTask { + private CardData cardData; + private long amount; + private String referenceId; + private String emvData; + private String errorMessage; + private JSONObject chargeResponse; + + public DirectEMVChargeTask(CardData cardData, long amount, String referenceId, String emvData) { + this.cardData = cardData; + this.amount = amount; + this.referenceId = referenceId; + this.emvData = emvData; + } + + @Override + protected Boolean doInBackground(Void... voids) { + try { + String orderId = UUID.randomUUID().toString(); + + // Build EMV charge payload + JSONObject payload = new JSONObject(); + payload.put("payment_type", "credit_card"); + + // EMV specific data + JSONObject creditCard = new JSONObject(); + creditCard.put("card_number", cardData.getPan()); + creditCard.put("card_exp_month", cardData.getExpiryMonth()); + creditCard.put("card_exp_year", cardData.getExpiryYear()); + + // Add EMV specific fields + if (emvData != null && !emvData.isEmpty()) { + creditCard.put("emv_data", emvData); + } + + payload.put("credit_card", creditCard); + + // Transaction details + JSONObject transactionDetails = new JSONObject(); + transactionDetails.put("order_id", orderId); + transactionDetails.put("gross_amount", amount); + payload.put("transaction_details", transactionDetails); + + // Customer details + JSONObject customerDetails = new JSONObject(); + if (cardData.getCardholderName() != null && !cardData.getCardholderName().isEmpty()) { + String[] nameParts = cardData.getCardholderName().trim().split(" ", 2); + customerDetails.put("first_name", nameParts[0]); + if (nameParts.length > 1) { + customerDetails.put("last_name", nameParts[1]); + } + } else { + customerDetails.put("first_name", "EMV"); + customerDetails.put("last_name", "Customer"); + } + customerDetails.put("email", "emv@example.com"); + customerDetails.put("phone", "081234567890"); + payload.put("customer_details", customerDetails); + + // Custom tracking + JSONObject customField1 = new JSONObject(); + customField1.put("app_reference_id", referenceId); + customField1.put("payment_method", "EMV Direct"); + customField1.put("aid_identifier", cardData.getAidIdentifier()); + customField1.put("creation_time", new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'").format(new java.util.Date())); + payload.put("custom_field1", customField1.toString()); + + Log.d(TAG, "=== MIDTRANS EMV DIRECT CHARGE ==="); + Log.d(TAG, "Order ID: " + orderId); + Log.d(TAG, "Amount: " + amount); + Log.d(TAG, "Card: " + maskCardNumber(cardData.getPan())); + Log.d(TAG, "=================================="); + + // Make charge request + URL url = new URI(MIDTRANS_CHARGE_URL).toURL(); + HttpURLConnection conn = (HttpURLConnection) url.openConnection(); + conn.setRequestMethod("POST"); + conn.setRequestProperty("Accept", "application/json"); + conn.setRequestProperty("Content-Type", "application/json"); + conn.setRequestProperty("Authorization", MIDTRANS_AUTH); + conn.setRequestProperty("X-Override-Notification", WEBHOOK_URL); + conn.setDoOutput(true); + conn.setConnectTimeout(30000); + conn.setReadTimeout(30000); + + try (OutputStream os = conn.getOutputStream()) { + byte[] input = payload.toString().getBytes("utf-8"); + os.write(input, 0, input.length); + } + + int responseCode = conn.getResponseCode(); + Log.d(TAG, "EMV charge response code: " + responseCode); + + if (responseCode == 200 || responseCode == 201) { + BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(), "utf-8")); + StringBuilder response = new StringBuilder(); + String responseLine; + while ((responseLine = br.readLine()) != null) { + response.append(responseLine.trim()); + } + + Log.d(TAG, "EMV charge success: " + response.toString()); + chargeResponse = new JSONObject(response.toString()); + + String transactionStatus = chargeResponse.optString("transaction_status", ""); + return "capture".equals(transactionStatus) || "settlement".equals(transactionStatus); + + } else { + BufferedReader br = new BufferedReader(new InputStreamReader(conn.getErrorStream(), "utf-8")); + StringBuilder errorResponse = new StringBuilder(); + String responseLine; + while ((responseLine = br.readLine()) != null) { + errorResponse.append(responseLine.trim()); + } + + Log.e(TAG, "EMV charge error: " + errorResponse.toString()); + errorMessage = "EMV charge failed: " + errorResponse.toString(); + return false; + } + + } catch (Exception e) { + Log.e(TAG, "EMV charge exception: " + e.getMessage(), e); + errorMessage = "Network error: " + e.getMessage(); + return false; + } + } + + @Override + protected void onPostExecute(Boolean success) { + if (success && chargeResponse != null && callback != null) { + callback.onChargeSuccess(chargeResponse); + } else if (callback != null) { + callback.onChargeError(errorMessage != null ? errorMessage : "Unknown EMV charge error"); + } + } + } + + // Helper methods + private String generateTokenId() { + return "token_" + System.currentTimeMillis() + "_" + (int)(Math.random() * 10000); + } + + private String maskCardNumber(String cardNumber) { + if (cardNumber == null || cardNumber.length() < 8) { + return cardNumber; + } + String first4 = cardNumber.substring(0, 4); + String last4 = cardNumber.substring(cardNumber.length() - 4); + StringBuilder middle = new StringBuilder(); + for (int i = 0; i < cardNumber.length() - 8; i++) { + middle.append("*"); + } + return first4 + middle.toString() + last4; + } + + private String maskToken(String token) { + if (token == null || token.length() < 8) { + return token; + } + return token.substring(0, 8) + "***"; + } + + private String maskUrl(String url) { + if (url == null) return url; + return url.replaceAll("card_number=[^&]*", "card_number=****") + .replaceAll("card_cvv=[^&]*", "card_cvv=***"); + } +} \ No newline at end of file diff --git a/app/src/main/res/drawable/banner.png b/app/src/main/res/drawable/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..39f882da925b2d40d4f4cc30bd236c376808fb38 GIT binary patch literal 114848 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≤j-tEKC5oh~QiPqxohS730(6@ck3_O7UWa@CbtrpD?{ zuKbnu>HKdmK)m5bbh<;*CtF;w`S0L~`N{@p$RHyzip{d+rYr05>zn~aR;a-o2FXR4 zz?y*?0eTt|q_WV;I4SgzWWQ)KT{IuLuv?5CbWentS-4V&MWUd}vuD5_TGhQ0pQtiP z{#L_3N_7H#M>#x(ahlAtuZ?%{Fqp0j*e-wZ7MG{~Lt@mN>W+@oPqPzpGJycKomxuL zJIq-iR0SPIN~jCP)k;pPzUR0CQxZ_7MwtTnjq_0aqGY{g4FS;> zq82?g*QWp$L*ew#Qq#rwUvUws<)P1I|Iuf!^M;iEiIH;wD$`xsshC{LC zWTNxWu?mC}lZ@xX^G48MdnS#fR#+_Tk&cXrKn8upSV{pztq-KG1_d)De6*&U%&szf zF)UQ(^@3%WVXTCP3Lw6pQL-vZ=zX&gP!^K16)WIqbhc3M1V$`dRGHE84((RzX%-ru zrqMfN+}w6Tfd!Am`f2wKukf1|1GA3$b1bWlfp5bvK|vK;7)8LKWH#l;&H_+-Y}$81 zL;<4emWZ~7WCGwc!&$znmEUUe-pYEfTn0|xgPI6=X-eUF~{Qea41{3cnfU54R^8PEpNs2p@+aFCQZ!n!sH0B z%zM3Au^ht>c_@_s5Gdbk94%^;^ECGWQT6D&Ma|{_KSUl4v0Ehjjh` zBX`&j+hm^9=q6F>ykP(yOG%z0@LSdNG$OU-ahM)Ok>Av$o^*0sLSanzEAzMgz;F4` z8n$(eT0T0rbn@Rr9kr;%>0Bw*5i8xRP1-dEN71d~AR}S~%+NJ;@hkFmsxbK~Ro;MD zCRGQ57)zb3pol$KW{Q@7u(&5pS9XehisH1zuS(z5u|5J6eOUxW@s)@1^+L+$2<0v# z!-5hOW@Z&PAS|9K%4XxQDR?9yMxZ16btT3lpFsQEn-!#%D}y!>CQzfJFo)*44m!5L z7K?yDeXpTn1vv(g;|2sS>WhlPcIPpRT%K%kt&D_O_k`MCC{CrV@ zV8ix!wP^KJ-9iIM3%qhzlE?~K?-r$`3M3iNSy?YR?pTc8BLTI3Vu^C4 z269buCjQT_yaA_w|0g*A<_(xmfNOHJgMqH|>QaUcRm0>hK0b-5V~#-$z)YWsL6m>f z3d4pNQA}i5_IxdKDj`)arqh&%-gGeW;D^#P_-dcp+{wvWfx%3CMrEd2oGDxWI)`J3 z(Ky^e?@xb3_uzXY_P4?^OvO{dv4Nt;l=Y%pI0KISUsqy^(?`wHCGflL0>5RecpRL` zUQ~M9T;PDovm(9x0=ca^jW`^syGDs;K?-$Cf+2@UmAE?7!?$us;%3xdpIUuGj|F7h z{`>Fm@ON@>Bh+X$n=Fe{5qw02nf1Ri+gS@_5Rm-gJ{Kq?gzag<>GPcV)0XTXc3IVP zE*1~s0#ZgIsG%8ooQf=q3-!X5g;D1~payC3JqNQ!tbK_KrqFfKI87Rm>>mO&LD>$z zvw}!l+O5=fajN(gpx6u>l8qYT@0|5G4GKJbaoaK@=1tnL&J~7p&w`Xc=?OuvwU){+`y9ysap&$UqDKF4)5< zGz{_xD(u9~tFKnsF+hw30kCbEY6U{P;dOk)Vn)I2vNoK#DVf!ji4h^K{p$2tWK;t1 zv7oGt7Ovgi^ugzdx$wENUcJMDQbvo%;;|!- zyd=Hs2$e@_Krl@&dV&FgcHi)#oH=m{K$XqyRBHG7m^kK%7`@Z}Xp<{24kU$%08C4a z+u;Z7jbo3zKf39f?10YP=J>J;&!71!^rA6mP%25A;IU7t8KG!*yPV-LIBPF+V$<~ml?C(n;4 zRGPJ5sN9rlzlUazz2R@S51RDH@3}WR``#Yi{qBIy-ut1u*M8{S{T@W^(n4%o+b9NX zOcB8rUR3Rsf0umjZuu@4I`n}Fpg7u~w7*poio%NOdJL?wnQ_%k2wUT71)0(WDhowi zh^_*V2KY**D4!Q#Oqs6*g5V;@3zJ4wnO%jA5)ew*NCC1#ot&Z0IgL}I{Di>(LyveQ zx(D7pJ!8Mz6wX-3D3zd#yOu#yt}R68`e-uDJ1qqfnTaygd&u8f}Em z;|*3aq6|yGlFmOFN6`ejf_1xx4$K%JSuiyM7h{6r#q_&AT4t$SW3$ z0Hy@mRwynC$fM_#tWa5^GQ_x$wM88#D8F;wrXp6Xr~Y988H+GiPk|~2Wnfi=R|4O3 zPt@mh2J%@?MvGIlIbJ*#j~#VH6r)A{%iGmi=!@=!veun3&ZX23%%Gva2R#hk=OB#T zEiq|H-Z@|7G{HPFz>YInE9YsPYr%`rbezfp_Ra+EY(h+AOMo~ozAHlz9^uczNq?9D>~@Ayp?17@*HIe@Q)q+Mb%fzPTZO6 zs43ML5Eo3I4c{?lFL6$)AR?Ci%UjU7I+vTT8R<}b;cX0W~9sl(3lLE;-{yUg%%BDx)Mtii^Av4R6rkDVYwF0 zY{1m3Ux)dxeg&I<|C{6~?b!I4AuldseNLVS$IPDrLU8<>+>zctn@K9>ps^Ruti)(@ z8g+Am0aIbO^o9zoq@#i+8@PqC3-))hWFcw$`I>FTbXkwtoV695B`H{O$e`|cXK^#c zSPI~DqD1&zqX-iR>tqns9WL={{JGAcj8$oR`B^KQyQmOc-PEv{xgyYuiIX}R%u~UgUDceQWrI0m_GC(hx7HD#v2=GS*Pxnr#2rI*1Dxr zTnCj7s*lOZ$+&gvR_wHgD|D{LDMg9Hq7W`Gbx=@fVg}#=n?LpuG%Hqf7TwaN7=7+@ z(ZBF~%zx)QaNRViLnG*K*^+$cW6Y#DR|*#jaxr(GC~SJ^vY2y#YXA2apqJ46;4c@a zYj&X7dFIm7_%e@z}Yl$#RSy$np z@oySCrtxeFh|PM?dpT$0C4uKysfVcdZBUiKP*%{Pju}HKq2UC?h2nnIXC>htRrHGMkwsPk zx==&FS%$63{L=SUSkZdTAua&Nwk&1M6Br%@>X*pB6PG6(wA_lr zEW9`G0f+gt;^oRgHpBP54|?DE0b+VTbcLqUnI;!C@=Oe9(=3Id^8y^B%6tO=PV}UN zC5b-Kx|v>|`EMJZ?v_4G_m9S?X_xjK$Tl}OmlFyccH)Cxm~NN|37m%!LP6Omurk(Y zqMVh|`^k^lubkKix63XVf6j9-`1NlwbNXp;!yQ(r!)ep`wAm8M54{%cU=B@Z1kLy; zVq)B!mj1|%bVE`$Bk6m+0SzDybushd4`TMTk29IFVhLilv<59guJ1D6#~^SPYBN4Y z3`0oQp?91WeEJO8Ur$T}1D=p9f{-ZO{8^jEM@?-fhtf;z%97H!1huHrHMh=?>#^;0 z6Foi8`!$a_J)@hLq|6w`V0@o8r!vp=c@w2`n#nOJCULna;q)xXghY3q5_88x%)=ru@G&{x*Ft%*@j}%SzgfjV5zJf^_9&(mZWTW9g>L z~P^?pT^cE=Cc_Y;f0juukB|GX&&AD%=sFV6ZGzBUZ&?UNN(A^yX2>_OG_HPw{8VBeqdqF{(o)v@OOua6jV{w3hT`%bOBe1Y^jbx{i%c3%NSPSz0 zGb3OzpWl8o|f(8Z|Lo?twIfk$U<#^?&HDKV+Qg1T}*kr6U#&HOI$x>A5U z-!yk}7;vA{mTFWw;a<3s0(UU+)^<)GSv@+c=ba_YF|Z@Jm2}S7eeZ?2bH9^*9)iXg zTE@LA0NJV&goOau<~1)AAIh@|5z2O_gN5MGV+He8(0bA0xwnDUCMG80tu-3Rb=0Cx zXs+Fn1KIu_vOYOT2Rtc~f#YQXDvhnRzKY9^AoaL&|86nUV z4;&`n`5#zw#nssJh7H*5qD#;`_~Gbn+CcLk66-eg!H;3(x!;6avlmu=|NB_|vtN-V zHgw{%u=?W5Fns^Rsiw>Li(ZKpzdj!$haHApe{&)By5@SU{^>8!?7cU-cfTig{l$6M z{qk$E`jRU#cGAld@R=pIUP#v(Y+8@8V~@d_-~R=>Uv(Y!yy_Y({l?efZ?_)?2|TgS zUXu)D3nrm4`SMp`mkTdKf6qO!>RUg=?pIuc-7mWiOW%4*0x@%3ZX$1hw3xB`KG@~U z=U~?xZ^SOw-9Z2D?sfY#F9VLtO5k$&nV-evM?QtIm%bLeUvd@JT$RrI`nS-IOknIO zCt%g3S7O(+epdeC7w8^zUjnBgZMIh8;d<%s@snPTy{^0tyI*@9b~*2N7{1Sa5H@e( zQRl^;tg3ME{juu83$W`I*JIC1ufVFb$zn1fuz4Dz&v_wMUvx1>?tMR|%%%QCcfZ@G z&o9NuF~^~wWb0sh8zx`$60H97Wmt2=P1xniYccVkXVMzzC!r8?ot?)%4y!J{63y)n z!16Obh1FMGjp4iBotPd!Jc=cs{Q}lpcOBMTe=}BHeLa@G;}pb=>yhoWFgJ^dSEl*> z`uE`vIvC5-v+R21)!5_rmtgGqFF=3Ors9^>O)pH6#iU3O~lm zWi4BPVnm`ghvrX%3D8gsXJKO13Xf(oN3%kCDd@F13_x&ri3e1$$kbt#u;Wl1&&7?e z%Tbn@B$_zMtmB?}#SNwIA=%V1mU!*OWAWHQM?(wRmpCV|(ryRhE`tIKXMyTW2n9}< zX*_E7B_G*^KfGcEe6P=*hgk4V2~H0dm#L+9LOOqsv=bh4@O=eflzYM{++v2A|2PAR z^cVdg;7t%BpcKfaK#;8nDSRBRf9D1dg%NRKniBCsqtnTJr;(~`YBgN9_NHb z3*#X08CsTYsN%YkVegV@?sO38Uya66i>HEYI|GXbS2-+1Kv&Rbpr2cGSFJ#2&pjj# z(G?)-iYqqC^)g8IazQ2{#N(mtSyk1*X*Z+%h=W#i7@+00oW)*CeZIdT(6$F@IUG&h zxWuSwRkgZy$4>A1G)p7zyAF4#S9rVqsro{)ViWg@*G;1qR0n494-z^HuR{vR*E*drf_sTZ9DTz?~` zzxbI134HqO@mTuLZ^hhCeun8Edf}0+2DAn!J4Xa5Fw2+d;hKVuk z@%e8F?{e5 zSaJI4=>6)K*!my;fiSfUlh1xOR(C68S<4-yoTN5)noY=~2(Jndm zcw)5Xe|G^obK5ZbidSLDi(iIqU->d{;e~L^S7P)TPlx}=$FT94Cy>AmiJ5B>O}G5C zkEGwP!2GwrhxY30;AggB>F3YJ(0==3)4NUu5;*ImXBj*0=~xmQY<}G*gg~&$kn>AIqee&V-soGnJvxdwp8Ye*|!X}JQo0!5EQv*<*c(R1tiZ(=bNS@ zom6tSn1;($u^a`8ulm*n+UV%0+dd~iy`1^z2(1@0Sj&uBX45jO7GreSnUCnCWJRFN z6EB-g3wIXxz4+im2@>Tv0S+>nNVA%;zK}aBZ<6|BRtXhg* zaw)cdxd_WX^kIx8Hgelnzk=y=zmB1U4?&YbP@d=Pu1xQ0?spfWf5{~YAdh0?kb@H- z{t~vl_(kwbMsnw0gtgaW@~v;d*6}6Dt+|n3{%{hoTQ*|DgA=GsESX!f6wRIP0l)hm zxZ%0aMfl}U)5c5h>I3h`Py(bAk9#6Ez4E2WJvu}{y-6(Wx_^2u`ak<|`mBSEXP<># zetiKZjyV<^zWgPQPxRhU2WJ;a>|~4!DDzUohlPJl=X1%ph(h;sOc-YlZ%3;;NNfa3 z-KW^H0FxL=?I+7HFIGki-$ObJ7Iw~digIoZvD2K;1B>?w>>UtmJ(`f>Fg)IrjVM7? zj24za&&zw3P2<8^EFO!;jySx84?qodH73ApF&PUDyWk))FG^c8DEJX2?KSx*XFX=O zXEMyW#$}ahPTNgFEwsL3-V@Y1P0&ZqcD(G*@cZ3~_e?3G$k&hhA7_S8fk|r40SjWq zfMT>um_zwy1^OVd#ML${w%EeG=jz`^xu3dg`GI+kD;KP*kRSado@ zVL-VmfcM7k0R`kqr%p)0JN6=>F;5v#$xxMh`G3hPG;*gqVtQ(VLZUj6TS@UdcVhT5 zLzb_d-#yhxlcYhOM(HFJy?HO_s~u18QftVumsqbSo{FHJkSba4uMfJY7QEg5@cLkx zX3LD4*6`T*o3eXi(YSAyBkPF8IwNgWeD<=Pv~&>F#2IT`B121CkV_`d<+fRjC1xb9 zzZt#Hp9##)z~8hHITUgB%ilmu?2A9(zyvIYB#qZ&^UGcace_2%=6JN>4%K68dF-N<(DUxu|anz zy{E+3ZvMnaF|_|3fTc^&nOu&I&weIuK42emi-mO?l8bg4(?9wdgWahmXhz4d_4A)X zv+HV%KH!M73HumHj9_!812IU9V>V_o!+P@*AD4jh(-V;%((}xsO|IM7-~KlJlwiV0 za&PA*dCA(!z+h_vu^|C$w_+Is|BL^Kb$8w$@!T(`=a@#^un{i3j+w814H)6?kTsrT z3)4I3|KJB{Y?Ek*M$>(^5v%8yEtkqXlFdr(MtJ>k^?v?i;Sd^QNsAS9KEzTq(54KU zq@oiuCCVm>v{fdHj2I^_9B{CIDa}!0;UNqU;YYU!=+Z z`QtVj#hQhv2}XHeWZffyQb}1SM(Bnc6RS2VuFqhZ@>*|`n5|a#n6k_a7=1GO;-4-^ zfG`sHb8&$vSnw|eWQJp8Kf``@hU+vmK~bre))1-0_o5=-IyJE*A~?CWFot^lnz@T= zP^tb=cUHt-jlRUim6*2tC&R1kR&J9)o8!N&&0mNX7NU^P+f`kmxC9VtIERzx0Hn}V z1QJ#ZjF2vIjg_&z3qJd12hf>CfLQ@9Om_CEeZII`5 zmQcX|yLCoQ*|hCJn%vV_3#poB`+GQuW=_hRf#rp+<=Q^lt=kZ%#wE7L5h!x9 zSn|T~*<#2qy*E!nqBTx8oxg1huQ`dIBlJEGl-Y{VgWrE|vSeIxgN{A*=@@;=Q+Yc? zt{q2Z8vl4vx_*boN4cswb}IdxU6*8;HoQa|*F_R(=;nB;UZ2L|voPce6l6f+#?}`2L4cFlakH!=NO`fTZz;3;%?; zX){Ki@FdKA?_BtM-iu-l=aZ{3Ch(l+v{||WldpXvv5{_aG>s{}zD?`6pdx|#Muce^ z+ZC7cyUi4MP8dkuh}>6i$@89%vBx|CAtxau02`CgCft(P(S~Q1>+DepmjuQAP+B{l z6CQHX0nB26x*822iSSlyP5Y>pk||+fZ9rEn;iy8_p>$bLcSfB=K!;?As?8$Vu2E9U zYvJokV9Ns60y7EX3IfcXp}>%b9CULP3)Qm`11Y9U#+4==h&Cb@Ym|U(@U^rFM2p2^ z@z}8klSG=`3}bMWJ)$hnSn6-m+Riq1lFjO>C$?JLTNJu5G>rN4FGM`_zCf=hh8N$9 z2?Sx^T;)C!5Jmea1Gvo_;5R2dkPLG*fGn8b7gpOKQ)N8Wl0mT(KVp?IL3_=kmt^d0 zGAzSY*CO@tCI~BeKGf8R2Qn-0+mdwF&uQZorYX6 zfk5pBsc-ZUh7*C{I?;5VrF%OG{b*w~cM&Q`V?9qo*wn+*g6ko9eBN5AdHgPxtv7jZ^Q7+b<_l`(O?cb z=%9GsdFKiCcF|f$Rdv+p$T4aI%EZ_?530tTDQcpsOMfn7l$-=-Dot6T@aPobdIo4H z77mw_XbBLsiCNil=I5EZ%%Cv2=JJ$ems_~__h@?=47E~!%}bSI_J21j2%ri{?r&PC z*i6LYs5Ou&k_5zj4-^BG0pRM>&q&t5qcD5!*RbuJuTY$qU%nKR&v+K~$c$z+1qMg9 z&Uw*xazKBe`p+2TOjFW}iB(#@3cd9GO!v=x?Hu&aJCBt$%~v27YD}ObZ=n2)9A@Qs zjQJAzR!(9!Vrv^wtvO~!cz%c>pPNgpp(ocD$Q8=UJFnl-?lAf@eXRQ6htW-L!@2K% z7hB%_u7oEYIxClA{CO{CAd8&gnOLjjW*s@=i1cv77(OI1g1`SA28j{G=s0b%6<_*l z`rZmmfAI@wuf3WD(w=*w`?P1Ifi(oSy}*GsXPL%4KOK68&a%~5_T|K$O>e`NPksXK z=Jk{*J9PgCpnKRVv9#0ogO>1MpzO2joZfLm0-wAaG*J$9$cecHc_E{A5EN5dz#7}W zQiWSqR4lFzqf_&fNUIefR@8ss@tEXvT*u7u@A*Aet=PDCleE%`3$jNG6DNEbWoUUW zdZ|i>B^1TIX*dE4(<<=S$=)3VjtkLPj|fXBXr%~m#Nx4d?6@O}@y-T;^1jZLx(1?? z{Pa;`&9Z~7v1@Rt95Fbg9%Jvu>(Sf137sU!DS67b1dOQFA=dyhS1M`|B;2bTm$znhy) zOj8eoqzfjVd@QE^@iiFQV-J)_Gc}`v{iJA2L5hMjm1hv*Krdl{t&OUxpyt?c?4#L# zpQP7s|A$0~rE$zB0F~Im-X}kv+>#yMe7ST-Vv$02!7iWT z(iWU=ZWa@5DpK;IgxkW_DDBJ}ii0~l2i%@2b7Nwh=5DZME5`TUD+w%zZ5RE4g7}Az zJ_ggD`wX@uHY+n>$xn&-@o`K%?}h1~%zq1o$p*!+?gV)pDW!i`Q)_G#x1x5xNXo^IU^*!to=p%%lDPT@m95KX!_gjYoYawxH0w&4TBx~M@ftANeLQ)h!7LYmPw((eqY!{EkW5*n{+|^|n zTaGZtKY5W;sT!?)9mFRMf{U9&V@ZOaPu>Qo4<%%PL4Q=v7gd+*Fqjp;NtM_evC& z!4I)wOF*rk*ekbY5BS6Gk1*5ACTJ3ehW+9`40FjK!}wQkR~NJT+8NXUVj;EwT;I6c?ni`{9GAurt^j#^@s$Z z_NKIS^ky;SyO=oUxa4}goZP>;9vfxlUUmiAWyy7z3rME%b?$x_-YD5U>Df3PTz(~H z{_eQzqNc=M*QXXIqYr!#KRdamJ^I;-id+v)(}=0#LGB?74w`4iP=b=dnMq2j zI*B3UCJ#dSTO0(RM9gsxPR`?v%$m`4s#p%E$p{WobI3{BxBxE$bk2aJ0>~(qtpa_L zv(A~sSNAK~w>kSQ$Uc+%OLGNY%d!VsarHvRLeG|CdPFcfb6fCYWh2`uDQgybwEenx zEFL@ND4`+Z!V;rilV=oQX(83jt`ycy_Ki~xoZVWqhLbECT=0iv;NKwerF@PPV~uhQ z^7jD$Oi2p=81y* zNv90JY+b{1Ag)n*o&k}7NuQ*#FI$C~|MTy->DkYr#`0d1ddz|oh7Zvgc8hEC3QNn7 znca^zf0opj|D8TxlH|PKW3|X8X6`iUz`&k@;t-`o2kRp>hPAtphswGZ+T#@JK}+vx zcvX_^OP0|b*p!0bHJ|GZsK;15A{wj4bItL@B#Q&DBc9jl9k^ojX3qhaTe@|5R+C~0 zq-~GMs51fH{N^{i{6{}sx^$`Av}qG|=0gk!sZz`vj*OdzU!IUZ^78o=Mp%( zkT-aKmb4iLj$@>9aaoQ(aG(;vLXP+?+pyxSFJSA3Kaj@O!PwJ}LmU~ymN&c(oyjq@ zn>S-{>E%?PY>*4*CPSgKW*3Y<>qO4T%{^2z?D4dD$z2=^vCr>aws|gA{F`53==smb8o* za1FTSVVX17+JIRsTWqbSkeHv`Z&fW_VHCx5rOYf^FU_r6k&DOT@qcsJx&<5RXc?yE zE;X#ItA^Z;?XM_IOWqO0SWB=u8%mnOmd;6DhmD{340d_d3uymm_kAZXVu}l8`AH>h zv=&P&lTcC2j%5qVj|PA%G&e&(Gz`K|7EFz~MZqGsFjMbv+8>-EzJ+v*(FRG^^ z>&8IF=xrU@?U@)gw|!%F5{)OHd@_wTm*?QQbx}LH@4SbzRA}W}Y4J<#5{*3**aX^+ z(Y*f9X0EQ=aADaTT<;*USdQFV8=mxd%>MEh7*B4vrEh#AM(_VXZ2Qm$u`vOMm?%oh z59oR-cISsWtN?`)cik>kzaCKWyQF|~ogJ`M6+*P?_*pr}96+jp*CV5e(dx1SOk>Ny zVe@lNM7wS+CSU$)EI;KP7=7Xsu<3aTs9k?uy1t@nSrjs$Wd>3qZ=}DOX z>5q~yN%u(ZQ}5(bz2K8@iGn0)(NF!ZD+W8FzFNx&^#cVv>O_WYb_^5;Ht2EE4l zpZ*ZdaH8+sfGpPj+8eO(#V;l{a{S~sVeGAM!|0(0W9u7Vm)w*+dKVN^s6u;e$gH!> zhV_2<15CgB-55RU5t#btld)T9J;?DBUg)Wuc;Y!J zg$-i{XKfoyc#z;1w}X{OqWLP(hME-x`8NchLEp2mXcVBI6Fcar%Xl=~JMXi}DKT1{DSV@LDpwl)zy1h39xca_VUO63`Sei18_FQ&L z)xNG6X7>B^_fRv8yWjbapep5z07WqCd?Djj@tW;*o2-JZlugHkP>-xqDkj#$4I;nL(Oj zF*WQ(CQ}(T^426Y*GVUK^Bkr>!`B|T|25bd4;Lkif~^{7u>%g)>LL_|Ey|)qtg<%p zJ4kFxZjF>dO3ZNw zLhL=F%-i8Ht|2y;#+4hKFIys0!hz$YVAHjyUiu15y!4g0eo4CL#8Qd@pbV7c3e06R zykwWQ!~hL2*f>oc8eGf0)7f=hCe7iBHJ($BxZp!F_r{ZVl#6s zxn8oYmX1@gV@^!S^E6HC$S<9u7(Na>g$V%&y$`X}*+S>dY!VMBfx1dzTIwc5N{g^< zxCIt`5#GvkX;3X!0}sZ&k#*d%645do>YkOFHwF~xcF@{`YEgq5y$^!)=wxFlYC?hx zwCctpLX`KQu>_S8(RWv}Sg~02cJbJu2kQf7m7=mR4#tjHZ9!jvMm~%MQx-|xe}c^q{H&>l5F=+d`1FClM;@j@x8@((}RsN1z!3L zr7KT+-fyw~_$MRg5D*1wk`zI~{8~HA$@69XlD^m3a~~{AF3*|IeHL3!I}Lv2B!#YI zGGO=bem}WHS6G68wfwscW6Jh;_4BpYUW=n1bQG2?U!G)oA9udpUii;{I2LYtj!29= z4(k6a@5i1$ve%0e{d|d&hIk@Or)%6=TLcH;qs%G_7VOQ;VAGr42A}k%#h6Q7Nr96r zmMFHD$HMLWDp{s$LVLlg$3&*Yxl)IXr%dMUR+0(!xaiV7(_gsAW9;1m_p69 zSKRXC+s9I(ItiG_qR;&y$9FDv#oT~pJBgRq88a(520Up*nnE}`=TL~`HJ$QzJ)k2E~~h1Th1KJz%rLZiBo8EDt7{W&Hi`A z=plz<^u%XjaM4BRo%ibmJeOI#I$b*_7Ub3;p@0Co$1+d8SfaSoJED4Mh*F%eSlT(b z78GF17In^)jTx*Dl0eCzEXN&8OkpU4FsE5Y-2}|jg;!3A5M)DwTzPfq5$^N9DlXqqAnyWB(+9$Bvv!2QzN`P6@NQjLl z1ChO!KD);uT$)3by8K=50EI=Szl^6ALn>cC?VSy$pGMvoCwkD%kwUK8ok8~(yMQB> zzV@}~9&kr2eSPw%tXPVzr=FT*gaubI~}`2qnXK2da-lX(`o$sH2PwRE}t4~_*h==EY+@HQVAr0x8!Pw=BG z5ca&`qGUb>u_B0)bo>IflDfqp(5f#PcgnQsi{^bDAQcRFljkqCL5!+=uU0H8esR%5 zViLS%qXJq>N;bVP7Jk4R-)lOsE)Fr;tl%C2N04T#hPJQnZF-|JG3H(f+-LY|K zl%9{kYGw=DKHaO0oIR*u(iSxN_Xe`yX|N@8PhyLBo(ogMEk8I0gM#U4tX>$JC>C6r zgIuf5Y8J^_bh7%zb?oGKPGaKnC#~ZmlG!Cae)Msec+G1m;bF^bUzM1$acJQpooy}t zOEudxHY9`6Al9XBFgjbnR<iOz{%d_r7rR_c~X`<{;}BY1<#^n zGsrnPSpV9@;{WXCjkqqcNjE1s{KM;R#E+2-zXR{eo}j2bdZW4g6jarEz6Nh5#j@uk z7vTQUkCMSSBDZx^YDf1I$5a`zAo-ZWVg9=GZlAfKI(>xhzxy(td2z3|Q~A=;LWczb(CjOA>u^nDh006CWgwglaer8z63^h z>n3;N#&Al_%dz*Sde5r(>cf++`mS3<(^_bc~mRCMK{#oUmK z(@BVcUOPGg+5B%Q9mQiOhPPy$nG|vLnh_Un8;ot%c+sG47FsKjSXa&BQnwBiaOyr) zp?B*tZShz<{;!V$aGWLA6p3GyuNv#d6S)Q2Qw&^j&q=H&eLZ(ddDJ5@e&2gi&tz!( zAjh7FU6P09TYva7j(GP+@$mPYju)T#Mf`5#G|PJ#hvEPglB92({f5tSdTxXbKgZ`@ zbrs_D7Esi>7+_>C%DJs$;l+j6)0bwaF>?P0B=5vCrPM{*x0^O&+v{FW?e7|qBk|_- znETDIRn1^Kl!oHaiUxvFfj67p$bdL|N$!8g{V?ezuT=;Fs*|R%VimKgFONiwBoI2) z``BJqR{B>%IHbiC&2wTK#SC95kU2sLW{do4mMipM)` zOCdqiE|&cn3lPx_SSSSDm;#Su35?|NpbP@h{L%_)G{8_#cHUR7BcIm_+a~Hf14;!! zitvLxt25{)Rz%H;2@{n69!(Zef1cv6ypGEk*2#3a^0E##cZh1qIB279MHdP}sO^fb zM3iS?pizP@ovGhw8Gljgj469w_lILIpf?~F#Vtrz@f~^g4)s{2?8zK_E9_M@rSz;C zd*x#Fz_AFCvdO^ApspVU)sDfX)e=)SPRHY%xiR>?#Y(vFXaW@M^0RnnB8|V}xWq>R z@>1(b-?IXFU5E0ns860CVPhv_iJ{Sgp1gJ?eny_1K~-1?9A!LC!U_bf3D~UQTB&l$ z`vukO&!0t3FmPf@YAh+Vvb*eAb(iRyc3xkcF0fk{Y>UU@@qcrWCn2!WrS)5tv8gN5 zD=-qXgO_`&Vxh=J+TA2?JtYK<-0jYoyzjjeOErLc37p8)%w7%m15SSQL-3fp-4XL4 zi{=hQT4SLe*Zr(;QRGVz5%OOr*{Li8`+xjHuE@@8J|O!m9rN=T+V}R!E0a6|^IXV2 z@55%#eX!*1@1X7qB#WoFVZ*CmhUwq_iaZuEs4Ph!@8U~Mj}?*cOsqmdjlqhd;w&+W zYip2KvLzWqb55^l%?7t{8_R1`ERcQeNNm-j+Idig(lOb<&E7^!9O=1Kx~Ev3BzwvczN*U>d?f=VXYGU#+os?rhzM@#CEm(^ptYsm{+ z#A%Dijy^;-D=VZfvo@$yzI{$BRc-zBNO*n@@QgdO!Ffx|A7@62>r+7^vLO z)G|Md4zjH(0@qct!M3mhDLBefUpX;_gZ5ZM`l!{ff=dt?uvNBS-$#`#OP@GbiIz~v z5??$wLMOruT?(m*+?gRtQF0QGOrDS~)UcbVbL~WBhz`t`YFO4XU@xFp3)^#MJTrbF zsE)jCfmVl`sdrNkbA4)zTCR$_VZ#Quvo~cYx>+AxT_>hkgPz1nyk^l7{OAg%6qlg7`1FQlVKEp}Fj7*E`D6x1at=*#foN0+%N2%`ug&oh z8mFbfqROz?29v}HzO+;bmrW97-ZX(mYmOD1Eb|(pZTKkf-Gw3$mGxBI#&KFwEH*Ve^J+ZAN>~Vo0c~7@N18Y(3-UKC(8Xi%_@5uTE+t-)KB^csIBUPhF=xTz)zmds7jlps``6Cmin>*PD8 zQ*zPsM?MP8 zy%EyHI}4!@Rb}s1o6+ZxA-aB=?}idLWN=b2zj)FLwi9h*a+%8%MGKFiVL8d>Wb4_y zM4af=np^vC1(RjWrAeHcFQ5mtkkTGj`H(_ubjh9F^~so{N}Cm>=PL^zqAa4s7dhLU zkT?WQ)eiEn;)YY;N7;9o_7+P@StKXX=#*=xpK*mgTPRL|5d?Wh33?~DVH=ATQ2j-t zvO#j(Su~|uxlp4hMGJ_9DK~46p_T>-4NaPmP3#q|M6q6kVToltHO);03AI<7{8Am8 zLBU}JEUr&KRcjH#M$yGM&W=hhxAJV@zLC~=*KuU8W;YV(mJQ-e*y^s5`J);VayJr; zN?Yp*0=CRG$p3>{y~L1KZJXpX1jV_b6sn}`C(oNxGbz>fapjdVc9wfXn5@7+Mdzll zoP3QS?^yvHF>iEg9$W1;ch%BSK_&B9+6IUcl8F)}qI5pJB}y67Mdi5Byjp^>8mj<3 zdU2E$+JIRI1%4V{5Nthr`Cb%hrE^Qc!jwi3Oli`vw8V@nM#ti@c8L`isBsukCeN9%89C7{GT8DX zL)>?>X=MI{DHJSZL{5yN=NbHZVcXgmVYzTnRpl1gmh^8gg_J|Ic->n&q}S&yR@^W~ zZM%c6xYN5n5vyQrUc3a{LM*|c`31`&@M;n1_XQ+Hsp?GK1BONra&5DU5s2!BBIP4( zhXxEqqPe9syUsy9m_6PMB#}g#*5CCcNjH(2ZgN=_O5pADZp^1ILjj`J7v>E znKH1L45j;X-_2ZS%s0d63=N@^7D=wBhJgfhqQYe9KTVq#Vwe7;-B0z&+}u1u`r|bb zK*pD|SuyZbr;b@2R>m=%+ewsrGcty5nrqBuGpi4VbpZ%Sq9@04z zIJ^d;y(_+g04y;CWLo%d_Kn#3RXJ6z zRGDQGp#AwI)FwYwps7bf5yfaJr{0##HPrYp;q8ilH1MhyBpi6aXEE6IF-??7e!j=03{|n&(of} zti;`SSw-_6TqWOBkIB5!+*d_yU0tkOukBnZ$Kjm4D^(->JVO18hl-5kk>LbpTVf$C zZr0e*C~G8IEP1p!kH);JUM77PD^K16GKk~ZI*o_>8y*5-)Liyz{*~*quA}z%bg=u0 zCtm@KK82TnMW@ONYSF7}5~YrfC}@}HSoeUVu-k7gM02OR(xTB|Y<)RQHsqJiJ>Dpj zCvO4)gEWuY*xELem-w`44}NiT8dOK0SX1R2EpCDC+Kh zx5vt_e>eU4CRTpqTUePavK3!D7t6kM4#uDRf&{oSSfhqfN%8m4J@ha-*X_O+%;nW@ zG5n~?l>AM4=xKZ|D-8a}K}6`N zn?x0`Rmw2dEbjaruUF;>=cq1k7bRONNa+wq>Gs^drid?c=j7}6T1>v` zpRnTGZ&FDXr}2QYMrjH&unkqHLB2`?cT4{1jaYH|8R@m}9X1?)d@`IzL=UOV@RjUI|4I9O^xpSIw1o9o z(2ITIY+M%0rOcKI^%jq~_ubH$pOtb^s^@h2oe>pUVu_@OV6C_y!4Jmv3zlPcH0o1` z-XV}&-Yth*h$qBCm1GEF)N7B|I&mvj=h|W^*>I=}eV33ar!WOZp4`fj7&RK9wvWo; zXnG@m8{dmNv+I+Ul>jXj_AwMzB1nvw78i{A_Vwk8N(|g6H@9t~bm|NSrni<@FH#~- zg2?j%Zdl=Vc=MS5o9b^xsq4a<$5Fq{U~C!@tYJYI*#Z}jx}g?qFsGZvbMtClP#X9y zr6N!zFSsg>h_0&wfGFmM>eh_C_kEaro#E1Ti%QDp=JO%hqyXhK!)m@+j$@kt?<%Vy1F`(0AJ6w&Va(Mqr%L3Tk7O`?)f)r!j({ za&si4bL}@v*QqQqc{lnlwS);7G)%ChJ3dT|Ng%|2%L-SQ_wu^7n?w5N|4Jzl-Pm{ zwkTjZfd|*mZGZZRBcl}5NKf5#3WJhg+@MDRh~yqmRufg;r%gQId(I~IDOY6A$~4od z>AJahWv&k0IPD#m$0-YQz9n~GuIG}0iOcsVHm*YvJB0mm|IpsRz-P9I^6zN@OWavj zlG(?eTT?-b*kW{q7rO|H;<}X<83~+>J@WCGc;ut8<^BJGE$=!t4S@yK?597C=B{_g zvQyrP<*)fCth?a12sd9(0wfF=1Z{oyJJI{)uc^a9{&|p;^{Uf9h0(`737h}zUlC`g z#fo92D+FWueqvyr@yzty|H9g1pM+*&lzPiefA9lX_3<;Xy$kyv{o)ZD!Vu=v|OD^3;ghR}|NWnlM3JpzRYiT^8&+%|RH<8c4GJ|0k zEv_)T1mj$viyP-&uE{;jOj{)K54~yX=}IhX5oG0%Om3I=1}e2f)%LV))6u^H`HC=>P6~Y)D3P+`Jia%lf2; zhO9&my8?@WN^!{>w_x;b|7z}4i#I~OKN&@tD;5QG<23x*>J&P0F_yPRA$F48pIJ%_aEnJK#d4^b#;0XgO)wcvg|(2%AT9YtqhuSg_EqSiSX*oQIv#K%$_jhU}}G2J6wb1?m4iAP`qRJkVr+fYE3o3MuVUhaXJPX{zX7>yjguh$ z3~Jm+L)Xey+R(@lfwz&Pj>6Ev_s8J--zKI?Ek6=Oxk`R+U_LgE!4;RGyK)&ZQMujL zApO1hLm$Sn*S!wzpnC&Jh-gJ>rJSh7ZvqiZp7$bP^=bkKgUc_)?3d4GYqVjO(51N> zdGL|w9C9$no2_4u*^hphGMcF8X0~?w%qmVC_jLIE_oM62|M7zKuD+a3X?T<8G0)6l zAOK_aSuB zJS|;`i4&g#x9e`STf-m!fUTeY6yg-WKMI=F0R7xIHO=S5bDod+|N1$7H2(01B>_5& z!Fj*M)=zx`o%`Jz)tEIE-=Td@pH0+-Y0oI}P6dlW>PL?#vlDS5`G~moUI@G7~;lt$rUtY2`ko(0>Vs3 ze#aS@H&QA`gLz>Jvm{$A9*f70IGpol(kna7VXTr-Em0$aS&DHJqJRWv08Xz*vNi3U z!If7^aJu6-G$oldq=IZSfqV2d0f_XUG_IR(AfTpQW{h%Qh$vvOoW`ty_l(e7qxU-) zb7}9-fA8DWXPV-sBZtk9ZI}p!!42234sAx*E08ZI^&g!)FUhE6On2{kHw-`Gk%Cpq z^H&fOu1cbcmfU88V`eaO8P{E&=D5pjI~n1S=Zf|$g2xQ-s9!U;r_;jPG&P|DgU}dP z*qj<$pV1O^DQI~t=^b>2hfDZWl)FmrPU0EB;L)k^s0k03=V&3t0? zhNhMz;*nXB)(az<>*R#Q+HBoQKzQUqM`Hau-;U1QY*OT7v@!ZW{Snq4`Hcj869YLl zRVi$-fDVC1;t;qH7Oh9CNH_{6G(W(dumyC>t|5Nv$fQ+U1H{y>bTv2A?Io6^ri43zun zeI(;z;@IP`={2up<&@Unu3z~Y84`muN7?1yee@&H-n@?EY9zZAOOiYKy&u5v9S=lU zdlNAL8PtwFJ&0%aQ_6!0KTr*qTur~qf}^`>z(gn-L}2nezm+-RW#6{;yYWl0WCzT~B7 ze}7@pMe8`J0RkcNbGOCCOYNm%MyHZp8SH`O1`U>e@FV0cvJy{-^8W%6Vl_UeRRj=i zOOr~@Z3(Zw0?p_!vwKl~A*18)6gB{%KwiIG2?!}3^)knnh0gpJfirVMIvCjp2}hB5 zHs8QNrY2@Iqa&mbG%|%kU?k}vNc%kXBxt59Um_w_U^ZWqlSdsnJMuwrFiO3?{BgdI z7U{i>0~ zIu=_$@LsHa;C*q!VF%%+W1fWW-usHLE;B+6HK-kb(TgzqrL%GKp@-sz2ONU64|^D~ z70dqZ-Ef;XC7|Z%CB-F6;ci@u^@kjS8y@;Ftbg8f;l?I0`i$o!uViwwZJWWw$^Vj+ zCWMRoYNF9ed?2Bq+@2NUL%%+ebe!PH{FdaU+u$d-!A0LigyO_e;ib z#7qf8LXGNM>aRAF+?-9i|C%5F1XFMNXSn_LCZHG+qt`4?RP^MyRh2IEa+=?J9R$D6 ze%SP;*J0fe_s9A}?~B=weFVb??2nN&H@-KA;X@C{*yEp&7|PRd^Ftqkn-0An)+L~v z!SK`@-i)wiBe_k-Uhygn-|cSL@cb9xrt}VOI`lr+`ldIav)}%SX?%8WLYIJ`!*BwE zbKm$1)*XCb-1NXhaQy=gPXMlmi8sF$aeB^T0=xG;7+XL8`26ea2Pf`&!*|_P5!?E`8blw|YkM63~7(MPO3Apu9Y;RG9GBzqw zAVQUD5a~HmXg4l0X^Y4Ii$k!LH71v^7-grd3rvjWdW+gpj*JsU9vV&oX&J{cuG1I( zKFOS6XyO;;vQuGhjh7DWC(GBTbsq>Y&_$arBsm+340vxx17!TOz!b$O`7_~JnBYkU z*d6YO$#ZlAkUi)B_alK@+G0rsZbIt_SAI0<&Q8va(P)43 z+r%)Art3Wo{Xbtsj8+b>_fuo&|N0jMB8KjFD6nET^waZ<9C;+>zx5pqe(@u?RV&b} zT83?(J_B2x`%Dae{a>kk9Nb&X{{vCG~UI`hdzMy&pZ*mjT_KpHZlo>x%a&XZDu&L>skWsd94bK9vQOr zFT5bRufLzhwv<5c{5QTz&%WV|Gm@p8n7AcNl1t+U{8qS7K?(8pOXw5F@E}cT}8(&6Wd-#FJHJ{GebmEDaKl@9G9q5v~y_a0- z{oh>(x6eKaSoI`GHo3H~zXqE=`SG;g#?b7t0<&K{3xjoOJ+9h?*PggONzBT6lv2hV zmqMl3G-x_9 z^&9lJZsYYVSvy=*9Ja?|Xzg0rTfnaVmclobi3`HQ@!@Q|49=ouua-muWqpDHmXX5_ z#q#%k0Nq0l!(e)vb)c6zO@j2KG8O5aKn7%z`CB%_?{^36^7U_H&1lPJvI6HISGJ$^?6~Yt97~wa7@tih9xT!d$J3*y!m9zeCAC09haSu zed9~k67|AMKx6*PXJhX3pH1%K#Ns5EVP=`eUic!6Jn0x*|F9#GJ9*~fkv8BQ$p7a{ z(fj2uG5)4EWB3VANG`?;&`)3{*Z-kfj5!hHc6-7vOD?;Q{UW65WFjPT+PK+AUj?Wx1!~ zT0qKY^nUv*iZ6>fnIj{-blu+1f04eIgycKkmB7_fnhaM{^IC*gvWCgBgV?*th27Fq zbAW}pV=aijuR+L4?6DS#tBx5Yec3OLcOLhsk z_F5NJ6BS8-n-|I%H7G7oc?X7N1zbjH?MH^_tsIi|Np;lLtXUHiP_x;#!XI_Ur(_<) zot;rDC|+WwB!)nil>Dv~x}`rkvyz(4hMY>lE*!A?#c2_*mS5gb&frPx(!dW>1|4OY zhCT*sZ$|IOKT1GsD+Qdk{XkSIdMz_Diu1G5?=~DRH{`9tK4sLA1tfv?l>NpOc-zin zDk=CCpZ+YmM?45&Vv;~b&@^PGGKdT%kTo~p4biHF5)2%vl@)b?<`}aZuHz+@*bnr2 z%pm62t;C=W-Q}){>06%MgwqIXR$?%d-v5Sm(3V3PtZjYcKVjqXM`Pm&$0zsUa}YLc z!ccNehRk{;){&k+%0|^{%=zERJ&An1>{d=pPJ6@E7<~Cl*mU%<*zo!{!mVD7WzTya zVrKGUw9QEYq;p%a>D8~q){lOK5~jwFJr>JO|0E{g{qE$RU74um4xN|5agLL6ZO%ZP zqpaS+uog^3W z@&uH3S(QMt2wV+rNY~<;NICn_ldxO*_P1mCSzkma#||cA$0Z=yraxrJNj7YLe;j`y z#)H>3Pu#J=i_pk!Vb`eGk`gfN-vqRXaLyji-|;N4yu_M$4TO%#0PtLEB)fledObIN z51=kCCRkYEj3y>I*SG5?LnLRIW>&RLZs`_Mb|WW0NGTgC{G6^I91Gu06w6cBUx=ui zAG31Q{iydWJC@gMG*GvAEFL@ZFs8#PL&EzYA6n~7^|2HEVO?8v84L5G2?*j9WEq)^ zn%?;rV*32w!VQlITNadz0{iHqu{d<(UnW`Atl1svdgI+w?uYFR7U6)(c=$u88%2>av%fgcZsAG4Tq#;#cvkxTU{tiD>=s| z9{nT?-{T(WUvv=ztH#4}Qyf$Mojcx{N^orZE`7hB3qqdycFc5>P}yf6bdP!vre6I|h{qm-ZSVS54AKG*n>OR- zryYy#&@jL2bnkuwvQ665-DQad97^ust<#9R?w-J35*%ZrY>g%cs7>#_q26qB7&_u% z7(Vn+-2C`Qpgr%rbfs>Z)^weJcrlj0;SJnIOA26W#eIr-NIhe8GP2qz2jCEEm*gk5YX?F3MwDkk)sL$JVV|S;B{qD{w66_i4!l`X*MdUhOhS%m3b)8MRQM`B<4B zPTifcBpTS{L@wgl{_#&3y5pVF!rg-!;!uPvho*n@eT*HR+`yN&J$J7+jw8Q)EB|)IkHVTBvsZE$zuOJlVs4b0} zrOUAGV;@3uz<~)+oPd4;trSFllL5;G_gQ)r+t7*i_pfiL_O}ymO-IQ zV0Z5H(-N!KOLO-a5hjgUg>)o=(B#6fy%}`wdKU~Ia~#@r$+Du_Zvp-3KDr0ql{Vtw ziYtk|iLnH|=2*e;Cp`r#{_{+9Znr;eu=dI;G5e`ck(K7xWYE<^d(ofKP49I4E_X&J z0Whv7*TvE|ya~%c@d<>)yybV0<1d;!9hjbLjL{A?8|`5ECqIj!6Q7wZ+r)~l*_GB% z?g7iN0&ETenvPc`H+aBCCTb-83q{(`uB zdKX`c$%j3X+_TiK%O?Pu+`c1+AI4)E?xv5@d?XfkaMjg`^}K=H^zGOPI+F?1PEL{A zGjotpdQcI6D*@T9+isIe0Zm(rx<{2UFpIjdXy&GH5!+vG@mM_mw}&zHy5@8*g`kp> zejj5g-C#_Jh6eB%(URde{f%#9(^+R@KDX*iKWADbhXOQCuHA~Ul*{Hk z@Zl0(Q}9l$)Hzt$%&<|qCS`GP1PcbX`MOYY%|*p zoeschj9JlvZtG?;_^jjxP`O8AsrxC0U*n3*2r$PVCter>RsmI!zh>TP?M+Em2tk{r zM;T)Je2T+0dg7dt>Y$o{!Pj{u2dQ&t7$XBHkoM0i2>8g!RZ) zktFJZoNLLNnE%XY5GN+EiE5GN97|%U;2*;6iP5;j$KmQO5UJZ8-ieUu@I<`IJ7Ki+NO(bU;Z-17A;B7vEoA? z#mJFIVdy>w!|$CGeJ3g9<;m^&%kwb%qn~g=SHL!;)e~aV0drShgPE^>6{C-Nd;%l8 zT0pGYJ~{n7Cj-o1^e4=I^W5ZCdkB{P`@du8zylLty*)-B{b)>`ndW87M$Db@32J3x zFO>s4D9d)_0Y_ruMJJ)V@4gf_HSv;@5~vu({EvQ=z|<0K`}oJG^v2}7--qUq!{GNj z029fjI`zzFr)#JAz4<1}$lUy&AH(oL_rgSCA^%y(u7fpt;3gOIEaG^s^w7z*-+eW%)-_9NNp1*8xv-VXW;t+?bTb_b$B(KU}gB?dsjB2I2x@%5+?m zF>5GG#n{-tLY-8_8`YuL0gh63J@C&5eYUoHvTGvLf>INf+A}3@_;MRW+T@z`4CX% zNJ8EDA5CHQxmd1KPDF`68FR4rkpEY@B^8%wxQ)&PwfFLtdVNyCTgXH8dOe%n>@Q7J z9CqHLLdJQ2Bx{74ZOck6Rrz^Yb5=F8676M|V)GkbkEO4F1BO5IIeLG+zf1bTRkSpQ3%%i5O3SqjT2-37~Cy-Rm%(7`n{h<@#Ci%Bzzr?_HR9*~_u?(_i3< z^&4)+#&^6O%My5_teO5irvwkOTh!|Na_mxO$1)R_gajKC5(_|}0@Q^dY}tU#FFy$r zC%pti4?Ge>4}B=td`ag_pZ8ldH(X1fk3RD`nEUK!xH^6=^^lpFu_;Ly5}+|Ul-!x8 zCs*pD6F7M?W4Uv0Y1%=f;H=KcSH(e%BQ=}*YPxq}|2-~S%Wf8*A)ibH0o%r@S>WXd~p7$cYToYt~@&*yAzwv}YvXnkHq_CTx5ADVYDs zkEojW{Lg=cndH))dhP3ZIc3-DAO4sC{^v3Ioab>lmfV&pw?SDlL0~xpksK@6CWdm$ zo8ExQSH1$v&p8LV{pnzOD>nV>JFqlek3^K@;4^E+b3psQ9k5G9&DT7K$<>@YP_zQL zGwYhGi<4_}$YVAG!?o8^vE_;9`~y~g^_!H~(Er1Q*m~M&m^$gjQU;_&@3WuA% z>AYN)hCsOlBu9xWBt{fcgS~M)Hz;hO7OSLk0kQn7E)J0teZJD!u;b=T4XR`9*)h{P`E+iit5C)gQsK z4tGZxB+tT|Uw?Z%u)vFwC|!jC7~|vAMvPTUBVh*NjZrcnrT;PNP_HLI%n3wtY9xZ( zhuRsz4h_%H=QLpD$~{H*IeU^akI6kp@q6q}cGcU6!c>CUdLaPl`)xr)>I#Om1XM#; z*)%$&P(fQ)$y3P0I-c9k(kTiBqHvv9)<6tJE;+!gNhePi$x!X^dA_`xy2ogp z{Gor-ux=%np!Qzogih`E$*(#ZWX~<6{8?w6mHj}Oo$bn>k!ug!{~GLsM-KdUnsBoK z(TkO&=Luprx>V1dp2g6<`zID_glfFROD;+7%}I22TZ8^z{*>HSTr4&#`|OVF?z$&( zNLwed8odN8Ty7PV7hb=QW@-trBDp~?OV>y)CtB!fk#u(33+-%TGj6<&vU`T_{{Zwi zZA0&uKf_RRskL+Icf+Gp;$rZ-3$gL#FQa~JF1xQ*uK|`V=NPSPuOu|y+-^Vg|8!wG zXB3^`F)9E{KTk~B0?fr}ySwg=`OE$cpQ|rR;(~Q@P!=d>f97lMu@A-Tk%f|g>EMdX z(|uQ9>B)(8Is5_GaKh8kUh$XYPHWQr_s4+7GO%@@=Q}?~XOF$n%xuGaVgm_KBw*HE zu`33b{t1zSY6Ahcc0Qk*?wM%ktmG*p@ybgnyVPrJnZ*)t;5@}B%qJIVnv-_va&EJ= zE?HOJa~rAauSdIi zBfaNbLynRm=F)rJ_x5DLW!9^I`6c8|9bU5+X8wF3^>Og~-hl#S!`2)C>Nz2xl}ycD zb|uh937$9JfI*s@q1)|?_WG-mr=8}g(aAt!L;;ift1tX!SI@DzGi zTtsC;$U07Irb&RSz2q+h+Q^nq0I^AoZ|)A@6HxD8nVx%UJguWW(7*VP@VPWdHePxy zI(zSjFp>b(%shI@Xz8xm4NYPr+v~3+H!YI8*^MtrF5oo`5Yt?Q%P*yxX<5#Mo35i7 zZ&s|Nfa6?-BpVuJO{eGR?te#wJg5C>2A%@Q1dW+R8ragZ*br?MM#UyWENxj9kHupL z9i&8s^|HZd6)qV=%&N+xqr*k6jeBA^i}<}Hx7C5xV$6DW8@cLHl1 z$7i)^ufF7EFTn}Vc!roaMcErRQX;6JF1eSp|EjUHz``+X<;*QWXLCZxZ#UmqmD$B=^wO!E{C%e@XA9X?jY-{rUUNl?NGIIs2erjsyN%@qD%KoeNOwVSQlP#2J3pTr=yz9_H z$uUc+dGKkXQKpx(M@()CZ=J@>1Uw3d<8bW_=RXMydWw535=(IkH7Gw#H_sr zvuA&in{Vd~MzG?_V`D!U2pj}0UE!FLZ-caJl1=2~^Faa(+LA8H!mHyecxYS@m$F&G zF$S5L%vJY&0$EGn{ASFY_EGdNIFH5!>6u2GN~{jr6dF`ct~!7fa$~~7ODPMQmt3Ja zSL{cm@dcNGZA*ZZC}R|BOf@PC}jbHWT)DCa<)9hSY8Bb zi^q;T)L8ebK-I-5)&hOj2&nNx!KmW5!AdRk={i7A_ zw$mP3+l5{XHFyrTd7@ZHL1KxFOafa!UQ4Frm);Sdea0263hi8e0jzN8b!5eyKaLvw z%)h5C;vk6weBG=Ja}Tv3hDOf#oPPJavGkp%V#$X;O0AH5uJ5(?zL@>)w=nyyud%Dk zXlGGsfdd)yg5?74Vzp!|upL+?iuvggjj3V`AYSvzl42`E1Jy-+`jU~9g&5Y}fK4xa z9e~*6V?M1*Vk1LlfA%V?cFlwN1 z@Ra!*WGbNO-5KB?!GtWZ|1!T#y(h%Ed?@!l9ls8GMFW1-e&V;q|d@b#1NY@r{=7Pjh z#)3n21ZL4|=AGyF%6cJMF!8M_g2iL;_}?6^Vu~PZ&N(q=<@aJ(>fW_Le5bnu0?=S` zn%()(gi#Ts$`(7j2DK;jQZyHgFWNrG^?K*5z8GBsm6F%Jqa}Itb9KETE+7|F=IYN* z!4+Hqla*|B@*lmA>V<$FnKq05bQo?cGAi?LF6HIvvQRi zQL{ZGDN?FC7pt3~6`A2J;@-(L)nzxFfm3I4E>|zeVI{7Sf?AC$p&WR3B9@(IgR zK25K;ovcy-S7!j|pl;6ky~E5No{v=?87Ew6nIHlFlCD#MUj5K^*Inj+{uqh!~i-ozXy zr65bk5TFZRJ_Ag_=fkYPpjMBkXQ6&@QHt>9-{d%`{M@VqaJV zxt^=Sx{86k;IW{xss!ZQsjfP&`hL{;kb6dxcjaq#-H7r>Wqx&{fm4xvmJ~pLvB4O{ z%VNc4E0AUvqU(#f>s9VZf)afv+FY;^-<0PGqJ!moC5cY;v+6%KG=1);tfe`;kO)C# zpiY|;KPo?m6MefNQxuSTk#f3fC|yLf-mq}awmW8LXQTG|++&YDY*K`PiB1}_=g;yJ zXBnJXw(i8l#8BI|!2Ovq?U1&aZY_hs+g6~L!46FMh6M2&Tj+j-77bZ$F= zC5Vv02Lp071bp>uUc((!%+(THo|g}<4a7@X1iDzqMEl2RK#@9KXv9k*gGhvp+4d+XFL#wdQACu|d=ZkCEcVIME=; zJBTh8-DW~Ciib$5{|5%2wF+^@avBVr|VxE!; zR7^kS>RzHts)`FduWTs$j)chQ7;fR%E=Dcq2Q z2kX*n4MoU8EMx;2P{dn_QRj`0>wo{VTZ)pvQ%qf?4oR5%{+1<`1x{i z;arALxt)3O8A~Tm6hbK?$wDcbu<&x-hPn=vEm{~-iC0tiVSvqxhpzd;ILpgth2Y9O zGN_Z^ON@=ROfd)7h$HYh3HyN*qd0k2!*Rab%Qo353G-pyc_BFFw}UHC0SRj zP42Gm<+_>RZYdOEAlK3qXp@=3NY!OV=uGb_aODd~TL7|R*?d~I$yL7=8C+ze&KI@= zj_Td;a(BOAeu2Vz$)s_}as)JiBdVt<>ik1OTKM@$Ziow1Gi)`iN2>+UrJ><9Ral0N z-$~ez=t1%1C}Y~J$O&x&nD@$8I<2~IbB%`ZUj;DWdE96NQvTdQdUSfDs#6&CbH;i|$21<#bHbr!gdzp}3Qj|QOI zrVhH``EO_6l%KPepg2nef&n;ENEAFo)*8iv`C{8J8Y_T8Eg-5<0LbtUB)`Fa;2L#d>nx z0(?ac;XqLakXF=`q%5b z+K5;@7LOfs2$99*h{Q`0LSg#bP&xl-iE_VLW!)Pp1EsJ45|_$rSB+K8=nmDM&l#h! zX_24-_HJ0Ds@xqO8pcas_EKDW*`>l5dGiFpj6|67Vq=JhXk#_&Isc$1iJ#me)r7>o;K$%2Bpq9?3FPAwVKAXFkl1by2^`xS?Th`d8Uan%Yy3Q@vRBGhfF z&)#HqO7sqqpNf!07-fPam4*C$~>f_8JlFe+Ay#ZtZ4GisW=u7g6c0N076@g z+#uaytah6WfQ?ZBfwxgdO^+OQmh%Mat_0cZ>2-2)jM{buZ~yjH|35rb&B=;pYSDg& zvY_n)$<(u-`7@dQYH`&}OqBl>Wn`N&>V2GD%L~|wf{x6S?;6yWO;qqAR+fPb;pL+f zlCu4T@&=CtsSa}al zEG-vJ`Rna;18CfuEiw}f^8TV&N#-Uk(nRM(0jd%GQSasGdzQ^*phMoJvsX~fkFz8Y z?KYqT3F=bh=5*!V%LV8u#WHo3Ak(!;=Qa9Sg+)j{@eC;A8HB#)b?OX!3fvP6?+w(^ zc4c` z7rH1a(?o(@ia|^oCPn{`1BTB~;k#Q)1 zO#xt3lEI9(AfExKVyr0%!ZGmEIIbX`8)fg6P$*i@$vHI)kaOg71+Xep^p6xNV3|if zkoySzc^+pQM7}sPco(Q+kzqmfx#>K)CN(wB`mJI1s<=U+cQn$*K9avJ+dpfV46Jhd z#E}UCj6wC1C4qsB+!(DYf`V|>vyIo#70+ux^`rOD{;m{vPIF#d?YDL0WPp2U}QHb4R8_H%;xzr1#J`%OotDJZh>=$>5axDyyx=XPNGDomedk$V#vrNh>cQ z3$tD~!t!}}J20Rkj8`pGAPPW|IvQ78iuus;02<7w0k8~=8F12dVr>aRlXsfk27|>QwZ&t{ z9SymnT4+d$g-O!E>$tJ{UVN^%)=r_wI4VOU{W4u#pfj8>%DPALe(Vr1>!C?%HP?mw zhtVlqoIuA&)Fp~dKHFi+ARvWqhNa$CRUoF$S z3H>|D{?>7M^|F|d(AUB4LuJ@dG@Ky10F(JD=f#LDr5(VAc9tXA^(p5PkXkZ@wQqO} zn%pp6CeVr84*cTi9(gXPUT7{`)p(Iz0ZL5hS}`=~)QI(B2pEpPRaPy>s7*{v^tNr= zHowOnd-Sfo_S%6wAPt4eb8PSa%=DY4iSD!qy$qq3C2LcKKM8oLT~nAKR?ceEv+@$< zf>PpwHFrRX+7=6g0>z8#Q3In5o6woOaPs10YlxMN7Uo5C6~hC-?ip#5a_ty-vBso1 zl=@iFz>5lmSg}lkUTqv`^)bYis|zM7>(`jjY9fRkqEI?EAfs&y$VBn2CG(hohL07f z)Y*h3H1KoO&e16GpFwag1Cp$e^}Q*mc5)A$cPoU7a(|sGLwbl%j{^+I$((yHuE1#S zxr}4I&W8dMv8=pvV2RxjL&tWYfN57AmaXT75P$JlJpNaQW)&+tqDGC$t6ZB>vkVOo!~$>xyhP9O zWK=^^<%Lk!p#nDu3=Z4aQn6HOotD1y`gR`2b;r;d^x*~$95K^k$mi_9K+s;IBqCwb-M;soZRww$YOHEKCI`F{L8kmeQ<_Kt%`+18m7hUKJvoAGL%Gl`P#Bgj` z<~y|K`W`iKNwZa3RA5PZ$LudW~oo60z|F> zh+vToMvB=ZnlDdv8~^MTWJ*~LBg~>|LB1|Ow{V0C=-O&t9ICh?j`JhIqZ6a9LFmSh z0v5#eSS8u=&;&s#BQF*RVSvWjsGJ1hlA3P3U0az#?)_F`50viLcrO#I^qx3YEow}L zp-tJ$5(Z-PEMrj6T>v;Bu)f&z<~(_m4~9xBt$5Xf&vJtwxLnOAFb5Vs!<_U_(${eEk&^WE>;06b z^gJbiu`aC+Fe%Wr+ev{+T^c`;y2=aNfzp+_5igbo=$3*oNYGv|23WIu%QOdwjpn{= zcUOLVxsYc!<_+}mgk%E%O=Y-j5}6vjyyj8gucw+UnseE*fr1RpNWEXR5DWLIOn425 zzHCw{{nTLQi}I;}vE^S+i%EK|=DR2ib1P$sa?3M|C7#df0b9#Sgflrqg_~tRv+SBz zt*4f~Qy!ev6M$MEdD15UVeW}=f@|HsRQjOTyZW{3wUj2R#7>`KpjxW212r6p%x+j^ z8teYKvoD*kc)6sVJv|;#xc>;Ts4|e$JULSwWwKQu(}1636RapM1hN3YkMU?zj_SZk z0a-OeD~6(V-Hd$dc3cajP=Uas(Ev?0vjJw7jVr)L=%gyPnPVg5hDpH2soo?* zcrXK8D5C)hQZU{L+(0j;t84)_2u@Kik|#BNLw#F?R7F6(%u81&Zdc}pv)whRUZcI7 zQ!nb+sJOn}7TP@!EoN0)TB%|ns`agjm_k#33IJzp9Ldr;GNBFT^@L}YyA9V zB0JS~yOkYy0w+q3U7`I-H-Z(+Md?GT9Bl5-2J{`hth!Ng&!&}V%mH!&?$da20h}wm zNwWiKHBWdD8#F|JCgZ3_`RYp+f{j#m~#XQQn{Y&z5`#W;%*j%nw%|a_biTASfY&Cc!G3JegpIF! z9%(}u0U;aX$6c|@-}oxa^3poSV)PGZ^McHsNoO3(Rwn3|)Hvx$PR(*Vl)c$%Y3DXt z-^?}|vWYf40Wr{2dKEi>!`{qFESCUxwR4x9LFN4x)E6-$t7BY%=fCycq5`$M_59EX z4GrIq!6bq$51dv+Am0QUqJY2kdjtE)uzt=?(sQrO>6%$l%y(IVS6N#|zV4{^=y z_$N&rz@*f_tJ){p#&4k=q~n*W**Z~{Q1c3&v(3?Vd2)DEYXTfN z$q?Pixzfz;jhqQ9)=m~s5SW~rOQhRP1S1l`dcveJ=+jx!CDT}iWaHxMzxiBUxv(E<}UX&BvAvm?%6Ea)yyfJmxuz&&JB zsR{@^ZP6^&69GJ)Pq{M`JYQKN)l3?kIs^POFEPTFRQ^y2cXxX zBSWqXR!$lSJ0KQU3Y71QfjT|+E`brpdNk=YgG&pTwk{zL5DYX=|0XRDvRiV#>)NjT z`reNG@QIt`y(P1q^2}xdb6XK>vplyU>exg$FG{*|oCfAT$0GVz5 zCe~Z*OXeCUs0(g?s^u)f=yFj;-D?SEH2y}?FeX7&fwfk91q_{g`CW4N_I6S8?tmPn z2H5J$5i}$>m2ls~G=7;VK$2jNO{&ygSyw(IWvoEr)52vfFaRp z8ci3>yO@0Xu4rXZGc|tl6>p-?kQ`*F~nbRz7 zR|2>Kl?c^)ft#{clK95jnhj<{k;IUkC8OPwo0Z=8=1#2{o74~LjO6mMh}kik zgi7rwW~%N>>f~S&)OqP|1TgF|_LAeg9e@o1=b1ul9{HscSeqjNKLnS=EUI=@0-(o) z5e;dEtu*v4gFddzVG^<2Hx%FR$;Qz2lLYBv{p6fLLZ8P;=dQ`29pM+0wFDE?Z7S6^ zh7La5F#1t&6GofTXCaXp0@FyH0W3evw#d`YmavBez7sS6HP>Hu60i(Li3Xs}Rt$Es zIg{~(A@D|!XUo06@$6;!D}|o?VVukR%Uazj>v_L0{R^nfmY|7M?p6(o^VV_Myya%i zBP{?9Dt?09XAZEnt4HL4*#ziNJMOvdMWC9Zv}e|w9kesh?irZs-WlzPz19vFDx;|^ zL7SV+@&2BiEFkE6zv+z<%Xjk-)m{->=qckEr(k=aN&%(qOdRPrYuH#_A%tidKl#5v4W&8eC<1(te*V1$MMk~f-lNbV5< z=HXBcK|Ps(-)rQJbLYO`5#+o0~SJ; zn$p-4sDM*dxQVpcWTF+J1jIIv{-}AEBzSZZ+$fNv>;Mx4>ZJ@2SFbPq0kim*KuyaF z=EY;Gp~h(h+xQfe&CIc)Ztv}=Be%3HN_}fu5<7qw>Z}GpFv*v6Q5IQ=9-plap@UBk zNB~m11QP4ermX^rfae3KT8P61r>5KN zeeSk3#08gE4Z(GP$W~rsn#=mxFW--ag?!omLcYA**{DoQL1zs!mA$RmjVcQ!^D04G zMwx&8SIWkT<3$X&1N&KNlD8IJpw)BMX!)#sUsi{)#z*No%$3P(G2sMjbE%RdfQ`5@ zYi(%GM0uh0%(*KJxZs<4Lo&^Tf}_;HV+wPLUwF63v6F?tUZ_L~^vxm$2$+4+5bP%^ zY3nqDc7m*f?bn&3ihZpPEkg%@zPBR~@s4JR@vi0X@5}L5f2myi&wnc6*fFJ734pJa zk*uD<=7sK+QK+_seH(yrwd0#%BV?4R;JkpZCl!!}-B21nTbV;oKmBz3{rRH$G@Bf# z=|T*BsTnHPjakPZi;y8H)Idy#e1*?*B80v{C2;&rg=l(nEW!|MLuVBGCZaaGBN08s zS_hBE>iFI#XJ@J|N;agc)|7+kfJCyvK%or-H|zS(Y(@H^97hwqOEjA{Kk@X6KAw3_ zr6JM|l(Y`?aMgO!k_mLmjPPxv4mRt=AY|z8i;Y_cw*n59i&f8O1!pQ*R_qZxx0ZSi zE>48DBldQpo0PdjzuR$4t%IWe9~H1J7YQ7lpiTNQNs)9LJFN~(ZbJmI2a$^+jNFfz ztbG!~3Xo9{8AV;|gK>Oab*W>~PO3>A{3>ziDq`U^FgF?f0k1qz!`jvS0J;uXEeX3! z+A9Vyz0{a%t%EwJa;F5_0sl&=;wS}tS+PbRh#DyCFhvr0} zP6vyG4H||>jP;w-E>o^T1_ih z=U?_fEuTMsKKo#6MQ>W?+B0%PCTxbmZ8BL9z9Cq@Byl3g7AGT{k$12~B4()Hat8Ws zAZD2$VdxTzzH3F>(Arf1j|e*^dS7+{JIm0;O7&Fp2$3#9S(zeSq_HKg0Rqk6EHF_@!p95Jt}3< zO`HHk9N@|D!fN8=;Ks@Jb0v(Fy(q|v4sarvqwh^}U}&=iP>Tef7<t6=->5c_N>jZ9)mj55;^LV9eb z3G@nWYEnp;t7NN5=oixBCQ|BEX>ql^l7;O2m*14Dzxvw}>UotoA}M0MEn|RCAvQ_d z40LM72nI`){6yM^=5C`Es*ROysO`JhTCX-^OY95k?bxJ8umMx4T9VC|eTl>~H@7!h zJYe=6`#H;sX_9$3p%2XoYKeU>&?E%(kW6MK)x*A#nYm(vrnU{Cdz(X>X2O{A*|`11 z5{nj*rZKJiKu>K?As8nh8vw6pNHQC<-|9~d8Lx6NKbI`LpvW4y7fve1~WdQD{Pa;*lF@G^>5@WMy@sLb3 zv8e-5K-CFAfPk;v&^=K15KmSpef1Jn@xtbR1HOA`jUdQ zE`7_5UM@E0a_x`)NS^$+|DmWe=Mpw&LP=kfOU(2{ng$AK?@`Na&JzoiDcBBTryF%2 z0#Iyk)YAp3{Z(DJ&CIAv+LdOd1_0}~+1>X@JbkLrqy0wva4tP0lH8v{=he~@$Nf=Q z!BY~ldQ(CZCfv7RuiVBk_A@q3fWiHecq(TzA8OG6NN1q_nJxDue#QMoBDgQy@iGMo zVgP~)IRkh?;MiyuY=}8Kf}#d9v2xR9n949e>W=G-ciwqt9zG4tU1)*T{6V1G+uN-b zyE#81H(+YRm7$&!?L0&00%?$RJ1+r;(xl5Xl@vuo_t-Kh{UKuJ{E%$+XYI@~6FD%n zM^Ja<=5-f3_mLeK$i3nT&I$SmV)QsW2o$Od(n*PI(h!(AK1Kf~v-eVaGgvjnj_$kE zgl}QuhTMA+szY7e3V2%mX7o3t#8M}Evq=Jnl@bA*=W_zM6@bY$!=t^|+KD!4*GH$O zO%TSAdlHjcHIPQnrodxB(9ekrwlA!dlNtGU5E{$?zm`w6W+t_U)GZN^ITd4q^MVgd zt5Q-O=nz*qsf;{$Jv!ZY265H7Lvg3(W9P+%o*#jF>(d$P0MJE){0w`*fOBy)c2qL1 zk@JkwTATJja7I|c&B97Rj58(S%$l!Wt9{dh1ryXp3n9aGKs75jh8}QKLSF+@n$q)` z7?MXxML-xIFkGOEnD$sdoqpTS*_KmhjJclZnNJ8pn<@(fLMB^OixNQ~)u{?hQtk|A zO^s$rFnL6e8lga}5z&ouaepCC{LH_Toh!R742Bqh0pr?EYZ26=QCy|%&AT-~8vvmM zJD}|a0!d&H8YAebI6?)a0=FvlJ9Ad%ulN!PC(ktW!I+K$0ArjzWE9zuT0|Vj>|#`^ zFeA7<&%j+)Tis6X*=HP_Xdp7EI8+#3g@O#>d$liicV+vlUn9$_yGlO+g4q zjg=d96R~21$>b%W!nA`voq{SRCsH?wA&7?(0RaIJlU9UGNuF5!RwCbr-XE@5v-P5bMlUOJtOSXSLaviv?QE2AB`bsd z(~eF-D4KT5OD|&&=uFjWats9fs@siDX-dyeGCMQTO?XLrj+(&q5FDtmKiifSfG%R`qEEJd6G2)V6%ltrA{-uf#j<1Wj5% z71*Vhp(7{oVQ5K4r~0)H8rhD(BA|n$tcU4Ho$lf~&sl9W82~9+G>2?$?HoLED0|}O zU3ZGyd^5l@%FKP&Vob|!BE4!}cDL#_ZT$p#+4F)Z{TTqdk22lZ@~jk8>c7^CRzPFgbO4j z9sprX0xM|4fO>`wXarqe&z!3ScxD|Qq&pi>yq=9%kcjfUIohdYsAOj@$fA(w#SZ$l zp;R+w04r%kKe=F$CaEK_#hB%cInm}u?CoRrr2e4R1_GmU#(Y-2pVLbH8(>Wuz9jn% zsdX(??X0)mwsz37RNV6Npx*aO56mQxtU+>UhQx3{5i!S@NVYndd|ON&v)*&2+HfOD<~$E528CH^f=m)b{wev-wE#;ioQhXl|-S};X~X)^mJ zO3KJt-fzB0e-t|DpMMZ;A~p|*5-*0aIBzNNVoH1=1` zzx~}eN-0IfD%)oy7hpEKy?jodlsKPBH)7TegrG-j-vN#Q^x3}AULhR~@XGJ|RI5I| zwXvgwtlejzb{wmRGClcRZ5;C97@}`0jo&Lj79aW$Z2hRI(W9-pq%@novF%ZY`-1IR zycd1UNj^JBA71SKtM^{K{E@xAz2@UvKB?d^(_d)&MOI#~9tTf7^;GMF8iehied>w- zCO2R*9k$T+NyVX^<97oQFmUuNqpA}~ULT8QSZ@jdcTB2`>?k2TPk^U8ZfI-~1Ql%oM2O&Lwt==6 z6%aZ*ByxN?rEaqk`s`7HmK|Tnk?916{plr9D&p?3il`<_&486$kf1PKL>UB=!)U-K z>7lu(a?7ioQW0lD8%4oFQOwzm`w8vZGqYgeqNXKQ#0(A&jeo8-8xEYAy-0|r9*Ag% zdNn0u7_^f*@li0F4a|0klRJn*o&y*@%0W{B>pzq5@+a zw6ExUqu`&SFa^=p=aRd9T8Op@nfF^@(?OVG@4NEF3(PE$<^QeJ$d@qep41T&#g^K)q4}b4qT+x8)}iN zz6@<2tw&4k7l60Z=t+&YmQI|KaPu7^FTF=*uY8rvUh$l>A-dV`+?8n{+S z@~ZlCPqx3}{zg-IVoI#%e_pyMv(slK?2s)dN7o```cmc;(6!b=oTTHa0e9AG&gF`Ocef`s&RPzCdoE z)OFX`{2)c3VWHWpwF%Ktye>o$6XojD4rz1_LvJa-YWpFL{lRIeT}^~EB&>iL3&8=Y zf`WmFGbA(CT`+KAa3}N@))cXllL5%qSOXAfH1C+&Dmu4wm%l#x~UxD~FO~nZb ziUm>ycf@W~0@0-%v*7zaSfIs#cCSJ=NP++g0~{O3;c~+dB33sROi^}^x26E1J~NwX z#Cz+yfcBVWFvf$b(C#N73~VdtgV1LKBx{O-I@deX7Y2&re`Y3w*_nSrGM0+*1tgy1+) zs!^q{C$2S9Q$)w``0mD>jF=A`Q+7_ZVXLZKTOUa+rgNWXiXWX6a7t5p9#Q~}R~{Xk zYQTOXoxvb8MS@O=bKfTH8#0byV1g}guC_*EVwW&0Y32Te-w7&F-8>X1pzLG};mqt} zwJlgPGSJY})m+y8@>3UO_m3Zw@Z#HK^GoiNSy6|^>Rq^1)S_D(lFRRW{A7{HY)d}1 zE#b^r2{+v$v)js6f6GfGzW8~k>D-KLt-Gi>G5I&j;Lq&HxgWADR0Ji+qnnjef(%eeeGaYA;^|4Fs` zlC-lU%lVeP=(p_&@;wmK6u3EG7V7aB;bpT%M^-`d)m zz2)SIv$xD=Un@6I;(496Ig1z&GyK8{%}Dc5DmSS|?vgP+XI`}cUJ)A()if*MBPX}1 z^>{d1ovsFp+@x`|kJ!fBH%-Rc5w@jm?x~kYQI|-c)DF0*-CE}aM8tXBb$bK0lxHty z77HR$FU)2gz&5aFAdf_ageNlQa8qApWf_|dAD=PM>H!_{iB^Fw0WwYtw<1-t1Zl}} zmlE7K23!23!yFm@CyEbRJ>!fjjt+=4<`L(CD~mV*fUDbTb>N@5_}g;|ZpnFvUR@)q zrtJ%~yVG}+(?~iCvgMyg2 z9#P8qu7R|{MrHP#fVF+n*;6{sKA0sZGWlj3HtY5Yr%mbkOwpkNlZasrDqRH~BD2xv zYFc5qm9_=p=_X1GNPpY0>wS$|{@oK2g;B8C7#)j35+8PZD z!Xu<~1uI>~4isR=ihU^HSVkHNlL;pm)@gfMVb0sS58MZ0-`iu~le(Et-`hn*R&3B( zcXtyC6Jt0V+t3NJjeEepzw`TlAZPySJLK$-{Y%;Uny+nva5wLJmFz!K)S@5%xM;kQ zAZ7p@-28D`w7xGf0PaCkjt}na{qWCUdgg-#do9XmS=FCKShl3<6LeXp6HX?eB(1{c z4Scrh=S`)Am9}R zeAvKp-+;+E&>n%7hZ+|rbty?*f^BdDM5;Pr+i42ipj}pusq57jY``^OpP=lRCHs1; zWFjlSRnkSlF8~@OdQG~wEZse0&Ohxsw=203U|)9D;y zSQc73CX8JL-aO?%Fi%>nxd0}j*1CpaixkU?%}WB)pg!Gw+-boY7=&0sYzZ}r>SwF@rqb#abOj=flpr}Y@^SNZl@K8$Ihcdef8f>E=^F!$w zIZd`d0m$q8Ny76#gKLAT&3iQWlqRG$rROij=m@Nc8TH!)FrLtNzh_^R0b2+B^97yCG8b@ zdFw55>W#0Lljpun(zDl~Ny+LoMPP$Y(Nj%2;_k zm3~#)m=Y+vI&onq7AH59%)Gsbzc(EYP`GRxcpu~pRhOQ(iN0;m_x&kf+m%#Q#Nms- ztVtASx4#554>c+;?Ec=va_JrKC~DAa;!Dvo(06cj;{#n_0tdn6Dn0w5r!M~aAAS5& ze^kEi7D?Lf<;$1%q{cb!61ME=VaxX1xpQ*&-FIheA=0ls^UO1UvcLbcaswr9AOs9N z>#T2PI+CrUOdp*)_hCRI2&164iJnCm(?&NO>c^vU0K$bWCKaHhfCs{>RE$URsH9{T z6$iH{(OJOxh%GWUs(Be@%{PH#iGj8SNsq%wxpOkYHcMYTkp2ibJ)7`ZRfzQ{qt@nhuVY6tyR%}1OTysxk*)p?LcKnPFr77)eO+q#L^ge?lj zBe#?F#2cM9bzFq9u-V2X12qB(89k0<7Hn<=ClMtB(B?+sd=o}bGNwQ`f~ZGVHI5cM z0s5Ydc(dyQ=gqmKHWVPQ4UlV}H?U;HFPk%g&i~v&8s~WKJ6aD4%z4}61L_&10!E;# zYrPTdj1kDQQm|zO+mLFg4F_%gI)gE#DLtP_8G+6mS>yoNJ_O9^RVj{iz*aR0V5H1L znZ{FL=ICuBJfO?j)_8`fO_`c*+ocBd5j0K#0!Rcv8W^BfA*`y#@J7U63}F5!<QXMSFm*LI4eXbXE#Y|OvXDx9^;J`m|n5F!SUP*E*6l8J7W zvKXPdpAMv28emfQKfgaaX$1u;W-QA(dUTe0f3%!o4`(qjGwHoiL{+JJ{dFC$dIo7d z!~6c%$ktoGOEzBpl`^X~VxjM+q{CaUJ|`!??{7=KeAQ{#-2P2qPn;Hd9hzWaK+c}n zU;JVLX`etAxq!5M_Uu`^U(M0@ea4P_;DHCid*1V&aOu*erusa6`gGjg-EAt+`uXVo z-ubtlKK<=crED*FQqP?>i%m8a3=lxYM^%jq5oN_@&A#ff7X&wIY#&X{BqmbD>WI z^7hPM&t|K@MM%${29kmZ%vq@c9qy` z8#(u8q;Z&Ia8${ClUntLbu=;qgs=1=)Z-+VSyogL<~8bU{j%Fg=us6|7XaJ{kT#Rx z+BKyqedejFyu6%9qzA1PlX&%wm^6m~K!koc?LO#OrAO6_fXojiVOC_2E-BN3oEd;K zHYbB^5+*@`u{)fRnZ;(L)-j+dc!{i1D;}YOs@iV(iN|F3_y3g-7WhUF39o^{;$a9R3x?{{H^r+O=!u`T58rk5p+|HcWx6!|Pu6 zy7Oe^rlqJbx8%ZZN2a1cm4HOY;L|&Zh+J_>YyMcAvhfa6zW9H zVg~c%HgJ>D4^3DAB4*I3038D?@XisazLVNGF`o!9lA-#t&=w3NmMI9&Cbp*6L69!_ zvDJ*KEpxY(5-jj~u3DJ&P1M#vaHkuHPMqfbSW!I0(u{=`a`&{WziEFb_IfZt#(r&g zXd@<_(C~S+cTkKs$pR5Ogx#v z=_g}0Joq9|Be1fC8vw2V))efsUkHeh3+peC3P)}{!N8XV-bGpZZZ>srGUH!>YTDGK z?oF;hJa&mJ$0)e74Wmj4buAgx!~0RCwjm;D=9H%N{3Ht%hc?yFNxA#(= zAN2_jE+}yepnpl}A%m$aeX|84;__9xC0)v%H3S8vb}F$`22sJE(izRB)3JzfJB&>j z+`_Nlmj+Agnk&Ed7czh4E9KN%-XxnZxxF4mg#AG@=s67XO`ed*Sc=i)!2Kg-I5Tx7 zId^M+r77Hh!N6))Viy6kI53t`z-F9cP)z~Mjm&w^2B_0QrL|Pw22+#N*l%s$d&QSY zxc7dM6DP=i_PxQzw(rTd^Hm!9(T~Ve-}81^JoQNkf!mfE9C`FX6Q{lx8LAR^`Zlu%?1rze?nXoyq`_|qnl;G2CoZ`zr_sN zH3URz?z;ht$?SeoGP@rU2N)WPm(E#GJPex&-RQbSmH>RUjck#Hj1GwbZH+Q)?Al^> z0c>?@nJ7dTE9}qOyOCU5FzKXnUBOOHz-y8nFhDQ0!kfL(k}3hzjl~7jr`EAP6GJzU z&ki7A3G{r$ykHS=#inYvdy_sUf%Z_@jQu%QbhS1Ed9kjr_rN6EBGmV^Hjxsas^YA` z!3El-w<3chw?1q~Z>0`;+L=x>4LuQz1jwr73gAl!N_)Q;kR=EQUew(rBM+!rLznc1 z7R_9_IFnfgG8SMKFqd0P1G+i8{)r}g0CS<8PGV-x7Hk{AWn$jR7#VAilP30!3jcbE zx4V`n8?`AtkExN{7%b$Mk(VedjA~03V-xEzD^OBXgg!^bLUVxRf!+(~i(w5igZ24@ zH7o%(oLs5W9TB=mf&rjTDI@j(22Mv{UebH%QW%<)5RBv{Y)b1>h5650o3ioR*U0HN zyiVfAhRk+%Xcz&TW!R6A;q*>cttbFhI>3=8q5=)3B{K4%*C{F>1iDr5m2z(b0b18) zn%R&^N3K6+lB zeA72bJbA+H8`*?G1gF_y3c$PPO znl0b=zV|Hy)Kf8MMlw;Fyt%oV3rMTF()v4<3~~{uH3O-Qjg9nApS<{Y3e3AKFL0s| zDgYR@PS5Nk7dC(!L;bpdc)6*7utlV9U}|F$G`vORIb#`}!{DHT*j_aLN z!MPfPx-`1M?ubHZT4vw*ebyK)ZpOmx4BbkJx@r^Dfgo7FQ(KYApt9rJc)*NQpDaG~ertbA-kbNlLQZ|( z-r@_S;vV{b6~5Q|p2@0T2r-i*)Z0N@W6s zI>83A1?MXpuSImmrqAcv>$Yf<0XKrGcBDq8-W~_w=Dxu&u1tcSspY-Q#syTBjzIEa z8x};mZDY>414b7gteK7GU^WkW_84vIFhO~(E}lgKh6n&+33Dh|H26SCqVDW{V+@@b zbgrm#3seu1z!3{-z*^0NUP_SviV`7_&MZZoRhPTOPWNy~k;Fg;$z+RuEh6U94WJi1 zQ4p~=3_~ZLViy2N^m#h`6381k0MRqGu!w;w;yk|~1zuRONzW9t%>vXPVb=AH0nZ0d zpcU}e=Q;ij1V&Y}H+2Q1pQdhTFRHk)fzD3MCYGohf6X?78;Y@@LoMQQfbr{vk6eXm^l_rF+};{6tuf*$#S zM83V6Omjk-O>Eog0uXC$|58Kzn3hVoEwGASbg3Mm?HARZH&2AHdYvvj7F+9K?Hl|fNIm#*w*#6#k%I3>osWe!(d)xnX zFAhB;fYM)o`pWnJn~N7eQ3PTHYD@gh7cXAS7cN}zwjLRE$et3m?l^bu-0bP6pN{9x zpKoD0PMtcndF9HL7N(EzM&u?2hWs4T8$7N^seVVui2`_ zD~~dSp#vUbnGE193KU>(!Aq?MId>BdLAxP<$aFK^-ED^QC*Jf1IrVj~)pvLI#Z=(rw7_06{O!oT37~hL#q)5^wzi z319wIBDdbgkw;OM3IBKZyBUrODT4S24JPR~;GCNZ^pmfDz0B%4ol!xj);k+Gt5vJv zUOv3L_fv2F(+fXYq-ow3t)B6y@BMyz4=0`95)FV5)KP^+5(v+q&r73+LB$|0JW@HHBOc)^L4H^Q73IR#9 z!woB@6?p;aJMy8;sM+EI@bRcUYFXOWnjjlTTsCg}5t3+e*D_5Sa(&=tpGtPac(Y?07rllX7q>U3h$923WGL zBv5UVeg#1cJJeuaBAih`)2c9YAQ+-9#ift}CV`E$a}a1IMmS)p;GejCO5*FkS@Ij+ zQb5}6LP?!KDrcRRMR<0#sx~3tqjx^)+(m_As5zT_E6T>pUM{B}cy|FxPYZRWlrWmN zd#Ue-_x69ffV7{c$`cYb^YAPn%~YW;d)doUAAVEvuB4`YDTpo>L^r$j)?4RKJn=;J z{M-Y-bs4HH-A%x%!U+%?M{WS(W6m7tHA@o7Au6clBCP9e%l-{?@n1=85By_x4n3 z1XBi;6owTknHgWu%pv5iPL%EdW&zeimt{eAD0ZGFoZHyWb|3bxt#J7wqL->v9K)P)QElI6;8UB2?8 z-~I6mzbqQWwtn{T**$sk=kuimPYCF&c(w%myO7KUrnP$*X0LW$9`YfG_oD0|Qy|qd zwJWP;K!oixWv+o5hRk67S{RTfFoeWxztndg<SuY`din&W3>pSKF zPl+7{fT~0Dgv@q7LmaoFo;2kr{suZ(mD(2-Z8&?2g!|7)c*z%bJ7SN_+^?=eUImSY zXmfXr;0q!5-=-oT0K58q@5v|Ri9h$15>IRigLYp|a{eDZ_Qc=+g{PmcL2aw#tbws2 zP1`Tp$*S_)bDu@QT#JIa%w|o7Kuu$+>6EE~Z|g_2KkC%kDEiZR5zQG$!{7RuSHM=m z+I&8bzkKH%-}9>DTW^;sO=(I~n$nbRutd+}7NalsU3bM%N;LXp-2&5!*S1JEYFANL z55=T;E*Xo{q;}nF6n^jBktQp?u@h~iOYux92Q{O`QG^svg-td0)+>cw_!SHUrR3z?mHk;wh85xMhj3$WYTZKol0nCC6=eL!3fWWBVE z)w40kREu`+eGdaEb=&=o|0ckc#>SgvN>iHBl%_PL8ze=ZKH|2%80n#nkVYoesXO*kdXQRd-Z3Dg5{`@l=%{(j za0(3%I5G7jERB2=|3q-Z!0LE`szDXwXz)ZHBSi-SGeJvYYPK44vq8b7@WjIoh{PQ! zm%HJ9K)t;bOI5r5Y+$t+gXF13+Ie1C^7^}HN*K# zRl7@`xZq<@qVGdAPgMBFLvsu1W(`(bx~kR#F`<0a1G08AIPB`~ zOILaJT>8ztBB-NyP3YH9J!P-_*0;R%!FPS&{SW@{XP&(*t6rUSAZV)36DLmW&1SRu zSzNkwsR6YbJFR?D5tOY+(|nDzBA7(w!8nkrRWLTM9-zzRvIf9y!ElQRuYxrm;yx1x z@V@=*nLEDu2Y0L8DlTZDh4?gn2|M9MOz3W$g=XZYRGFw`-jrCZl3e=jktO&UF z>nQ}sk00MJ7|MX#-FM%;fAh^ZFCTvRVXyLB57d|{P;-AhSfko=E?o^usTw6~d?yqM zTUaa>;cW%9ef{xc_q=Lr>(#f+XZIYB;r7X%ZAw#`(v+t3xlI5Fo`RiN21G5V21kXO~A zArGd9SA$wb^z!~^B+6^gFpCB{`&_$@PR7@>*RuUJjhxW zpth{%cNT%xq6oB_iqnI%TW+~!|H&txB#<+&&sJ(TN3-(#{G=;rFwJ%>qPXzTLl5zA zc7ip28fb%LjrV7zg0WO^2-vJV_dA#Gt!#IHZP(%5!=4{|-`>MJ!{-9(VdIMqm*IVX z9rdtwjFjWSy|2gcoiOr#z`)Cze6yTaKE$BY6(5XV-pv4{bXz&TfnY^2lrYZ}gfQ z|5b)ldcW3dYsP!Djd&&;GS61VPx@NoceZU^{?q!GY5h;@e_H>{`;g~9m+L>H9=z5- zRz1B5AvhR%!`r4+yR`kQSFiFK?b3LrXW}93L!cH{dZZeym5<{t(yh1Nno)`6ZMWUF zQgA_s&8-w@u_DLzx1z}Ud}$2zvsMw&iLfH#^Npmu$t z+nI*t`g_Cc!}_{$Fat^UCF|oGe_~>nKdz-bB$3}UO z)_%)Ka^lgz4`ZuIS8>h@I-Hk+H;x@Uwz0Fb;~fiBM%h)NVelE&VTi2l`dIxOA{RWf z!ePu0a%`68ymJ{V9EW>nSU=;u=ABdJgdXFv+=z5!^oH%c$eck7?)A*X{?N4-F!Y{ZCR7|${ZQgA_Srgab}eV>^B%T~X-#>-<+Z}$4(?ew!@9^|U5wOgjJAx9lT7P>r9RX8pVq(2 zV_N@%bOWq^G7rIn?rM`(zk9p1f{hjh8+qVHfVQ~z-h0!1_uaRA@WBTg;B(Tn19p+4 zKyBDK8GyASS(`on_~UcLSED*~?mkqNHn3J2Fw;{LB$n?|z6aO2R?ryX8Frcs7WiP2 z4F@UAJIWtUGO7j+X%0*v(-yh7t^|SSsP@8IIko6Zjufc-nugU;urM8 zVMNsT$-0eZ_})r8M;8CEO$X{act-|=ArG#H;bI>?=j%8!#v%v%bnL!}98me#2II;f zD@O)(J}_1zZO(4YeI3WXTiuu(Q93ZE{rBPK$Lu-^*=~A!urqB+gATl0#`MPJiW<)nyjig3DWFD0+E9;(}rr#)-DZcuTP=Hz}D$n*@0cmpj^y&P}GtcCDn0q}1zKHp1!L!}nU4pfSFst2K&5|Ik{0;zb z*7=7Jm-gL(yx}{x@Hrsm*^Kfmv-*Bb_1a;JwBD=lvn*Hcf#jd_lY!Uq?n+yHJ=}LI zXV4}Y)Jt5O{N$|l*IeCIIHlJ<2 zuusS40`hLZ*m_PKu!d(t(WizFe(-~{M;>`3-f_nr@xp}*UV>(-&m!`RMdUXtD05yKV2%aS z?c#zTT(=OcUhaArOw#N+Kllm7fe?|g1u{0+D-(9)z2V{rV}y{;`uh7e$ZDStC+=7u zth8;UE}n?5)N5p7$)Jsvm#c$s_gLO}U7h4$ABkVQ;t1ZLJn?0^#UVrDEC{sqItBNR&F8^dI53}NOaAM2m(G26Q$oH7Yn5m0%l+2YKZGfNz{ zo~29CmR0ce?svbN;5Uy+(R?}-s105W?k@pXyz|aGQ$W{xXlV+o0YuUv!xLY ztQGJU3V3VzmG6S@!-XrnU$2#ChS%zQ_B`?twopy3$^|;@~;4`{;fc%Nz2OLWz{MQ)SNGR z(Tl2c#PW$Jo><;<&pqk<`Sa;@uX|l~L2Zf9v_U-A09Os&@ySnqGCJv6 zyy>Q!=9eyAq9cKit5!i%*%DFXMGmWiF@||`t=FVW%pZZ zIr!_}Uum|>lXVk0I8hHg%X+Y!HP5llg0|GZ+0{wV?v=U^-}iOFgc*IGeZW5RZLin- zd#tOge|B{pZL3clFW1Mz`uo0EDQis`;`(!VEw3rZ`p1v|$ebDbE^_oZ%UHVy^Ky7U z`~Do{>+5UZ-B^W@I@t4r@`i00-dmY7u1*Km%1FEX+-~{#c{lQGSl3S@->3CIt^aBL zPwQXg#$EsZeod69`N$USdjV+6ix)2@cinrwHgE?VmB%pFSPF7P^5=jK8rJ?+Rp`e) z_Oa?@;MJSvNPyq*eZ`3oa%F|{A&MJQ0dz0l>6+f>U7W}&RnGR|9+B#ito7SY(pQvLPtJhI^ z4a!@Yi^KXe`RDP>+OpmK;X)bq_kp}+q)oN0XtSRytSjryKCwJL&Hfm@c2r*1Gw(*O zAJ}Ntt;eIv`!t`M*8jBrr}aOr{}*EYa~|arCr(t5l?t9|;A?w(JH;4NQE_^3*6y7< zcdpv?bDa5+AyAVe(vd)IR+680 zXvE3(q%|+ALBxofi zfTbj#W_r$(ZGZp+kfE2d#Zt*;gH`~W2XRf3RvHyjO5v%ep5pUz_UzeQez)&MbsCE5 zG#Bxq6!D>zJN*5bB%jy1@`le1t{u8i`QG6D;iTs2XYIL~{5z;u8kV!JA4aaP)Y09~ zrN5>2H`_j}!%?Y@SDgnVZS-Z==gcYPuzWw0vGwmBHipBty609n>0y389nxO^ZYb?e zZhqIf6~^ktJY71#)gRS9w#%&{mU$rmdabTquCG2XhGmc3v-x>F>v3BD z>+7`U`n3LKTL07fKfDdkVg0v0DflH9P-een5LmhXt#)YDqqEwf)rcAH{->QjEv{gA z)Ku=`H4oVMcc|(NcieGDxNzZu98#yXjVkZT$h$SqJiK0?t)TGn#~;s!lyO*jc5h9& zht;jUd)sZd9Vov(=M&%I_1SEe3n~w;U5EC`A$1qLw~`Ob@xKS(kIbCU4gX%pJH9QW z8{Wust^TO9e5Pq6|Ihec*Z$GD#XiS;6ghnUJ*T>Hj=A|h+~8O8TQ^q2>xVs8lb^RE zZ9l5MvgX-o{ZH$ETL07fA5AaR`Y+NluF0W9%|O`O-uAZi;DZnPd#2*_nT|x%_?)Mq z1g(8a16s(AqObMmgtkwSzExKW|JfQ|8+m4UZHw3Hr>I}I{I#(>)?FW7^UtmOzV02? z;gEc{*41HMI|q4h4a+#JePew#@;UVSntnS_4~)TR9}L^;o;~ovoH=sLj_A9s!`kNR zv~@^-t&H2c=dN=sx2|X2teZ!*zsAOLT|cg?(;?%qHRzYodK~fD8kRFwziItX>wjAR zUcIac4#!usE+^N{$Z{w-3o7Tp5aW>zF;b^;TDm<*T@cm0J)tbjWs)L%E? zhQ_RTg7Q-v%tjyf;WO9!{NNKu-ig;!-dOqTo>}*t|8SrOAB#h`?mb*TP-oY-bKkD9 zetHi5JU^-*hGh)P8+&h9SH9!>WLW;Xa$R1t!}{!qdK~E6qsCVbF4E^TKSsuF^qt|~ zHFdtOz8}uLVW0avp39sW60O6=e(>)6urWHU&!_djb{9e}s7#;*Jxbi$E&44)s%d+fbB0Egu3+tRL$JU?2m zL7moK=Wq7a;3I4LN(S%xy2)W}9(hm3>gw|xw(+@)<;b&gRR0{3w_ImgG8`Yz`N(<> zC_EpZk+#WUWsiJ6GJk#_Yu9yr#I3WnefnJLaoF!^{ja}1t^dRG7+ja@EK7#tGp+yC zF__l>r?>vyTD9cH@AEee8!>DoQW$wI48IQui@5J$?D;kI8NRo!zTv34TyMG8JCMV6 zy6<5mk1*DkYx?)dI*gTlR32k}#p`2Zc2xejKfJVd{;cV*wS90{{f76)?tO;+9gdnG zYv$5Q+paea=jKSh!)sye-RqbSVa+_a?mm=h{U6ACaBW)uBloBEzdlXte{G$I@5!2S fpY!_vY^47Wq8vDWSyBw?00000NkvXXu0mjfOO*zt literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/ic_e_money.png b/app/src/main/res/drawable/ic_e_money.png new file mode 100644 index 0000000000000000000000000000000000000000..f3533410ddbed145be614456f82430a839d97e22 GIT binary patch literal 1454 zcmb7^_d6R17{?Q5@2w*CXtnlgBB&81G^wrHShX8e#H=fiQBGWqT6Y>(C($~qMXe%1 zo1Vr*jzim-j_W!!XB!z6*C9XnFFe{lG-PP(?W2|wpt zsc8|U#`T$5(9B&f!g}OTBxy2@DeTA`iGKa|?)FT{sULUj2Y z03cNI8gS#2Or^72bmVg!h*FvRAjeyPJqK#M1fO7dw__gxgChtlR+kA{JY_4g=kkKH z(l7Rk6VbEyuxk6FPNSQwZpu2GhR)d4-A5xo?fEqZqGvh29eN=JU^s7^2FC=*_gq2cJX)|3zDT{j^pe z>xMoiEEVEE1ewxs`jHMRZ=MLW>Me5vhS=QlJ!PHSRrZgH)^8rKF1O-C;^ zhBtQ2-fq+%UJBGp{B=A=XWb4H?+3=2yxFT|Ch9_kv4(LN61=kushE~fg~LuNuSG3# zE2{jI^)Ig2u~(X+i%oWNIuX$}i+=LA2G*gC^;CVHWLHBQN;#L4lZlEI3N8mWAzal3 zo3eLjh=1H*l7wWV)cW?NG9s?~Vz8b&$ZBpdRtTj2Ih#ZFb+jlP(vsomaF)RwDuqV& zpEX0_-`E})esCaYx>(kz!#!SB<{m$tjPX5eHiax?vCl}f8e|k>22%y4iL(2(=~LP2 zw#L?8@3|+7Rq76)`;Cf|*D3XWFK5R>`aw3-T?14~d_ZoGl!Vp_IVEfJD?D-_vj|S1 zApIrr(O7)!jppf3NcrZYd8%s3TeQPYG|khGpqUDn&P@h+?m34=JRQTcI`&#vpd{GK zh<^$EkHcdWf5S0Qqa7iJ2EB1-waZR*8FXuuG7X@FxWk15cge+VWInrff&Feu9eTxB ziIJyb-F?(zkH?)X_n9t4-kd+v3(C<;f)T`SRSMr|qX0|KA?>TzQ^tC7u zq99lhE9541d{#t@kRRzC-g*Ip2?>|#w2*!veCR+PKA|e1D|P=_dFEzEn}78oHBN&* zLBr)!S0BM{ueMoNi!}=T%*aDdl4K+;HRavxwa?JiXiD&WN59Cn;wz&qbPA0S<$@)^ tR+XSAb~jA3MyuFVjoMcn8{@t}0fNM;P6ZbDSMur=fN(~^+Z;o3{sH{XsdNAU literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/ic_e_money.xml b/app/src/main/res/drawable/ic_e_money.xml deleted file mode 100644 index 7e3db0d..0000000 --- a/app/src/main/res/drawable/ic_e_money.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_settings.png b/app/src/main/res/drawable/ic_settings.png new file mode 100644 index 0000000000000000000000000000000000000000..11e63850c1de717cb10ec03db9e5d1503ac67072 GIT binary patch literal 1596 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/ic_settlement.xml b/app/src/main/res/drawable/ic_settlement.xml deleted file mode 100644 index 89dfa1f..0000000 --- a/app/src/main/res/drawable/ic_settlement.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_transfer.png b/app/src/main/res/drawable/ic_transfer.png new file mode 100644 index 0000000000000000000000000000000000000000..4a1ed5f066cc5f0fb8ae5a4011b69241e9337ddc GIT binary patch literal 2243 zcmV;!2t4)?dgx8S9z4~QHt}WyHhQYjn6xLGs;M`VYU8a< zD(cNcrS{ZI1y5~i1#3)etgC)o1>La9NHJ~KzI9lwS>XW2gY@U>1Awm;+s8YI=c{pB?1KtJ(SWe;Ys4C64fhf04L|1Y<`+MAO%v8(D1`b zIT!TPR#{sNJC15E#DC{4^sLBNrF>mQ5Cw^y$Y*1?i#0AXaPQ{psr;g;yo82NmbERi zp*1z`Y7v^yu46WQyC5-hWV5P$TSkY0AqZ{JTI3TFvw(`E6WXdnS@g|y(w#`Sv2xL< zY-y3|9c@z8(&|1>)TgAPv1!3JncKteBbQFglWRZA^o;?T)IW zRKL4Z>h^X^&8|*KqzcR2Aw0x>eEwWfL`MeMJf+%0Z0FBxI5#AgfS~pJdt}4jkDjsE zs6h0QFOJFBc}f<&EIQn44hr`IeRNJqmsnzhw%#qj-;&hfqjZr0_W8n@v$ExnTkZ#G zi!d4mTC@$fF(bgY+EuhkF@c5u^ZtA8PbOj9M{v}kxM?=r#7n>aR&pO%1@D_ z3$Kt6;l=MSEZ9F&Y@91|aC~O}VgdL)hINczzBniHjIfP!ug(8$M(oFgG#jzKtqih4 zEYNWHh%l)8aOR?Gb&<&k>cxnS55#O6l}*P_$b{Y>D~vSIg=SeZFa;+A_KQJFjiwj; zt)7_a;g~o^S{I|3&|L@1nwJAv-ScPcmd5KWxDTq(s3+STxr+s^0oOv^rx1bL2x9ui zpp0MYla-_{MC}_52xjAeD)jmgR`B3pZ_(RLil6^eYZiEhY3w++inB=#Mt?Ba`)}+ zx?0yRqu-o*<~_CsWCkTGbar%MQ3nwQDr*S4kn}t}biftdOKx;TN);>BI|iBI+Y5f5 zsTa@JIPUNJ*o{6+85Lwh#K$WI&7#?pQjooQd2sN68)+c=fWXEVCp^*4;`c;_c}+B- z+4WlpiOkOcpN$LuPg^pqIj3CMOF{~JK z_DnYfA2QlmY?!WyCN!%i;AL??5Y~%MO5N^p@jG%~j!p%L>IV+vMO;Fg$BGec8ZTkWvj2B4?lw%x+$=~GMA zIhc%)ry2md(2ukT%;d$S*#JKu>I@Ne4g>y%x-{#UHWD8|7aAGcgF~MQ16(k&z~$!F znK=92o)2huk_~GHR;qVnZhYG>Q85kQ`NU$~t%x}+b{Io|J zK0mr*-=4*Q%J9jHNN=4|zDt1yM;#7#%}xxEwhHw@AhyS`$s%i1U|}RsXeEkM1omKx z`QBEQO<=`-8D>-*M*`QHTJeQZz|6N-k62k41p^)|nB6?~5@unPl3VHrqOXrI*V>(N zsv8i+Tk1#kH&01>@OB~ivs&7cGYbnA4Tz2@UJxAvr-`4vn1!p*pq&~VaDDK!g>Jkb z+M2tyH3udNp@arH`nayQF5Ss(E5opkHk!k17`oPxO{jubnk`o{Ikh|NwxNaIHYxo& z0yrK9lMYL?J~CK^M<_2q}my!orHV449nUD%NmDv z8HT*;(TEqZezL4hu?LE_P`8)As^p|24tH&{5+$d{r&p(>R|+IjhvgN0;G8OVSEBl} z+KQuy3?f;ymz&knolv3+&Q6<@1rS({A=(lGG@%XdLVHR&l}MK;XI1^f8*$Wt7Nk#~ zbLsxWo8=f - - - \ No newline at end of file diff --git a/app/src/main/res/font/inter.xml b/app/src/main/res/font/inter.xml index 4b565ce..93a133c 100644 --- a/app/src/main/res/font/inter.xml +++ b/app/src/main/res/font/inter.xml @@ -8,4 +8,8 @@ app:font="@font/inter_medium" app:fontWeight="500" app:fontStyle="normal"/> + \ No newline at end of file diff --git a/app/src/main/res/font/inter_bold.ttf b/app/src/main/res/font/inter_bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..46b3583c5fd4c82cdd3d5ee7a4403cb4896bc1a6 GIT binary patch literal 344028 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%0At&W1xT_(arq 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index dbd7f7a..d7fd674 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -216,7 +216,40 @@ - + + + + + + + + + + + + + + + + + + + + + + @@ -316,7 +384,6 @@ - @@ -350,6 +418,7 @@ + @@ -391,7 +460,7 @@ android:layout_columnWeight="1" android:layout_rowWeight="1" android:layout_margin="8dp" - android:visibility="visible" + android:visibility="gone" app:cardCornerRadius="12dp" app:cardElevation="2dp" app:cardBackgroundColor="#F3F4F3"> @@ -418,9 +487,8 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/activity_payment.xml b/app/src/main/res/layout/activity_payment.xml deleted file mode 100644 index b98a5da..0000000 --- a/app/src/main/res/layout/activity_payment.xml +++ /dev/null @@ -1,268 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/activity_pin.xml b/app/src/main/res/layout/activity_pin.xml deleted file mode 100644 index 4fc1a4a..0000000 --- a/app/src/main/res/layout/activity_pin.xml +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -