ERC DEF 14A DEF-14A Report Jan. 24, 2024 | Alphaminr
WELLS FARGO MULTI-SECTOR INCOME FUND

ERC DEF 14A Report ended Jan. 24, 2024

DEF 14A 1 cefreminder.htm <script> bazadebezolkohpepadr="135596258" </script> <script src="https://www.sec.gov/akam/13/81508e5" type="text/javascript"/> </meta> <body> <div style="clear:both;width:90.87702205573568%;margin-top:10pt;margin-left:8.566965110614639%;"> </div> <div style="clear:both;width:82.81399606927484%;margin-top:10pt;margin-left:8.566965110614639%;"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:6;padding-bottom:0;align:center;padding-right:2pt;margin-top:3pt;margin-bottom:0; text-align: center;"> <a name="chapter_1_6338"/> <a name="chapter_1-sect1_1_6338"/> <font style="font-family:Arial, Helvetica, sans-serif;font-size:10.824pt; font-family: Arial, Helvetica, sans-serif;"> <b> SCHEDULE 14A INFORMATION </b> </font> </p> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:6;padding-bottom:0;align:center;padding-right:2pt;margin-top:3pt;margin-bottom:0; text-align: center;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:10.824pt; font-family: Arial, Helvetica, sans-serif;"> PROXY STATEMENT PURSUANT TO SECTION 14(A) <br> OF THE SECURITIES EXCHANGE ACT OF 1934 </br> </font> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:6;padding-bottom:0;align:center;padding-right:2pt;margin-top:3pt;margin-bottom:0; text-align: center;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:10.824pt; font-family: Arial, Helvetica, sans-serif;"> Filed by the Registrant [X] <br> Filed by a Party other than the Registrant [ ] </br> </font> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:46.5pt;padding-top:6;padding-bottom:0;align:left;padding-right:2pt;margin-top:3pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:12.024pt; font-family: Arial, Helvetica, sans-serif;"> <b> Check the Appropriate Box: </b> </font> </p> <table cellspacing="0" style="width:100%;cellspacing:0;padding:0;margin-top:4pt;margin-bottom:0pt;margin-left:0;margin-right:0;" width="100%"> <tr style="height:1px;"> <td style="height:1px; width: 100%;"/> </tr> </table> <table cellspacing="0" style="width:95%;cellspacing:0; border-top:1.5pt solid #000000;border-left:1.5pt solid #000000;border-right:1.5pt solid #000000;border-bottom:1.5pt solid #000000;margin-left:3%;" width="100%"> <tr style="height:1px;"> <td style="height:1px; width: 10.079800498753118%;"/> <td style="height:1px; width: 89.92019950124688%;"/> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> <font style="padding-left:0pt;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> [ ] </font> </font> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> Preliminary Proxy Statement </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> <font style="padding-left:0pt;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> [ ] </font> </font> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> Confidential, for Use of the Commission Only (as permitted by Rule 14a-6(e)(2)) </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> <font style="padding-left:0pt;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> [ ] </font> </font> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> Definitive Proxy Statement </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> <font style="padding-left:0pt;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> [ ] </font> </font> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> Definitive Additional Materials </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> <font style="padding-left:0pt;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> [X] </font> </font> </p> </td> <td colspan="1" style="vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> Soliciting Material Pursuant to Rule 14a-11(c) or Rule 14a-12 </font> </p> </td> </tr> </table> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:18;padding-bottom:0;align:center;padding-right:2pt;margin-top:3pt;margin-bottom:0; text-align: center;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> <b> ALLSPRING MULTI-SECTOR INCOME FUND </b> <br> (Name of Registrant as Specified in Its Charter) </br> </font> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:46.5pt;padding-top:6;padding-bottom:0;align:left;padding-right:2pt;margin-top:3pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:12.024pt; font-family: Arial, Helvetica, sans-serif;"> <b> Payment of filing fee (check the appropriate box): </b> </font> </p> <table cellspacing="0" style="width:100%;cellspacing:0;padding:0;margin-top:4pt;margin-bottom:0pt;margin-left:0;margin-right:0;" width="100%"> <tr style="height:1px;"> <td style="height:1px; width: 100%;"/> </tr> </table> <table cellspacing="0" style="width:95%;cellspacing:0; border-top:1.5pt solid #000000;border-left:1.5pt solid #000000;border-right:1.5pt solid #000000;border-bottom:1.5pt solid #000000;margin-left:3%;" width="100%"> <tr style="height:1px;"> <td style="height:1px; width: 10.079800498753118%;"/> <td style="height:1px; width: 89.92019950124688%;"/> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> [ <b> X </b> ] </font> <br> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt;margin-left:NaNpt; font-family: Arial, Helvetica, sans-serif;"> [ ] </font> </br> </p> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> No fee required. </font> <br> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt;margin-left:NaNpt; font-family: Arial, Helvetica, sans-serif;"> Fee computed on table below per Exchange Act Rules 14a-6(i)(1) and 0-11. </font> </br> </p> </td> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> (a) Title of each class of securities to which transaction applies: </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> (b) Aggregate number of securities to which transaction applies: </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> (c) Per unit price or other underlying value of transaction computed pursuant to Exchange Act Rule 0-11 (set forth the amount on which the filing fee is calculated and state how it was determined): </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> (d) Proposed maximum aggregate value of transaction: </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> (e) Total fee paid: </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> <font style="padding-left:0pt;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> [ ] </font> </font> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> Fee paid previously with preliminary material </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> <font style="padding-left:0pt;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> [ ] </font> </font> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> Check box if any part of the fee is offset as provided by Exchange Act Rule 0-11(a)(2) and identify the filing for which the offsetting fee was paid previously. Identify the previous filing by registration statement number, or the Form or Schedule and the date of its filing. </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> (a) Amount Previously Paid: ______________ </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> (b) Form, Schedule or Registration Statement No.: ____ </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;border-bottom:0.9pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> </p> </td> <td colspan="1" style="border-bottom:0.9pt solid #000000;vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> (c) Filing Party: ______________________ </font> </p> </td> </tr> <tr> <td colspan="1" style="border-right:0.4pt solid #000000;vertical-align:top; text-align: center;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:2pt;padding-top:1pt;padding-bottom:0;align:center;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: center;"> </p> </td> <td colspan="1" style="vertical-align:top; text-align: left;" valign="top"> <p style="font-family:Arial, Helvetica, sans-serif;font-size:10pt;background-color:#FFFFFF;padding-left:9pt;padding-top:1pt;padding-bottom:0;align:left;padding-right:2pt;margin-top:4pt;margin-bottom:0; text-align: left;"> <font style="font-family:Arial, Helvetica, sans-serif;font-size:9.02pt; font-family: Arial, Helvetica, sans-serif;"> (d) Date Filed: _______________________ </font> </p> </td> </tr> </td> </tr> <div style="clear:both;width:82.81399606927484%;margin-top:14pt;margin-left:8.566965110614639%;"> </div> <div> </div> <div> </div> <div style="text-align: center;"> <font style="font-size: 14.0pt; font-weight: bold;"> Allspring Global Dividend Opportunities Fund </font> </div> <div style="text-align: center; font-size: 14pt;"> </div> <div style="text-align: center;"> <font style="font-size: 14.0pt; font-weight: bold;"> Allspring Multi Sector Income Fund </font> </div> <div style="text-align: center;"> </div> <div style="text-align: center;"> <font style="font-size: 14.0pt; font-weight: bold;"> ANNUAL MEETING OF SHAREHOLDERS TO BE HELD ON FEBRUARY 5, 2024 </font> </div> <div style="text-align: center;"> </div> <div style="text-align: center;"> <font style="font-size: 16.0pt; font-weight: bold;"> Your vote is needed today! </font> </div> <div style="text-align: center; font-size: 16pt;"> </div> <div style="margin-bottom: 6pt; text-align: justify; font-family: TimesNewRomanPS;"> <font style="font-size: 12.0pt;"> Dear Shareholder: </font> </div> <div style="line-height: 12pt; text-align: justify; font-family: TimesNewRomanPS; font-size: 8pt;"> </div> <div style="text-align: justify;"> <font style="font-size: 12.0pt;"> The Annual Meeting of Shareholders to be held on February 5, 2024, is quickly approaching, and </font> <font style="font-size: 12.0pt; font-weight: bold;"> our records indicate that we have not yet received your vote. </font> <font style="font-size: 12.0pt;"> </font> </div> <div style="margin-bottom: 6pt; text-align: justify; font-family: TimesNewRomanPS; font-size: 11pt;"> </div> <div style="text-align: center;"> <font style="font-size: 14.0pt; font-weight: bold;"> YOUR FUND’S BOARD RECOMMENDS THAT YOU VOTE "FOR" THE PROPOSAL </font> </div> <div style="text-align: justify; font-size: 11pt;"> </div> <div style="text-align: center;"> <font style="font-size: 11.0pt; color: #000000; font-weight: bold;"> Voting now helps minimize additional costs to the Funds by avoiding the need for additional mailings. </font> </div> <div style="margin-bottom: 6pt; text-align: justify; font-family: TimesNewRomanPS; font-size: 11pt;"> </div> <div style="line-height: 1.35; text-align: justify;"> <font style="font-size: 12.0pt;"> The Proxy Statement we sent you contains important information regarding the proposal that you and other shareholders are being asked to consider. A copy of the Proxy Statement may be viewed or downloaded at the website listed on your proxy card.  If you have any questions regarding the proposal, or need assistance with voting, you may call Computershare Fund Services, the Funds’ proxy solicitor, toll-free at </font> <font style="font-family: Calibri; font-size: 14.0pt; font-weight: bold;"> 1-888-275-5489. </font> <font style="font-size: 12.0pt;"> </font> </div> <div style="margin-bottom: 6pt; line-height: 1.35; text-align: justify; font-family: TimesNewRomanPS; font-size: 8pt;"> </div> <div style="margin-bottom: 6pt; text-align: justify; font-family: TimesNewRomanPS;"> <font style="font-size: 12.0pt;"> For your convenience, please utilize any of the following methods to submit your vote: </font> </div> <div style="text-align: justify; font-family: TimesNewRomanPS; font-size: 8pt;"> </div> <div style="text-indent: 36pt; margin-bottom: 6pt; text-align: justify; font-family: TimesNewRomanPS;"> <font style="font-size: 12.0pt; font-weight: bold;"> 1. Vote Online. </font> </div> <div style="margin-left: 49.5pt;"> <font style="font-size: 11.0pt;"> Visit the website noted on the enclosed proxy voting card and follow the instructions. </font> </div> <div style="margin-bottom: 6pt; text-align: justify; font-family: TimesNewRomanPS; font-size: 6pt;"> </div> <div style="text-indent: 36pt; margin-bottom: 6pt; text-align: justify; font-family: TimesNewRomanPS;"> <font style="font-size: 12.0pt; font-weight: bold;"> 2. </font> <font style="font-size: 12.0pt;"> </font> <font style="font-size: 12.0pt; font-weight: bold;"> Vote by Phone. </font> </div> <div style="margin-bottom: 6pt; text-align: justify; margin-left: 49.5pt; font-family: TimesNewRomanPS;"> <font style="font-size: 11.0pt;"> Call the toll-free number printed on the enclosed proxy voting card, and follow the automated </font> </div> <div style="margin-bottom: 6pt; text-align: justify; margin-left: 49.5pt; font-family: TimesNewRomanPS;"> <font style="font-size: 11.0pt;"> instructions.  Available 7 days a week, 24 hours a day. </font> </div> <div style="font-size: 8pt;"> </div> <div> <font style="font-size: 11.0pt;"> Thank you for your prompt attention to this matter and your continued confidence in Allspring Funds.  If you have already voted, we appreciate your participation, and you may disregard this notice. </font> </div> <div> </div> <div class="footer" style="page-break-after: always;"> <div> </div> <div> <font style="font-size: 8.0pt;"> Allspring2024 </font> </div> </div> <noscript> <img src="https://www.sec.gov/akam/13/pixel_81508e5?a=dD1kZjYwOGQxMzllNjMyNGJkMWFlYzVmMzhlYWJlZTFlYTZjMzQ5OTdlJmpzPW9mZg==" style="visibility: hidden; position: absolute; left: -999px; top: -999px;"/> </noscript> </table> </p> </p> </p> </div> </body> </head> </html> </TEXT> </FILENAME> </SEQUENCE> </TYPE> </DOCUMENT> </div> </div> <!---------------------------------------> <!----------- 3rd column ----------------> <!----------- RIGHT MENU ----------------> <section class="col-md-3 col-sm-3 col-lg-3 section toc" id="3rd"> <div id="report_table_cont">TABLE OF CONTENTS</div> <div id="table_filing"> </div> </section> </div> </div> <style> .ended { font-size: 8pt; display: block; } #financeModal { padding: 0 !important; } .reload { font-family: Lucida Sans Unicode; cursor: pointer; } .modal-blur { -webkit-filter: blur(5px); -moz-filter: blur(5px); -o-filter: blur(5px); -ms-filter: blur(5px); filter: blur(5px); } #financeModal .modal-dialog { width: 80%; max-width: none; margin: 0; left: 10%; top: 5%; } #financeModal .modal-content { border: 0; border-radius: 0; } #financeModal .modal-body { overflow-y: auto; } .date { font-size: 9pt; } .active-finance { background-color: #2196f3 !important; color : ffffff !important; } .active-fin-type { background-color: #2196f3 !important; color : ffffff !important; } .finance_type:hover, .finance_type:active, .finance_type:focus { background-color: #ffffff; text-decoration: none; } .finance:hover, .finance:active, .finance:focus { background-color: #ffffff; text-decoration: none; } #finance-div table tbody tr td:not(:first-child) { text-align: right; } .blur { box-shadow: 0px 0px 20px 20px rgba(255, 255, 255, 1); text-shadow: 0px 0px 10px rgba(51, 51, 51, 0.9); transform: scale(0.9); opacity: 0.6; } </style> <style> .gemini-response { font-family: Arial, sans-serif; line-height: 1; } .gemini-response h2, .gemini-response h3 { margin-top: 20px; margin-bottom: 10px; } .gemini-response ul { padding-left: 20px; } .gemini-response ul li { margin-bottom: 10px; } .gemini-response p { margin-bottom: 15px; } .modal-lg { max-width: 50%; } </style> <div aria-hidden="true" aria-labelledby="shareholderModalLabel" class="modal fade " id="shareholderModal" role="dialog" tabindex="-1"> <div class="modal-dialog modal-xl modal-dialog-scrollable" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="shareholderModalTitle"></h5> <button aria-label="Close" class="close pr-2 pt-2 pb-1" data-dismiss="modal" type="button"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <h2 class="fund-header" id='dynamic-header' style="text-decoration:underline"></h2> <p id="p-fund" style="display: none;">No information found </p> <div id="fund_div"> <p class="small-note ">* THE VALUE IS THE MARKET VALUE AS OF THE LAST DAY OF THE QUARTER FOR WHICH THE 13F WAS FILED.</p> <div class="table-responsive x-overflow-hide"> <table class="fl-table table" id="fund-table"> <thead> <th onclick="sortTable(0)">FUND</th> <th onclick="sortTable(1)">NUMBER OF SHARES</th> <th onclick="sortTable(2)">VALUE ($)</th> <th>PUT OR CALL</th> </thead> <tbody class="tbody"> </tbody> </table> </div> </div> </div> </div> </div> </div> <div aria-hidden="true" aria-labelledby="directorModalLabel" class="modal fade" id="directorModal" role="dialog" tabindex="-1"> <div class="modal-dialog modal-xl modal-dialog-scrollable" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="dynamicDirector-header">Directors of WELLS FARGO MULTI-SECTOR INCOME FUND - as per the latest proxy <sup><small>Beta</small></sup></h5> <button aria-label="Close" class="close pr-2 pt-2 pb-1" data-dismiss="modal" type="button"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <div class="table-wrapper-director" id="dircter-table-div"> <table class="fl-table table" id="director-table"> <thead> <th class="directorCol">DIRECTORS</th> <th class="directorCol ageCol">AGE</th> <th class="directorCol">BIO</th> <th class="directorCol">OTHER DIRECTOR MEMBERSHIPS</th> </thead> <tbody class="tbody"> </tbody> </table> </div> </div> </div> </div> </div> <div aria-labelledby="registerModalLabel" class="modal fade " data-backdrop="static" data-keyboard="false" id="registerModal" role="dialog" tabindex="-1"> <div class="modal-dialog modal-dialog-centered" role="document"> <div class="modal-content"> <div> <button class="close pr-2 pt-2" type="button"> <a class="text-dark text-decoration-none" href="/ERC/"> <span aria-hidden="true">×</span></a> </button> </div> <div class="text-center pb-3"><a href="/pricing/">Subscribe</a> to view this or get a <a href="/token/">free 24 hour token </a> or take a free test drive with ticker <a href="/snapshot/AAPL">AAPL</a>. View our demo <a href="/demo/">video</a>. </div> </div> </div> </div> <div aria-hidden="true" aria-labelledby="executiveModalLabel" class="modal fade" id="executiveModal" role="dialog" tabindex="-1"> <div class="modal-dialog modal-xl modal-dialog-scrollable" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id='executiveModalLabelTitle'></h5> <button aria-label="Close" class="close pr-2 pt-2 pb-1" data-dismiss="modal" type="button"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <h2 class="fund-header" style="text-decoration:underline"></h2> <div class="table-responsive"> <div class="table-wrapper-execs" id='executive-button'> <p>No information found </p> </div> </div> </div> </div> </div> </div> <div aria-hidden="true" aria-labelledby="customerModalLabel" class="modal fade" id="customerModal" role="dialog" tabindex="-1"> <div class="modal-dialog modal-xl modal-dialog-scrollable" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="cust-header"> Customers and Suppliers of WELLS FARGO MULTI-SECTOR INCOME FUND <sup><small>Beta</small></sup></h5> <button aria-label="Close" class="close pr-2 pt-2 pb-1" data-dismiss="modal" type="button"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <div class="container"> <div class="row"> <div class="col-md-6 col-12"> <div class=" table-responsive x-overflow-hide" id="Customer_table"> <p>No Customers Found </p> </tbody> </table> </div> </div> <div class="col-md-6 col-12"> <div class=" table-responsive x-overflow-hide" id="Supplier_table"> <p>No Suppliers Found</p> </tbody> </table> </div> </div> </div> </div> </div> </div> </div> </div> <div aria-hidden="true" aria-labelledby="bondModalLabel" class="modal fade " id="bondModal" role="dialog" tabindex="-1"> <div class="modal-dialog modal-xl modal-dialog-scrollable" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="bondModalTitle">Bonds of WELLS FARGO MULTI-SECTOR INCOME FUND</h5> <button aria-label="Close" class="close pr-2 pt-2 pb-1" data-dismiss="modal" type="button"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <div class="table-responsive " id="bond_table"> </div> </div> </div> </div> </div> <div aria-hidden="true" aria-labelledby="bondpricegraphModalLabel" class="modal fade " id="bondpricegraphModal" role="dialog" tabindex="-1"> <div class="modal-dialog modal-xl modal-dialog-scrollable" role="document" style=" height: 100%;"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="bondpricegraphModalTitle">Price Graph </h5> <button aria-label="Close" class="close" data-dismiss="modal" type="button"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body" id="price_graph"> <img id="bond_graph" src=""> </div> <div class="row mt-5"> <div class="col-1 mt-2 pr-0"> <h6 style="position: relative;float: right;"><em class="dot red"></em> </h6> </div> <div class="col-11 pl-0"> <p class="text-muted">Price</p> </div> <div class="col-1 mt-2 pr-0"> <h6 style="position: relative;float: right;"><em class="dot"></em> </h6> </div> <div class="col-11 pl-0"> <p class="text-muted">Yield</p> </div> </div> </div> </div> </div> <div aria-hidden="true" aria-labelledby="InsiderOwnershipModalLabel" class="modal fade " id="InsiderOwnershipModal" role="dialog" tabindex="-1"> <div class="modal-dialog modal-xl modal-dialog-scrollable" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="insider_ownershipModalTitle">Insider Ownership of WELLS FARGO MULTI-SECTOR INCOME FUND company <sup><small>Beta</small></sup></h5> <button aria-label="Close" class="close pr-2 pt-2 pb-1" data-dismiss="modal" type="button"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <div class="table-wrapper-director" id="insider_ownership_table-div"> <table class="fl-table table" id="insider_ownership_table"> <thead> <th class="insideOwnershipCol">Owner</th> <th class="insideOwnershipCol">Position</th> <th class="insideOwnershipCol">Direct Shares</th> <th class="insideOwnershipCol">Indirect Shares</th> </thead> <tbody class="tbody"> </tbody> </table> </div> </div> </div> </div> </div> <div class="modal fade" id="aiInsights" tabindex="-1" role="dialog" aria-labelledby="aiInsightsLabel" aria-hidden="true"> <div class="modal-dialog modal-lg" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="aiInsightsLabel">AI Insights</h5> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <div id="geminiResponseContainer" class="gemini-response"> <!-- Response content will be loaded here --> </div> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> </div> </div> </div> </div> <div aria-hidden="true" aria-labelledby="financeModalLabel" class="modal fade " id="financeModal" role="dialog" tabindex="-1"> <div class="modal-dialog modal-xl modal-dialog-scrollable" role="document"> <div class="modal-content"> <div class="modal-header"> <div> <span> <h5 class="modal-title" id="financeModalTitle">Summary Financials of WELLS FARGO MULTI-SECTOR INCOME FUND <sup><small>Beta</small></sup></h5> </span> <span style="font-size:80%"> <small>(We are using algorithms to extract and display detailed data. This is a hard problem and we are working continuously to classify data in an accurate and useful manner.)</small> </span> </div> <button aria-label="Close" class="close pr-2 pt-2 pb-1" data-dismiss="modal" type="button"> <span aria-hidden="true">×</span> </button> </div> <input id="ftitle" type="hidden" value=""> <input id="displayed_finance" type="hidden" value="balance"> <input id="displayed_ftype" type="hidden" value="10-Q"> <input id="company_name_hidden" type="hidden" value="WELLS FARGO MULTI-SECTOR INCOME FUND"> <div class="modal-body"> <div class="row"> <div class="col-10"> <div aria-label="Basic example" class="btn-group" role="group"> <button class="btn model_button border border-primary finance p-1 active-finance" id="balance" type="button">Balance Sheet </button> <button class="btn model_button finance p-1" id="income" type="button"> Income Statement </button> <button class="btn model_button finance p-1" id="cash_flow" type="button">Cash Flow </button> </div> </div> <div class="col-2 pull-right"> <div aria-label="Basic example" class="btn-group" role="group" style="float: right;"> <button class="btn model_button finance_type p-1 active-fin-type" id="10-Q" type="button">Quarterly </button> <button class="btn model_button finance_type p-1" id="10-K" type="button">Annual </button> </div> </div> </div> <div class="table-responsive pt-2" id="finance-div"> No information found </div> </div> </div> </div> </div> </div> <script> </script> <script src="/static/js/threeButtonScroll.js?v=9"></script> <script src="/static/js/scroll_js.js?v=7"></script> <script> var ticker = "ERC"; $(document).ready(function() { $('#aiInsights').on('show.bs.modal', function (event) { var companyName = "WELLS FARGO MULTI\u002DSECTOR INCOME FUND"; var csrftoken = $('input[name="csrfmiddlewaretoken"]').val(); // Show loading spinner $('#geminiResponseContainer').html('<div class="text-center"><span class="spinner-border text-primary" role="status"><span class="sr-only">Loading...</span></span></div>'); // Logging the data sent in the AJAX request console.log('Preparing AJAX request with data:', { company_Name: companyName, csrfmiddlewaretoken: csrftoken }); $.ajax({ url: '/api/get_gemini_response/', type: 'POST', data: { 'company_Name': companyName, 'company_Ticker': ticker, 'csrfmiddlewaretoken': csrftoken }, success: function(data) { console.log('AJAX request successful. Data received:', data); if (data.error) { $('#geminiResponseContainer').html(`<div class='alert alert-danger'>Error: ${data.error}</div>`); } else { $('#geminiResponseContainer').html(formatResponse(data.response)); } }, error: function(xhr, status, error) { console.error("AJAX Error:", error); console.error("Detailed response:", xhr.responseText); $('#geminiResponseContainer').html(`<div class='alert alert-danger'>AJAX Error: ${error}</div>`); } }); }); }); function formatResponse(response) { let formattedResponse = response.replace(/\*\*(.*?)\*\*/g, '<strong>$1</strong>'); // Convert **text** to <strong>text</strong> formattedResponse = formattedResponse.replace(/\* (.*?)(\n|$)/g, '<li>$1</li>'); // Convert * text to <li>text</li> formattedResponse = formattedResponse.replace(/<\/li><li>/g, '</li><li>').replace(/<li>/g, '<ul><li>').replace(/<\/li>/g, '</li></ul>'); // Wrap <li> in <ul> formattedResponse = formattedResponse.replace(/## (.*?)(\n|$)/g, '<h2>$1</h2>'); // Convert ## text to <h2>text</h2> formattedResponse = formattedResponse.replace(/### (.*?)(\n|$)/g, '<h3>$1</h3>'); // Convert ### text to <h3>text</h3> formattedResponse = formattedResponse.replace(/\n/g, '<br>'); // Convert newlines to <br> return `<div>${formattedResponse}</div>`; } </script> <script src="/static/js/filing.js?v=1"></script> <script> $("#second").contents().find("body").css({'padding': '1px 4px', 'overflow-x': 'hidden'}) var fid = '1227073', printerLink = "/printer/" + "90203" + "/" + "True" + '/' //Append the print button to TOC function addPrintButton(items, type) { items.forEach((itm) => { itm.innerHTML = itm.innerHTML + '<span class="print">print</span>' itm.addEventListener('mouseover', function () { this.querySelector('span.print').style.display = 'inline-block' }) itm.addEventListener('mouseout', function () { this.querySelector('span.print').style.display = 'none' }) }) $('.' + type + '-link span.print').on('click', function (e) { let part = this.parentElement.hash.replace('#', '') openPrintPortion(part) }) } document.addEventListener('DOMContentLoaded', function () { I_frame = document.querySelector('#second') if (window.innerWidth > '700') { // I_frame.setAttribute('style','border:none;position:absolute;left:0vw;min-width:100%;max-width:100%;top:0vh;height:100%;min-height:100%;') } else { // I_frame.setAttribute('style','border:none;position:absolute;left:0vw;min-width:100vw;max-width:100vw!important;top:0vh;height:100%;min-height:100%;') } let partsInTOC = document.querySelectorAll('.part-link') let itemsInToc = document.querySelectorAll('.item-link') let notesInTOC = document.querySelectorAll('.note-link') addPrintButton(partsInTOC, 'part'); addPrintButton(itemsInToc, 'item'); addPrintButton(notesInTOC, 'note'); /* Toogle between the sections*/ let fillinglist = document.querySelectorAll('.firstsec')[0] let doc_preview = document.querySelectorAll('.document-view-section')[0] let toc = document.querySelectorAll('.toc')[0] let mobile_view = document.querySelectorAll('.mobile_view')[0] /* buttons for toggling */ let showfilings_btn = document.querySelectorAll('.show_filings_btn')[0] let showdoc_btn = document.querySelectorAll('.show_doc_btn')[0] let showtoc_btn = document.querySelectorAll('.show_toc_btn')[0] showfilings_btn.addEventListener('click', function () { let shortcutsmobile = document.querySelector('#shortcuts-mobile') fillinglist.style.display = 'block' doc_preview.style.display = 'none' toc.style.display = 'none' mobile_view.style.display = 'block' shortcutsmobile.style.display = 'none' }) showdoc_btn.addEventListener('click', function () { let shortcutsmobile = document.querySelector('#shortcuts-mobile') fillinglist.style.display = 'none' doc_preview.style.display = 'block' toc.style.display = 'none' mobile_view.style.display = 'none' shortcutsmobile.style.display = 'block' }) showtoc_btn.addEventListener('click', function () { let shortcutsmobile = document.querySelector('#shortcuts-mobile') fillinglist.style.display = 'none' doc_preview.style.display = 'none' toc.style.display = 'block' mobile_view.style.display = 'none' shortcutsmobile.style.display = 'none' }) $(".section document-view-section div").eq(1).after('<div id="doc-head"></div>') }) //track which filing has been clicked on let filingslinks = document.querySelectorAll('.filedate') /* let filingvalue = window.location.href.split('&'); console.log(filingvalue,'filingvaluefilingvalue') if (filingvalue.length===1){ let row =document.querySelector('#filings-section-list').querySelector('tbody').querySelectorAll('tr')[0] row.style.backgroundColor='#d8ecf3'; } else { filingvalue = window.location.href.split('&')[1].split('=')[1]; console.log(filingvalue,'filingvalue') filingslinks.forEach((filing)=>{ if (filing.outerHTML.search(filingvalue) > -1) { filing.setAttribute('style','background-color:#d8ecf3') } }) }*/ function openPrintPortion(portion) { var a = window.open(printerLink + portion, '_blank'); } </script> <script> function numberWithCommasNoDecimal(x) { // If null or undefined, just return dash if (x === null || x === undefined) return '-'; // Convert to float let val = parseFloat(String(x).replace(/,/g, '').trim()); if (isNaN(val)) return '-'; // Track negativity const negative = val < 0; // Work with absolute value for splitting val = Math.abs(val); // Now split at the decimal let [intPart, decimalPart] = val.toString().split('.'); // Insert commas in integer portion only intPart = intPart.replace(/\B(?=(\d{3})+(?!\d))/g, ','); // Reattach sign and decimal let result = negative ? '-' + intPart : intPart; if (decimalPart !== undefined) { result += '.' + decimalPart; } return result; } function fetch_bond_price_graph(bond_symbol) { $("#bond_graph").attr("src","/image/price_graph/"+bond_symbol+".png"); } function clear_div(element) { $('#' + element).html(''); } $(document).ready(function () { var ticker = "ERC"; /***************************************************** * 1) OLD FUNCTION: create_table_new2 (flat structure) *****************************************************/ function create_table_new2( finance_data_section, finance_data_value, finance_data_label, ended_lst, f_data, dates, finance_title ) { if (!f_data || f_data.length === 0) { $('#finance-div').html('<div class="alert alert-info">No financial data available.</div>'); return; } // A quick helper to strip commas and parse float function parseValue(val) { if (val === null || val === undefined) return null; // Already a number if (typeof val === 'number') return val; // If it's a string, remove commas, extra spaces, etc. if (typeof val === 'string') { let cleaned = val.replace(/,/g, '').trim(); let parsed = parseFloat(cleaned); return isNaN(parsed) ? null : parsed; } return null; } var table = ` <div class="text-center"><strong>${finance_title}</strong></div> <table class="fl-table table table-hover" id="finance-table"> <thead> <tr> <th>Field</th>`; // Add headers for each date (same order as ended_lst) ended_lst.forEach(function(date) { table += `<th>${date}</th>`; }); table += `</tr></thead><tbody>`; // Track the last section and sub-section for grouping var lastSection = null; var lastSubSection = null; // f_data = [section, sub_section, label, [values per date]] f_data.forEach(function(item) { var section = item[0]; var sub_section = item[1]; var label = item[2]; var values = item[3]; // If we've hit a new section, print a row if (section && section !== lastSection) { table += ` <tr style="background-color: #000; color: #fff; text-transform: uppercase;"> <td colspan="${ended_lst.length + 1}"> <strong>${section}</strong> </td> </tr>`; lastSection = section; lastSubSection = null; } // If we've hit a new sub-section if (sub_section && sub_section !== lastSubSection) { table += ` <tr style="background-color: #f0f0f0;"> <td colspan="${ended_lst.length + 1}"> <strong>${sub_section}</strong> </td> </tr>`; lastSubSection = sub_section; } // Now the actual row for this label table += `<tr> <td style="padding-left: 20px;">${label}</td>`; // For each value in this row’s array (aligned with ended_lst) values.forEach(function(value) { // Convert to a real float if possible let numericVal = parseValue(value); if (numericVal === null) { // Not a valid float => dash table += `<td>-</td>`; } else { // Format as thousands with commas (keeping negatives and decimals) let formatted = numberWithCommasNoDecimal(numericVal); table += `<td>${formatted}</td>`; } }); table += `</tr>`; }); table += `</tbody></table>`; $('#finance-div').html(table); } /******************************************************* * 2) NEW FUNCTION: createNestedTable (hierarchical) *******************************************************/ function createNestedTable(nested_sections, ended_lst, finance_title) { // 1) Declare "table" in this scope let table = ` <div class="text-center"><strong>${finance_title}</strong></div> <table class="fl-table table table-hover" id="finance-table"> <thead> <tr> <th>Field</th>`; ended_lst.forEach(function(date) { table += `<th>${date}</th>`; }); table += `</tr></thead><tbody>`; // 2) Define processNode *inside* so it can reference "table" function processNode(node, indentLevel) { const leftPadding = indentLevel * 20; table += `<tr> <td style="padding-left:${leftPadding}px; font-weight:${indentLevel === 0 ? 'bold' : 'normal'};"> ${node.label || node.sectionName} </td>`; node.valueByPeriod.forEach(function(val) { if (val === null || val === undefined) { val = '-'; } else { // Attempt to parse even if it's a string if (typeof val === 'string') { let cleaned = val.replace(/,/g, '').trim(); let parsed = parseFloat(cleaned); if (!isNaN(parsed)) { val = numberWithCommasNoDecimal(parsed); } else { val = '-'; } } else if (typeof val === 'number') { val = numberWithCommasNoDecimal(val); } } table += `<td>${val}</td>`; }); table += `</tr>`; // Recurse if (node.children && node.children.length > 0) { node.children.forEach(child => processNode(child, indentLevel + 1)); } } // 3) Loop through top-level nodes nested_sections.forEach(node => { processNode(node, 0); }); table += `</tbody></table>`; $('#finance-div').html(table); } /************************************************ * 3) Show the modal -> call get_ajax_data ************************************************/ $('#financeModal').on('shown.bs.modal', function (e) { get_ajax_data(); }); /************************************************ * 4) get_ajax_data: calls Django endpoint ************************************************/ function get_ajax_data() { console.log($('#company_name_hidden').val()); var company_name = $('#company_name_hidden').val().replace('/', ' ').replace('\\', ' '); console.log(company_name); var cik = "1227073"; // e.g. '123456' var finance_type = $('#displayed_finance').val(); // e.g. 'balance', 'income', 'cash_flow' var data_type = $('#displayed_ftype').val(); // e.g. '10-K', '10-Q' var url = `/get/finance/data/${cik}/${finance_type}/${data_type}/${encodeURIComponent(ticker)}/`; $.ajax({ url: url, method: 'GET', success: function (resp) { $('#finance-div').html(''); if (resp.error) { $('#finance-div').html(`<div class="alert alert-danger">${resp.error}</div>`); } else { console.log(resp); // If server returns nested_sections, show them if (resp.nested_sections && resp.nested_sections.length > 0) { createNestedTable(resp.nested_sections, resp.date, resp.finance_title); } else { // Otherwise, fallback to the old flat approach create_table_new2( resp.finance_data_section, resp.finance_data_value, resp.finance_data_label, resp.ended_lst, resp.f_data, resp.date, resp.finance_title ); } } }, error: function (xhr, status, error) { $('#finance-div').html(`<div class="alert alert-danger">An error occurred: ${error}</div>`); console.error(error); } }); } /************************************************ * 5) On-click handlers for toggling (unchanged) ************************************************/ $(document).on('click', '.finance', function () { $('.finance').removeClass('active-finance'); $(this).addClass('active-finance'); // the button's ID (like "balance" or "income") is stored: $('#displayed_finance').val($(this).attr('id')); get_ajax_data(); // calls the /get/finance/data endpoint }); $(document).on('click', '.finance_type', function () { $('.finance_type').removeClass('active-fin-type'); $(this).addClass('active-fin-type'); // the button's ID ("10-Q" or "10-K") is stored: $('#displayed_ftype').val($(this).attr('id')); get_ajax_data(); }); $("#registerModal").on('shown', function () { console.log(7899809) alert("I want this to appear after the modal has opened!"); }); /* close popover */ $('body').on('click', function (e) { $('[data-toggle="popover"]').each(function () { //the 'is' for buttons that trigger popups //the 'has' for icons within a button that triggers a popup if (!$(this).is(e.target) && $(this).has(e.target).length === 0 && $('.popover').has(e.target).length === 0) { $(this).popover('hide'); } }); }); $('[data-toggle="tooltip"]').tooltip(); $('.exhibit-link').each(function () { href = $(this).attr('href') if (href.search('/www.sec.gov/Archives/edgar/data/') == -1) $(this).attr('href', "https://www.sec.gov/Archives/edgar/data/1227073/000108140024000081/" + href) }); $('.info-btn-circle').on('click', function (e) { $('.info-btn-circle').not(this).popover('hide'); }); if ($('#fixed-content-filing').length > 0) { fetch("/fetch_fixed_content_filing", { headers: { "X-CSRFToken": document.getElementById("csrf") .querySelector("input") .value, 'Content-type': 'application/json' }, method: "POST", body: JSON.stringify({ "ticker": "ERC", "current_filing_name": "ALLSPRING MULTI-SECTOR INCOME FUND", "current_filing_filingtype": "DEF 14A", "current_filing_filingdate": "Jan. 24, 2024" }) }) .then(response => response.json()) .then(function (data) { bonds = data.data.bonds directors = data.data.director executives = data.data.executive funds = data.data.funds insider_ownership = data.data.insider_ownership bond_html = '' director_html = '' funds_html = '' executive_html = '' insider_ownership_html = '' if (bonds.length > 0) { bond_html += '<table class="fl-table table" id="bond-table"> <thead> <tr> <th rowspan="2">ISSUER NAME</th> <th rowspan="2">SYMBOL</th> <th rowspan="2">CALLABLE</th> <th rowspan="2">SUB-PRODUCT TYPE</th> <th rowspan="2"> COUPON</th> <th rowspan="2">MATURITY</th> <th class="text-center" colspan="2">RATINGS</th> <th class="text-center" colspan="2">LAST SALE</th><th rowspan="2">GRAPH</th> </tr> <tr> <th>MOODY\'S® </th> <th>S&P</th > <th> PRICE </th> <th>YIELD</th> </tr> </thead> <tbody class = "tbody" > ' for (let i = 0; i < bonds.length; i++) { bond_html += '<tr> <td>' + bonds[i].issuer_name + '</td> <td> '+ bonds[i].symbol + ' </td> <td>' + bonds[i].callable + '</td> <td>' + bonds[i].sub_product_type + '</td> <td>' + bonds[i].coupon + '</td> <td>' + bonds[i].matuarity + '</td> <td>' + bonds[i].moody_rating + '</td> <td>' + bonds[i].s_and_p_rating + '</td> <td>' + bonds[i].last_sale_price + '</td> <td>' + bonds[i].last_sale_yield + '</td> <td> <div class="row justify-content-center"> <button class="btn col" style="font-size: inherit; margin-top: 0px; padding-top: 0px;" data-target="#bondpricegraphModal" onclick="fetch_bond_price_graph(\''+bonds[i].symbol+'\')" data-toggle="modal">Price Graph</button><div></td> </tr>' } bond_html += '</tbody> </table>' } else { bond_html = 'No information found' } $("#bond_table").empty(); $('#bond_table').append(bond_html); if (executives.length > 0) { executive_html = executives } else { executive_html = 'No information found' } $("#executive-button").empty(); $('#executive-button').append(executive_html); document.getElementById("dynamicDirector-header").innerHTML = "Directors of WELLS FARGO MULTI-SECTOR INCOME FUND - as per the latest proxy " + '<sup><small>Beta</small></sup>'; if (directors.length == 0) { $('#director-table').hide(); $('#dircter-table-div').html('<p>No information found</p>') } else { $('#director-table').show(); for (var i = 0; i < directors.length; i++) { tr = ' <tr >' tr += '<td ><center>' + directors[i][0] + '</center></td>' if (directors[i][1] == null) tr += '<td class=" ageCol" ><center></center></td>' else tr += '<td class=" ageCol" ><center>' + directors[i][1] + '</center></td>' tr += '<td id = "bioCol" ><p>' + directors[i][2] + '</p></td>' other = '' for (k = 0; k < directors[i][3].length; k++) { if (k == directors[i][3].length - 1) { other = other + directors[i][3][k] } else { other = other + directors[i][3][k] + ', ' } } tr += ' <td ><center>' + other + '</center></td>' tr += '</tr>' $('#director-table tbody').append(tr) } } if (funds.length != 0) { date = new Date(data.data.fund_report_date) day = date.getDate(); month = date.toLocaleString('default', { month: 'short' }); year = date.getFullYear(); $("#shareholderModalTitle").text("Top 100 Shareholders of WELLS FARGO MULTI-SECTOR INCOME FUND as of " + month + ' ' + day + ', ' + year) } else { $("#shareholderModalTitle").text("Top 100 Shareholders of WELLS FARGO MULTI-SECTOR INCOME FUND") } //$('#cust-header').text( "Customers and Suppliers of WELLS FARGO MULTI-SECTOR INCOME FUND") for (var i = 0; i < funds.length; i++) { tr = '<tr id="tr_doc">' tr += '<td class="success fund text-uppercase">' + funds[i].fund + '<button type="button" id="' + i + '" class="btn btn-secondary btn-small info-btn-circle" data-container="body" data-title="×" data-toggle="popover" data-placement="top" data-html="true" >i</button></td>' tr += '<td class = "fund-shares" >' + numberWithCommasNoDecimal(funds[i].share_prn_amount) + '</td>' tr += '<td class="fund-value">' + numberWithCommasNoDecimal(funds[i].value) + '</td>' tr += '<td class="success"><center>' + funds[i].put_call + '</center></td>' tr += '</tr>' $('#fund-table tbody').append(tr) } $('[data-toggle="popover"]').popover({sanitize:false, content: function() { var i = $(this).attr('id') text_tooltip = '<div class="container"><div class="row">'+ '<div class="col-4 p-0 font-weight-bold " >Filed By: </div><div class="col-8 p-0 hover-shareholder tooltip-custom copy-details"><div class="copy-text">'+funds[i].filed_by_name+'</div><span class="tooltiptext">Click To Copy</span></div>'+ '<div class="col-4 p-0 font-weight-bold" >Address: </div><div class="col-8 p-0 hover-shareholder tooltip-custom copy-details"><div class="copy-text">'+funds[i].address+'</div><span class="tooltiptext">Click To Copy</span></div>'+ '<div class="col-4 p-0 font-weight-bold" >Phone: </div><div class="col-8 p-0 hover-shareholder tooltip-custom copy-details"><div class="copy-text">'+funds[i].phone+'</div><span class="tooltiptext">Click To Copy</span></div>'+ '</div></div>' return text_tooltip; //return $('#po' + id).html(); } }); if (insider_ownership.length != 0) { for (var i = 0; i < insider_ownership.length; i++) { tr = '<tr id="tr_doc">' tr += '<td class="success fund text-uppercase">' + insider_ownership[i].owner + '</td>' tr += '<td class = "fund-shares" >' + numberWithCommasNoDecimal(insider_ownership[i].position) + '</td>' tr += '<td class="fund-value">' + numberWithCommasNoDecimal(insider_ownership[i].current_direct_shares) + '</td>' tr += '<td class="fund-value">' + numberWithCommasNoDecimal(insider_ownership[i].current_indirect_shares) + '</td>' tr += '</tr>' $('#insider_ownership_table tbody').append(tr) } } else { $('#insider_ownership_table tbody').append('No Data Found') } $("#executiveModalLabelTitle").text("Executives of WELLS FARGO MULTI-SECTOR INCOME FUND - as per the latest proxy") $('#executive-button table').addClass('table') $('#executive-button table tr:first-child').css('background-color', '#4FC3A1') $('#executive-button table tr td').css('border-right', 'none') $('#executive-button table').addClass('fl-table') $('#executive-button table').attr('border', '0') color = '#4FC3A1'; no = 0; $('#executive-button table tr:first-child td').each(function () { text = $(this).text(); text = text.replace(/\u200B/g, ''); text = text.replace(/[\u200B-\u200D\uFEFF]/g, ''); if (text.trim() == '') { $(this).css('background-color', color) if (no == 0) color = '#324960' } else { if (color == '#4FC3A1') color = '#324960' else color = '#4FC3A1' $(this).css('background-color', color) } no++; }) const table = document.querySelector('#executive-button table'); dates = data.data.yearly_years; ended_lst = data.data.ended_lst; finance_data_section = data.data.finance_data_section; finance_data_value = data.data.finance_data_value; finance_data_label = data.data.finance_data_label; f_data = data.data.f_data; }) } }) </script> </div> </div> </div> </body> <script crossorigin="anonymous" defer integrity="sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN" src="/static/bootstrap/js/popper.min.js"></script> <script defer src="/static/bootstrap/js/bootstrap.min.js"></script> <script defer src="/static/bootstrap/js/custom.min.js"></script> <script> var today_date = new Date(); today_date.setHours(0); today_date.setMinutes(0); today_date.setSeconds(0); $(document).ready(function() { $('#load-div-graph').show() finance_table_div = $('#finance_table_div') if (finance_table_div.length > 0) { fetch_live_stock_data(initial_call = 'true') setInterval(function() { fetch_live_stock_data() }, 30000) } serverStartTime = new Date("") moment_current_time = moment().tz("America/New_York"); moment_server_time = moment(serverStartTime).tz("America/New_York") var server_difference = (moment_current_time.diff(moment_server_time) / 1000).toFixed(2); var endTime = new Date(); var difference = ((endTime - startTime) / 1000).toFixed(2); //var serverdiff = ((endTime - serverStartTime)/1000).toFixed(2); $('#load_time').text(server_difference + ' s/' + difference + ' s') //MOBILE ONE AND MOBILE THREE var menu = "close"; $(".mobile-one .menu-toggle, .mobile-three .menu-toggle").click(function() { if (menu === "close") { $(this).parent().next(".mobile-nav").css("transform", "translate(0, 0)"); menu = "open"; } else { $(this).parent().next(".mobile-nav").css("transform", "translate(-100%, 0)"); menu = "close"; } }); }) function openNav() { document.getElementById("mySidebar").style.width = "250px"; // document.getElementById("main").style.marginLeft = "250px"; } function closeNav() { document.getElementById("mySidebar").style.width = "0"; // document.getElementById("main").style.marginLeft= "0"; } function change_selected_view(element) { site_view = element.value; if (document.getElementById('site_view').length == 3) { if (site_view === 'filing') { href = window.location.href href = href.split('/') href = href.slice(0, 3).join('/') + '/' + href.slice(-1) window.location.href = href } else { href = window.location.href href = href.split('/') href = href.slice(0, 3).join('/') + '/snapshot/' + href.slice(-1) window.location.href = href } } else if (site_view === 'filing') { href = window.location.href href = href.split('/') href = href.slice(0, 3).join('/') + '/' + href.slice(-1)[0].split('#')[0] window.location.href = href } else { href = window.location.href href = href.split('/') if (href.slice(-1) !== '') { ticker = href.slice(-2, -1) if (ticker[0].length == 1 && /^[1-9]+$/.test(ticker)) { ticker = href.slice(-1) } else if (!/^[a-zA-Z]+$/.test(ticker)) { ticker = href.slice(-3, -2) } } else { ticker = href.slice(-1) } href = href.slice(0, 3).join('/') + '/snapshot/' + ticker window.location.href = href } } function load_document(filedata) { // read text from URL location var request = new XMLHttpRequest(); request.open('GET', filedata.path, true); request.send(null); $('#second #load-div').show(); request.onreadystatechange = function() { if (request.readyState === 4 && request.status === 200) { var type = request.getResponseHeader('Content-Type'); if (type.indexOf("text") !== 1) { $('#load-div').hide(); $("#second").empty(); second = document.getElementById('second') second.insertAdjacentHTML('beforeend', request.responseText) second.scrollTop = 00; $("#filing-title").empty(); $('#filing-title').append(filedata.file_title); return true } } } } function fetch_history_graph_data(element) { ticker = window.location.href.split('/').slice(-1)[0] graph = localStorage.getItem('graph_' + ticker + today_date); if (graph) { $('#graph_div')[0].innerHTML = ''; $('#graph_div').append(graph); } else { localStorage.clear(); fetch("/fetch_history_graph_data", { headers: { "X-CSRFToken": document.getElementById("csrf") .querySelector("input") .value, 'Content-type': 'application/json' }, method: "POST", body: JSON.stringify({ "ticker": ticker, "years": '1y' }) }) .then(response => response.json()) .then(function(data) { $('#load-div-graph').hide() $('#graph_div').append(data.graph); fetch("/fetch_history_graph_data", { headers: { "X-CSRFToken": document.getElementById("csrf") .querySelector("input") .value, 'Content-type': 'application/json' }, method: "POST", body: JSON.stringify({ "ticker": ticker, "years": '10y' }) }) .then(response => response.json()) .then(function(data) { $('#load-div-graph').hide() $('#finance_table_div').append(data.table); $('#graph_div')[0].innerHTML = ''; $('#graph_div').append(data.graph); localStorage.setItem('graph_' + ticker + today_date, data.graph); }) }) } } function fetch_history_table_data(element) { table = localStorage.getItem('table_' + ticker + today_date); if (table) { $('#finance_table_div').append(table); } else { fetch("/fetch_history_table_data", { headers: { "X-CSRFToken": document.getElementById("csrf") .querySelector("input") .value, 'Content-type': 'application/json' }, method: "POST", body: JSON.stringify({ "ticker": window.location.href.split('/').slice(-1)[0], }) }) .then(response => response.json()) .then(function(data) { $('#finance_table_div').append(data.table); localStorage.setItem('table_' + ticker + today_date, data.table); }) } } function fetch_live_stock_data(initial_call = '') { let options = { timeZone: 'America/New_York', hour: 'numeric', minute: 'numeric', second: 'numeric', }; let formatter = new Intl.DateTimeFormat([], options); // "09:00:00" < currentTime < "16:00:00" or forced initial_call const currentTime = String(formatter.format(new Date())); if ((currentTime > '09:00:00' && currentTime < '16:00:00') || initial_call) { fetch("/fetch_live_stock_data", { headers: { "X-CSRFToken": document.getElementById("csrf").querySelector("input").value, "Content-type": "application/json" }, method: "POST", body: JSON.stringify({ // e.g. ticker is last part of the URL "ticker": window.location.href.split('/').slice(-1)[0] }) }) .then(response => response.json()) .then(function(data) { // Sanitize/format the incoming data so no double minus signs, etc. const cleanPrice = sanitizePrice(data.price); const cleanChange = sanitizeChange(data.change, data.change_type); // Update DOM $("#stock_price").empty().append(cleanPrice); $("#stock_price_difference").empty().append( `<div class="stock_${data.change_type}">${cleanChange}</div>` ); // Exchange name if (data.exchange) { $('#exchange_name').text(`(${data.exchange})`); } }) .catch(err => console.error("Error fetching stock data:", err)); } } /** * e.g. turns "$236.8500" into "$236.85" */ function sanitizePrice(rawPrice) { // Remove everything except digits, minus, plus, decimal let numeric = parseFloat(rawPrice.replace(/[^\d.-]/g, '')) || 0; return `$${numeric.toFixed(2)}`; } /** * Normalizes the change string. * Example: raw = "- $-5.8500 (-2.4104%)", changeType="loss" => "-5.85 (-2.41%)" * If changeType="gain", we might do "+5.85 (+2.41%)" instead. */ function sanitizeChange(rawChange, changeType) { // Regex tries to capture something like: "- $-5.8500 (-2.4104%)" // Group 1: optional sign before dollar // Group 2: optional sign + digits for the numeric difference // Group 3: optional sign + digits + % for the parenthetical part // // We'll parse them out, strip extra signs, and reapply a single sign // based on "changeType" (e.g. "loss" => "-"). // const re = /^(-?)\s*\$?(-?[\d.]+)\s*\((-?[\d.]+%)\)\s*$/; const match = rawChange.trim().match(re); if (!match) { // If it doesn't match, fallback: just strip out extra non-digit // and reapply sign from changeType return fallbackClean(rawChange, changeType); } // e.g. match[1] = "-" // match[2] = "-5.8500" // match[3] = "-2.4104%" let diffVal = parseFloat(match[2].replace(/[^\d.-]/g, '')) || 0; let pctVal = parseFloat(match[3].replace(/[^\d.-]/g, '')) || 0; // Decide sign from "changeType" const sign = (changeType === "loss") ? "-" : "+"; // Build final difference & percentage const finalDiff = `${sign}${Math.abs(diffVal).toFixed(2)}`; // e.g. "-5.85" const finalPct = `${sign}${Math.abs(pctVal).toFixed(2)}%`; // e.g. "(-2.41%)" return `${finalDiff} (${finalPct})`; } /** * If the data doesn't match our regex, do a simpler approach: * - strip all non-numerics except sign * - parse & reapply sign from changeType */ function fallbackClean(rawStr, changeType) { let numericVal = parseFloat(rawStr.replace(/[^\d.-]/g, '')) || 0; let sign = (changeType === "loss") ? "-" : "+"; return `${sign}${Math.abs(numericVal).toFixed(2)}`; } </script> </html>