from datetime import datetime, date
from datetime import date
from datetime import datetime
from dateutil.relativedelta import relativedelta


def string_to_date(string, format):
    return datetime.strptime(string, format).date()


def before_x_month_date(months):
    today = date.today()
    start_date = today - relativedelta(months=months)
    return start_date


from datetime import datetime, date


def dpd_check_equifax(dpd_object, equifax_data):
    response = []
    for dpd in dpd_object:
        dpd_month_above_0 = dpd['in_last_month']
        dpd_count_above_0 = dpd['trade_line_count']
        bucket_range = dpd['bucket'].split("-")
        bucket_boundary_start = int(bucket_range[0])
        bucket_boundary_end = int(bucket_range[1]) if len(bucket_range) > 1 else 100000

        if not dpd_month_above_0 or not dpd_count_above_0 or not equifax_data:
            response.append(0)
            continue
        start_date = before_x_month_date(dpd_month_above_0)
        count_per_tradeline = 0

        if equifax_data:
            try:
                for data in equifax_data:
                    count = 0
                    if string_to_date(data['sch:DateOpened'], '%Y-%m-%d') > start_date:
                        for index, History in data['sch:History48Months'].items():
                            count = 0
                            if isinstance(History, list):
                                count = sum(
                                    [1 if '+' in MonthWise['sch:PaymentStatus'] else 0 for MonthWise in History])
                            elif isinstance(History, dict):
                                if '+' in History['sch:PaymentStatus']:
                                    count = 1
                                else:
                                    count = 0
                    count_per_tradeline += count
                    if count_per_tradeline > dpd_count_above_0:
                        response.append(0)
                        continue
                if count_per_tradeline <= dpd_count_above_0:
                    response.append(1)
                    continue
            except:
                return 'No Equifax Bureau'
        else:
            response.append(1)
            continue

    return 0 if 0 in response else 1


accounts = [{'Identification_Number': 'NBFXXXXXXXX', 'Subscriber_Name': 'XXXXXXXXXX', 'Account_Number': 'XXX8883',
             'Portfolio_Type': 'I', 'Account_Type': '01', 'Open_Date': '20190328', 'Credit_Limit_Amount': None,
             'Highest_Credit_or_Original_Loan_Amount': '576500', 'Terms_Duration': '035', 'Terms_Frequency': 'M',
             'Scheduled_Monthly_Payment_Amount': None, 'Account_Status': '13', 'Payment_Rating': '0',
             'Payment_History_Profile': '0000?000000000000000000000000000000?', 'Special_Comment': None,
             'Current_Balance': '0', 'Amount_Past_Due': '0', 'Original_Charge_Off_Amount': None,
             'Date_Reported': '20220221', 'Date_of_First_Delinquency': None, 'Date_Closed': '20220221',
             'Date_of_Last_Payment': '20220104', 'SuitFiledWillfulDefaultWrittenOffStatus': None,
             'SuitFiled_WillfulDefault': None, 'Written_off_Settled_Status': None, 'Value_of_Credits_Last_Month': None,
             'Occupation_Code': None, 'Settlement_Amount': None, 'Value_of_Collateral': None,
             'Type_of_Collateral': None, 'Written_Off_Amt_Total': None, 'Written_Off_Amt_Principal': None,
             'Rate_of_Interest': None, 'Repayment_Tenure': '35', 'Promotional_Rate_Flag': None, 'Income': None,
             'Income_Indicator': None, 'Income_Frequency_Indicator': None, 'DefaultStatusDate': None,
             'LitigationStatusDate': None, 'WriteOffStatusDate': None, 'DateOfAddition': '20190331',
             'CurrencyCode': 'INR', 'Subscriber_comments': None, 'Consumer_comments': None,
             'AccountHoldertypeCode': '2', 'CAIS_Account_History': [
        {'Year': '2022', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2022', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2021', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2021', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2021', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2021', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2021', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2021', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2021', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2021', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2021', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2021', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2021', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
        {'Year': '2020', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
        {'Year': '2019', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
        {'Year': '2019', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
        {'Year': '2019', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
        {'Year': '2019', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
        {'Year': '2019', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
        {'Year': '2019', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
        {'Year': '2019', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
        {'Year': '2019', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
        {'Year': '2019', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
        {'Year': '2019', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': 'S'}],
             'CAIS_Holder_Details': {'Surname_Non_Normalized': 'SONU  NIGAM', 'First_Name_Non_Normalized': None,
                                     'Middle_Name_1_Non_Normalized': None, 'Middle_Name_2_Non_Normalized': None,
                                     'Middle_Name_3_Non_Normalized': None, 'Alias': None, 'Gender_Code': '1',
                                     'Income_TAX_PAN': 'BPBPN0003F', 'Passport_Number': None, 'Voter_ID_Number': None,
                                     'Date_of_birth': '19840111'},
             'CAIS_Holder_Address_Details': {'First_Line_Of_Address_non_normalized': 'HATA SHIVPUR',
                                             'Second_Line_Of_Address_non_normalized': 'SHIVPUR',
                                             'Third_Line_Of_Address_non_normalized': 'GORAKHPUR',
                                             'City_non_normalized': 'SHOPUR',
                                             'Fifth_Line_Of_Address_non_normalized': None, 'State_non_normalized': '09',
                                             'ZIP_Postal_Code_non_normalized': '273412',
                                             'CountryCode_non_normalized': 'IB',
                                             'Address_indicator_non_normalized': '04',
                                             'Residence_code_non_normalized': None},
             'CAIS_Holder_Phone_Details': {'Telephone_Number': '8005338853', 'Telephone_Type': '02',
                                           'Telephone_Extension': None, 'Mobile_Telephone_Number': None,
                                           'FaxNumber': None, 'EMailId': None}, 'CAIS_Holder_ID_Details': [
        {'Income_TAX_PAN': 'BPBPN0003F', 'PAN_Issue_Date': None, 'PAN_Expiration_Date': None, 'Passport_Number': None,
         'Passport_Issue_Date': None, 'Passport_Expiration_Date': None, 'Voter_ID_Number': None,
         'Voter_ID_Issue_Date': None, 'Voter_ID_Expiration_Date': None, 'Driver_License_Number': None,
         'Driver_License_Issue_Date': None, 'Driver_License_Expiration_Date': None, 'Ration_Card_Number': None,
         'Ration_Card_Issue_Date': None, 'Ration_Card_Expiration_Date': None, 'Universal_ID_Number': None,
         'Universal_ID_Issue_Date': None, 'Universal_ID_Expiration_Date': None, 'EMailId': None},
        {'Income_TAX_PAN': 'BPBPN0003F', 'PAN_Issue_Date': None, 'PAN_Expiration_Date': None, 'Passport_Number': None,
         'Passport_Issue_Date': None, 'Passport_Expiration_Date': None, 'Voter_ID_Number': None,
         'Voter_ID_Issue_Date': None, 'Voter_ID_Expiration_Date': None, 'Driver_License_Number': None,
         'Driver_License_Issue_Date': None, 'Driver_License_Expiration_Date': None, 'Ration_Card_Number': None,
         'Ration_Card_Issue_Date': None, 'Ration_Card_Expiration_Date': None, 'Universal_ID_Number': None,
         'Universal_ID_Issue_Date': None, 'Universal_ID_Expiration_Date': None, 'EMailId': None},
        {'Income_TAX_PAN': 'BPBPN0003F', 'PAN_Issue_Date': None, 'PAN_Expiration_Date': None, 'Passport_Number': None,
         'Passport_Issue_Date': None, 'Passport_Expiration_Date': None, 'Voter_ID_Number': None,
         'Voter_ID_Issue_Date': None, 'Voter_ID_Expiration_Date': None, 'Driver_License_Number': None,
         'Driver_License_Issue_Date': None, 'Driver_License_Expiration_Date': None, 'Ration_Card_Number': None,
         'Ration_Card_Issue_Date': None, 'Ration_Card_Expiration_Date': None, 'Universal_ID_Number': None,
         'Universal_ID_Issue_Date': None, 'Universal_ID_Expiration_Date': None, 'EMailId': None}]},
            {'Identification_Number': 'PVTXXXXXXXX', 'Subscriber_Name': 'XXXXXXXXXX',
             'Account_Number': 'XXXXXXXXXXXXXXX0231', 'Portfolio_Type': 'R', 'Account_Type': '10',
             'Open_Date': '20200703', 'Credit_Limit_Amount': '230000',
             'Highest_Credit_or_Original_Loan_Amount': '142147', 'Terms_Duration': None, 'Terms_Frequency': None,
             'Scheduled_Monthly_Payment_Amount': None, 'Account_Status': '11', 'Payment_Rating': '0',
             'Payment_History_Profile': '000000000000000000000000000000000000', 'Special_Comment': None,
             'Current_Balance': '18568', 'Amount_Past_Due': None, 'Original_Charge_Off_Amount': None,
             'Date_Reported': '20250531', 'Date_of_First_Delinquency': None, 'Date_Closed': None,
             'Date_of_Last_Payment': '20250507', 'SuitFiledWillfulDefaultWrittenOffStatus': None,
             'SuitFiled_WillfulDefault': None, 'Written_off_Settled_Status': None, 'Value_of_Credits_Last_Month': None,
             'Occupation_Code': 'E', 'Settlement_Amount': None, 'Value_of_Collateral': None, 'Type_of_Collateral': None,
             'Written_Off_Amt_Total': None, 'Written_Off_Amt_Principal': None, 'Rate_of_Interest': None,
             'Repayment_Tenure': '0', 'Promotional_Rate_Flag': None, 'Income': None, 'Income_Indicator': None,
             'Income_Frequency_Indicator': None, 'DefaultStatusDate': None, 'LitigationStatusDate': None,
             'WriteOffStatusDate': None, 'DateOfAddition': '20220531', 'CurrencyCode': 'INR',
             'Subscriber_comments': None, 'Consumer_comments': None, 'AccountHoldertypeCode': '1',
             'CAIS_Account_History': [
                 {'Year': '2025', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2025', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2025', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2025', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2025', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2024', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2023', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2022', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2022', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2022', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2022', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2022', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2022', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2022', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                 {'Year': '2022', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'}],
             'CAIS_Holder_Details': {'Surname_Non_Normalized': 'SONU NIGAM', 'First_Name_Non_Normalized': None,
                                     'Middle_Name_1_Non_Normalized': None, 'Middle_Name_2_Non_Normalized': None,
                                     'Middle_Name_3_Non_Normalized': None, 'Alias': None, 'Gender_Code': '1',
                                     'Income_TAX_PAN': 'BPBPN0003F', 'Passport_Number': None, 'Voter_ID_Number': None,
                                     'Date_of_birth': '19840111'},
             'CAIS_Holder_Address_Details': {'First_Line_Of_Address_non_normalized': 'S/O',
                                             'Second_Line_Of_Address_non_normalized': 'GORAKHPUR',
                                             'Third_Line_Of_Address_non_normalized': None, 'City_non_normalized': None,
                                             'Fifth_Line_Of_Address_non_normalized': None, 'State_non_normalized': '09',
                                             'ZIP_Postal_Code_non_normalized': '273412',
                                             'CountryCode_non_normalized': 'IB',
                                             'Address_indicator_non_normalized': '02',
                                             'Residence_code_non_normalized': None},
             'CAIS_Holder_Phone_Details': {'Telephone_Number': None, 'Telephone_Type': '01',
                                           'Telephone_Extension': None, 'Mobile_Telephone_Number': '8005338853',
                                           'FaxNumber': None, 'EMailId': 'NIGAMSONUKUMAR04@GMAIL.COM'},
             'CAIS_Holder_ID_Details': {'Income_TAX_PAN': 'BPBPN0003F', 'PAN_Issue_Date': None,
                                        'PAN_Expiration_Date': None, 'Passport_Number': None,
                                        'Passport_Issue_Date': None, 'Passport_Expiration_Date': None,
                                        'Voter_ID_Number': None, 'Voter_ID_Issue_Date': None,
                                        'Voter_ID_Expiration_Date': None, 'Driver_License_Number': None,
                                        'Driver_License_Issue_Date': None, 'Driver_License_Expiration_Date': None,
                                        'Ration_Card_Number': None, 'Ration_Card_Issue_Date': None,
                                        'Ration_Card_Expiration_Date': None, 'Universal_ID_Number': None,
                                        'Universal_ID_Issue_Date': None, 'Universal_ID_Expiration_Date': None,
                                        'EMailId': 'NIGAMSONUKUMAR04@GMAIL.COM'}},
            {'Identification_Number': 'PVTXXXXXXXX', 'Subscriber_Name': 'XXXXXXXXXX',
             'Account_Number': 'XXXXXXXXXXXXXXX2273', 'Portfolio_Type': 'I', 'Account_Type': '37',
             'Open_Date': '20210311', 'Credit_Limit_Amount': None, 'Highest_Credit_or_Original_Loan_Amount': '105000',
             'Terms_Duration': None, 'Terms_Frequency': None, 'Scheduled_Monthly_Payment_Amount': None,
             'Account_Status': '11', 'Payment_Rating': '0',
             'Payment_History_Profile': '000000000000000000000000000000000000', 'Special_Comment': None,
             'Current_Balance': '30090', 'Amount_Past_Due': None, 'Original_Charge_Off_Amount': None,
             'Date_Reported': '20250531', 'Date_of_First_Delinquency': None, 'Date_Closed': None,
             'Date_of_Last_Payment': '20250507', 'SuitFiledWillfulDefaultWrittenOffStatus': None,
             'SuitFiled_WillfulDefault': None, 'Written_off_Settled_Status': None, 'Value_of_Credits_Last_Month': None,
             'Occupation_Code': None, 'Settlement_Amount': None, 'Value_of_Collateral': None,
             'Type_of_Collateral': None, 'Written_Off_Amt_Total': None, 'Written_Off_Amt_Principal': None,
             'Rate_of_Interest': None, 'Repayment_Tenure': '0', 'Promotional_Rate_Flag': None, 'Income': None,
             'Income_Indicator': None, 'Income_Frequency_Indicator': None, 'DefaultStatusDate': None,
             'LitigationStatusDate': None, 'WriteOffStatusDate': None, 'DateOfAddition': '20220531',
             'CurrencyCode': 'INR', 'Subscriber_comments': None, 'Consumer_comments': None,
             'AccountHoldertypeCode': '1', 'CAIS_Account_History': [
                {'Year': '2025', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2025', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2025', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2025', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2025', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'}],
             'CAIS_Holder_Details': {'Surname_Non_Normalized': 'SONU NIGAM', 'First_Name_Non_Normalized': None,
                                     'Middle_Name_1_Non_Normalized': None, 'Middle_Name_2_Non_Normalized': None,
                                     'Middle_Name_3_Non_Normalized': None, 'Alias': None, 'Gender_Code': '1',
                                     'Income_TAX_PAN': 'BPBPN0003F', 'Passport_Number': None, 'Voter_ID_Number': None,
                                     'Date_of_birth': '19840111'},
             'CAIS_Holder_Address_Details': {'First_Line_Of_Address_non_normalized': 'S/O',
                                             'Second_Line_Of_Address_non_normalized': 'GORAKHPUR',
                                             'Third_Line_Of_Address_non_normalized': None, 'City_non_normalized': None,
                                             'Fifth_Line_Of_Address_non_normalized': None, 'State_non_normalized': '09',
                                             'ZIP_Postal_Code_non_normalized': '273412',
                                             'CountryCode_non_normalized': 'IB',
                                             'Address_indicator_non_normalized': '02',
                                             'Residence_code_non_normalized': None},
             'CAIS_Holder_Phone_Details': {'Telephone_Number': None, 'Telephone_Type': '01',
                                           'Telephone_Extension': None, 'Mobile_Telephone_Number': '8005338853',
                                           'FaxNumber': None, 'EMailId': 'NIGAMSONUKUMAR04@GMAIL.COM'},
             'CAIS_Holder_ID_Details': {'Income_TAX_PAN': 'BPBPN0003F', 'PAN_Issue_Date': None,
                                        'PAN_Expiration_Date': None, 'Passport_Number': None,
                                        'Passport_Issue_Date': None, 'Passport_Expiration_Date': None,
                                        'Voter_ID_Number': None, 'Voter_ID_Issue_Date': None,
                                        'Voter_ID_Expiration_Date': None, 'Driver_License_Number': None,
                                        'Driver_License_Issue_Date': None, 'Driver_License_Expiration_Date': None,
                                        'Ration_Card_Number': None, 'Ration_Card_Issue_Date': None,
                                        'Ration_Card_Expiration_Date': None, 'Universal_ID_Number': None,
                                        'Universal_ID_Issue_Date': None, 'Universal_ID_Expiration_Date': None,
                                        'EMailId': 'NIGAMSONUKUMAR04@GMAIL.COM'}},
            {'Identification_Number': 'PVTXXXXXXXX', 'Subscriber_Name': 'XXXXXXXXXX', 'Account_Number': 'XXXX0450',
             'Portfolio_Type': 'I', 'Account_Type': '07', 'Open_Date': '20210319', 'Credit_Limit_Amount': None,
             'Highest_Credit_or_Original_Loan_Amount': '242000', 'Terms_Duration': None, 'Terms_Frequency': None,
             'Scheduled_Monthly_Payment_Amount': None, 'Account_Status': '13', 'Payment_Rating': '0',
             'Payment_History_Profile': '000000000000000000000000????????????', 'Special_Comment': None,
             'Current_Balance': '0', 'Amount_Past_Due': '0', 'Original_Charge_Off_Amount': None,
             'Date_Reported': '20230331', 'Date_of_First_Delinquency': None, 'Date_Closed': '20230310',
             'Date_of_Last_Payment': '20230310', 'SuitFiledWillfulDefaultWrittenOffStatus': None,
             'SuitFiled_WillfulDefault': None, 'Written_off_Settled_Status': None, 'Value_of_Credits_Last_Month': None,
             'Occupation_Code': None, 'Settlement_Amount': None, 'Value_of_Collateral': '0', 'Type_of_Collateral': None,
             'Written_Off_Amt_Total': None, 'Written_Off_Amt_Principal': None, 'Rate_of_Interest': None,
             'Repayment_Tenure': '0', 'Promotional_Rate_Flag': None, 'Income': None, 'Income_Indicator': None,
             'Income_Frequency_Indicator': None, 'DefaultStatusDate': None, 'LitigationStatusDate': None,
             'WriteOffStatusDate': None, 'DateOfAddition': '20210331', 'CurrencyCode': 'INR',
             'Subscriber_comments': None, 'Consumer_comments': None, 'AccountHoldertypeCode': '1',
             'CAIS_Account_History': [
                 {'Year': '2023', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2023', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2023', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2022', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2021', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2021', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2021', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2021', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2021', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2021', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2021', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2021', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2021', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                 {'Year': '2021', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': 'S'}],
             'CAIS_Holder_Details': {'Surname_Non_Normalized': 'SONU', 'First_Name_Non_Normalized': 'NIGAM',
                                     'Middle_Name_1_Non_Normalized': None, 'Middle_Name_2_Non_Normalized': None,
                                     'Middle_Name_3_Non_Normalized': None, 'Alias': None, 'Gender_Code': '1',
                                     'Income_TAX_PAN': 'BPBPN0003F', 'Passport_Number': None, 'Voter_ID_Number': None,
                                     'Date_of_birth': '19840111'}, 'CAIS_Holder_Address_Details': {
                'First_Line_Of_Address_non_normalized': 'S/O:  HARISHCHANDRA, HATA, SHIVPUR',
                'Second_Line_Of_Address_non_normalized': None, 'Third_Line_Of_Address_non_normalized': None,
                'City_non_normalized': None, 'Fifth_Line_Of_Address_non_normalized': None, 'State_non_normalized': '09',
                'ZIP_Postal_Code_non_normalized': '273412', 'CountryCode_non_normalized': 'IB',
                'Address_indicator_non_normalized': '02', 'Residence_code_non_normalized': None},
             'CAIS_Holder_Phone_Details': [
                 {'Telephone_Number': '8005338853', 'Telephone_Type': '03', 'Telephone_Extension': None,
                  'Mobile_Telephone_Number': None, 'FaxNumber': None, 'EMailId': 'NIGAMSONUKUMAR04@GMAIL.COM'},
                 {'Telephone_Number': None, 'Telephone_Type': '01', 'Telephone_Extension': None,
                  'Mobile_Telephone_Number': '8005338853', 'FaxNumber': None, 'EMailId': 'NIGAMSONUKUMAR04@GMAIL.COM'},
                 {'Telephone_Number': '8005338853', 'Telephone_Type': '02', 'Telephone_Extension': None,
                  'Mobile_Telephone_Number': None, 'FaxNumber': None, 'EMailId': 'NIGAMSONUKUMAR04@GMAIL.COM'}],
             'CAIS_Holder_ID_Details': {'Income_TAX_PAN': 'BPBPN0003F', 'PAN_Issue_Date': None,
                                        'PAN_Expiration_Date': None, 'Passport_Number': None,
                                        'Passport_Issue_Date': None, 'Passport_Expiration_Date': None,
                                        'Voter_ID_Number': None, 'Voter_ID_Issue_Date': None,
                                        'Voter_ID_Expiration_Date': None, 'Driver_License_Number': None,
                                        'Driver_License_Issue_Date': None, 'Driver_License_Expiration_Date': None,
                                        'Ration_Card_Number': None, 'Ration_Card_Issue_Date': None,
                                        'Ration_Card_Expiration_Date': None, 'Universal_ID_Number': None,
                                        'Universal_ID_Issue_Date': None, 'Universal_ID_Expiration_Date': None,
                                        'EMailId': 'NIGAMSONUKUMAR04@GMAIL.COM'}},
            {'Identification_Number': 'NBFXXXXXXXX', 'Subscriber_Name': 'XXXXXXXXXX', 'Account_Number': 'XXXX3210',
             'Portfolio_Type': 'I', 'Account_Type': '01', 'Open_Date': '20220219', 'Credit_Limit_Amount': None,
             'Highest_Credit_or_Original_Loan_Amount': '405172', 'Terms_Duration': '035', 'Terms_Frequency': 'M',
             'Scheduled_Monthly_Payment_Amount': None, 'Account_Status': '13', 'Payment_Rating': '0',
             'Payment_History_Profile': '??000000000000000000000000000000000?', 'Special_Comment': None,
             'Current_Balance': '0', 'Amount_Past_Due': '0', 'Original_Charge_Off_Amount': None,
             'Date_Reported': '20250430', 'Date_of_First_Delinquency': None, 'Date_Closed': '20250204',
             'Date_of_Last_Payment': '20250204', 'SuitFiledWillfulDefaultWrittenOffStatus': None,
             'SuitFiled_WillfulDefault': None, 'Written_off_Settled_Status': None, 'Value_of_Credits_Last_Month': None,
             'Occupation_Code': None, 'Settlement_Amount': None, 'Value_of_Collateral': None,
             'Type_of_Collateral': None, 'Written_Off_Amt_Total': None, 'Written_Off_Amt_Principal': None,
             'Rate_of_Interest': None, 'Repayment_Tenure': '35', 'Promotional_Rate_Flag': None, 'Income': None,
             'Income_Indicator': None, 'Income_Frequency_Indicator': None, 'DefaultStatusDate': None,
             'LitigationStatusDate': None, 'WriteOffStatusDate': None, 'DateOfAddition': '20220531',
             'CurrencyCode': 'INR', 'Subscriber_comments': None, 'Consumer_comments': None,
             'AccountHoldertypeCode': '2', 'CAIS_Account_History': [
                {'Year': '2025', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2025', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2023', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2022', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'}],
             'CAIS_Holder_Details': {'Surname_Non_Normalized': 'SONU  NIGAM', 'First_Name_Non_Normalized': None,
                                     'Middle_Name_1_Non_Normalized': None, 'Middle_Name_2_Non_Normalized': None,
                                     'Middle_Name_3_Non_Normalized': None, 'Alias': None, 'Gender_Code': '1',
                                     'Income_TAX_PAN': 'BPBPN0003F', 'Passport_Number': None, 'Voter_ID_Number': None,
                                     'Date_of_birth': '19840111'}, 'CAIS_Holder_Address_Details': {
                'First_Line_Of_Address_non_normalized': 'HATA SHIVPUR GORAKHPUR SHIVPUR SHOPUR',
                'Second_Line_Of_Address_non_normalized': '216 UTTAR PRADESH',
                'Third_Line_Of_Address_non_normalized': None, 'City_non_normalized': None,
                'Fifth_Line_Of_Address_non_normalized': None, 'State_non_normalized': '09',
                'ZIP_Postal_Code_non_normalized': '273412', 'CountryCode_non_normalized': 'IB',
                'Address_indicator_non_normalized': '02', 'Residence_code_non_normalized': None},
             'CAIS_Holder_Phone_Details': [
                 {'Telephone_Number': '8005338853', 'Telephone_Type': '02', 'Telephone_Extension': '91',
                  'Mobile_Telephone_Number': None, 'FaxNumber': None, 'EMailId': 'chauhan.cwa1987@gmail.com'},
                 {'Telephone_Number': None, 'Telephone_Type': '01', 'Telephone_Extension': None,
                  'Mobile_Telephone_Number': '8005338853', 'FaxNumber': None, 'EMailId': 'chauhan.cwa1987@gmail.com'}],
             'CAIS_Holder_ID_Details': [
                 {'Income_TAX_PAN': 'BPBPN0003F', 'PAN_Issue_Date': None, 'PAN_Expiration_Date': None,
                  'Passport_Number': None, 'Passport_Issue_Date': None, 'Passport_Expiration_Date': None,
                  'Voter_ID_Number': None, 'Voter_ID_Issue_Date': None, 'Voter_ID_Expiration_Date': None,
                  'Driver_License_Number': None, 'Driver_License_Issue_Date': None,
                  'Driver_License_Expiration_Date': None, 'Ration_Card_Number': None, 'Ration_Card_Issue_Date': None,
                  'Ration_Card_Expiration_Date': None, 'Universal_ID_Number': None, 'Universal_ID_Issue_Date': None,
                  'Universal_ID_Expiration_Date': None, 'EMailId': 'chauhan.cwa1987@gmail.com'},
                 {'Income_TAX_PAN': 'BPBPN0003F', 'PAN_Issue_Date': None, 'PAN_Expiration_Date': None,
                  'Passport_Number': None, 'Passport_Issue_Date': None, 'Passport_Expiration_Date': None,
                  'Voter_ID_Number': None, 'Voter_ID_Issue_Date': None, 'Voter_ID_Expiration_Date': None,
                  'Driver_License_Number': None, 'Driver_License_Issue_Date': None,
                  'Driver_License_Expiration_Date': None, 'Ration_Card_Number': None, 'Ration_Card_Issue_Date': None,
                  'Ration_Card_Expiration_Date': None, 'Universal_ID_Number': None, 'Universal_ID_Issue_Date': None,
                  'Universal_ID_Expiration_Date': None, 'EMailId': None},
                 {'Income_TAX_PAN': 'BPBPN0003F', 'PAN_Issue_Date': None, 'PAN_Expiration_Date': None,
                  'Passport_Number': None, 'Passport_Issue_Date': None, 'Passport_Expiration_Date': None,
                  'Voter_ID_Number': None, 'Voter_ID_Issue_Date': None, 'Voter_ID_Expiration_Date': None,
                  'Driver_License_Number': None, 'Driver_License_Issue_Date': None,
                  'Driver_License_Expiration_Date': None, 'Ration_Card_Number': None, 'Ration_Card_Issue_Date': None,
                  'Ration_Card_Expiration_Date': None, 'Universal_ID_Number': None, 'Universal_ID_Issue_Date': None,
                  'Universal_ID_Expiration_Date': None, 'EMailId': None}]},
            {'Identification_Number': 'NBFXXXXXXXX', 'Subscriber_Name': 'XXXXXXXXXX',
             'Account_Number': 'XXXXXXXXXXXXXXXX7759', 'Portfolio_Type': 'I', 'Account_Type': '13',
             'Open_Date': '20240501', 'Credit_Limit_Amount': None, 'Highest_Credit_or_Original_Loan_Amount': '46000',
             'Terms_Duration': '012', 'Terms_Frequency': 'M', 'Scheduled_Monthly_Payment_Amount': None,
             'Account_Status': '13', 'Payment_Rating': '0',
             'Payment_History_Profile': '000000000000????????????????????????', 'Special_Comment': None,
             'Current_Balance': '0', 'Amount_Past_Due': '0', 'Original_Charge_Off_Amount': None,
             'Date_Reported': '20250515', 'Date_of_First_Delinquency': None, 'Date_Closed': '20250513',
             'Date_of_Last_Payment': '20250508', 'SuitFiledWillfulDefaultWrittenOffStatus': None,
             'SuitFiled_WillfulDefault': '00', 'Written_off_Settled_Status': None, 'Value_of_Credits_Last_Month': None,
             'Occupation_Code': None, 'Settlement_Amount': None, 'Value_of_Collateral': None,
             'Type_of_Collateral': None, 'Written_Off_Amt_Total': None, 'Written_Off_Amt_Principal': None,
             'Rate_of_Interest': None, 'Repayment_Tenure': '12', 'Promotional_Rate_Flag': None, 'Income': None,
             'Income_Indicator': None, 'Income_Frequency_Indicator': None, 'DefaultStatusDate': None,
             'LitigationStatusDate': None, 'WriteOffStatusDate': None, 'DateOfAddition': '20240531',
             'CurrencyCode': 'INR', 'Subscriber_comments': None, 'Consumer_comments': None,
             'AccountHoldertypeCode': '1', 'CAIS_Account_History': [
                {'Year': '2025', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2025', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2025', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2025', 'Month': '02', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2025', 'Month': '01', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '12', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '11', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2024', 'Month': '10', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                {'Year': '2024', 'Month': '09', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                {'Year': '2024', 'Month': '08', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                {'Year': '2024', 'Month': '07', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                {'Year': '2024', 'Month': '06', 'Days_Past_Due': '0', 'Asset_Classification': 'S'},
                {'Year': '2024', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': 'S'}],
             'CAIS_Holder_Details': {'Surname_Non_Normalized': 'SONU NIGAM', 'First_Name_Non_Normalized': None,
                                     'Middle_Name_1_Non_Normalized': None, 'Middle_Name_2_Non_Normalized': None,
                                     'Middle_Name_3_Non_Normalized': None, 'Alias': None, 'Gender_Code': '1',
                                     'Income_TAX_PAN': 'BPBPN0003F', 'Passport_Number': None, 'Voter_ID_Number': None,
                                     'Date_of_birth': '19840111'},
             'CAIS_Holder_Address_Details': {'First_Line_Of_Address_non_normalized': 'HATA GORAKHPUR GORAKHPUR 273412',
                                             'Second_Line_Of_Address_non_normalized': None,
                                             'Third_Line_Of_Address_non_normalized': None, 'City_non_normalized': None,
                                             'Fifth_Line_Of_Address_non_normalized': None, 'State_non_normalized': '09',
                                             'ZIP_Postal_Code_non_normalized': '273412',
                                             'CountryCode_non_normalized': 'IB',
                                             'Address_indicator_non_normalized': '04',
                                             'Residence_code_non_normalized': None},
             'CAIS_Holder_Phone_Details': {'Telephone_Number': None, 'Telephone_Type': '01',
                                           'Telephone_Extension': None, 'Mobile_Telephone_Number': '8005338853',
                                           'FaxNumber': None, 'EMailId': None},
             'CAIS_Holder_ID_Details': {'Income_TAX_PAN': 'BPBPN0003F', 'PAN_Issue_Date': None,
                                        'PAN_Expiration_Date': None, 'Passport_Number': None,
                                        'Passport_Issue_Date': None, 'Passport_Expiration_Date': None,
                                        'Voter_ID_Number': None, 'Voter_ID_Issue_Date': None,
                                        'Voter_ID_Expiration_Date': None, 'Driver_License_Number': None,
                                        'Driver_License_Issue_Date': None, 'Driver_License_Expiration_Date': None,
                                        'Ration_Card_Number': None, 'Ration_Card_Issue_Date': None,
                                        'Ration_Card_Expiration_Date': None, 'Universal_ID_Number': None,
                                        'Universal_ID_Issue_Date': None, 'Universal_ID_Expiration_Date': None,
                                        'EMailId': None}},
            {'Identification_Number': 'PVTXXXXXXXX', 'Subscriber_Name': 'XXXXXXXXXX',
             'Account_Number': 'XXXXXXXXXXXXXXX3196', 'Portfolio_Type': 'R', 'Account_Type': '10',
             'Open_Date': '20250325', 'Credit_Limit_Amount': '230000',
             'Highest_Credit_or_Original_Loan_Amount': '55000', 'Terms_Duration': None, 'Terms_Frequency': None,
             'Scheduled_Monthly_Payment_Amount': None, 'Account_Status': '11', 'Payment_Rating': '0',
             'Payment_History_Profile': '00??????????????????????????????????', 'Special_Comment': None,
             'Current_Balance': '55000', 'Amount_Past_Due': None, 'Original_Charge_Off_Amount': None,
             'Date_Reported': '20250515', 'Date_of_First_Delinquency': None, 'Date_Closed': None,
             'Date_of_Last_Payment': None, 'SuitFiledWillfulDefaultWrittenOffStatus': None,
             'SuitFiled_WillfulDefault': None, 'Written_off_Settled_Status': None, 'Value_of_Credits_Last_Month': None,
             'Occupation_Code': None, 'Settlement_Amount': None, 'Value_of_Collateral': None,
             'Type_of_Collateral': None, 'Written_Off_Amt_Total': None, 'Written_Off_Amt_Principal': None,
             'Rate_of_Interest': None, 'Repayment_Tenure': '0', 'Promotional_Rate_Flag': None, 'Income': None,
             'Income_Indicator': None, 'Income_Frequency_Indicator': None, 'DefaultStatusDate': None,
             'LitigationStatusDate': None, 'WriteOffStatusDate': None, 'DateOfAddition': '20250331',
             'CurrencyCode': 'INR', 'Subscriber_comments': None, 'Consumer_comments': None,
             'AccountHoldertypeCode': '1', 'CAIS_Account_History': [
                {'Year': '2025', 'Month': '05', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2025', 'Month': '04', 'Days_Past_Due': '0', 'Asset_Classification': '?'},
                {'Year': '2025', 'Month': '03', 'Days_Past_Due': '0', 'Asset_Classification': '?'}],
             'CAIS_Holder_Details': {'Surname_Non_Normalized': 'SONU NIGAM', 'First_Name_Non_Normalized': None,
                                     'Middle_Name_1_Non_Normalized': None, 'Middle_Name_2_Non_Normalized': None,
                                     'Middle_Name_3_Non_Normalized': None, 'Alias': None, 'Gender_Code': '1',
                                     'Income_TAX_PAN': 'BPBPN0003F', 'Passport_Number': None, 'Voter_ID_Number': None,
                                     'Date_of_birth': '19840111'},
             'CAIS_Holder_Address_Details': {'First_Line_Of_Address_non_normalized': 'HATA GORAKHPUR',
                                             'Second_Line_Of_Address_non_normalized': None,
                                             'Third_Line_Of_Address_non_normalized': None, 'City_non_normalized': None,
                                             'Fifth_Line_Of_Address_non_normalized': None, 'State_non_normalized': '09',
                                             'ZIP_Postal_Code_non_normalized': '273412',
                                             'CountryCode_non_normalized': 'IB',
                                             'Address_indicator_non_normalized': '02',
                                             'Residence_code_non_normalized': None},
             'CAIS_Holder_Phone_Details': {'Telephone_Number': None, 'Telephone_Type': '01',
                                           'Telephone_Extension': None, 'Mobile_Telephone_Number': '8005338853',
                                           'FaxNumber': None, 'EMailId': 'NIGAMSONUKUMAR04@GMAIL.COM'},
             'CAIS_Holder_ID_Details': {'Income_TAX_PAN': 'BPBPN0003F', 'PAN_Issue_Date': None,
                                        'PAN_Expiration_Date': None, 'Passport_Number': None,
                                        'Passport_Issue_Date': None, 'Passport_Expiration_Date': None,
                                        'Voter_ID_Number': None, 'Voter_ID_Issue_Date': None,
                                        'Voter_ID_Expiration_Date': None, 'Driver_License_Number': None,
                                        'Driver_License_Issue_Date': None, 'Driver_License_Expiration_Date': None,
                                        'Ration_Card_Number': None, 'Ration_Card_Issue_Date': None,
                                        'Ration_Card_Expiration_Date': None, 'Universal_ID_Number': None,
                                        'Universal_ID_Issue_Date': None, 'Universal_ID_Expiration_Date': None,
                                        'EMailId': 'NIGAMSONUKUMAR04@GMAIL.COM'}}]

dpd_data = [
    {
        "ownership": [
            "Individual",
            "Guarantor",
            "Joint",
            "Authorized User"
        ],
        "bucket": "31",
        "in_last_month": 7,
        "trade_line_count": 1,
        "condition": "equal"
    },
    {
        "ownership": [
            "Joint",
            "Authorized User"
        ],
        "bucket": "31-90",
        "in_last_month": 24,
        "trade_line_count": 1,
        "condition": "equal"
    }
]

print(dpd_check_equifax(dpd_data, accounts))
