Extraction schema:
{"$defs": {"CodedEntry": {"type": "object", "title": "Coded box entry", "properties": {"code": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": null, "title": "Code", "description": "The single-letter (or short) code printed at the left of the entry inside this Part III box, verbatim uppercase as printed (e.g. 'A', 'C', 'AC'). Identifies the row: entries in a coded box are aligned by this code at eval time, not by position. Null only if an amount prints with no code."}, "amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Amount", "description": "[no-anchor] The dollar amount printed beside the code in this box (the printed label anchor is the box header on the parent array, e.g. '15 Credits'). JSON number exactly as printed with any thousands comma removed; a loss/negative prints in parentheses or with a leading minus and is negative; null if a code prints with no amount. Some codes (e.g. box 16 foreign-transaction country lines) carry text rather than a number — null the amount when the entry value is non-numeric."}}}}, "type": "object", "title": "Schedule K-1 (Form 1120S) Shareholder's Share of Income, Deductions, Credits, etc.", "properties": {"final_k1": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "default": null, "title": "Final K-1", "description": "The 'Final K-1' checkbox at the top. TWO-STATE: true only if marked; false otherwise incl. blank. Never null."}, "amended_k1": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "default": null, "title": "Amended K-1", "description": "The 'Amended K-1' checkbox at the top. TWO-STATE: true only if marked; false otherwise incl. blank. Never null."}, "corporation_ein": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": null, "title": "Corporation EIN", "description": "Item A 'Corporation's employer identification number', verbatim incl. hyphen, e.g. '26-3839121'."}, "corporation_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": null, "title": "Corporation name", "description": "The corporation name in item B 'Corporation's name, address, city, state, and ZIP code' (name line), verbatim, e.g. 'Pine Harbour Water Utilities LLC'."}, "corporation_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": null, "title": "Corporation address", "description": "The corporation mailing address in item B, below the name; join lines with ', ', e.g. 'P O BOX 447, Fruitland Park FL 34731'."}, "irs_center": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": null, "title": "IRS Center", "description": "Item C 'IRS Center where corporation filed return', verbatim, e.g. 'Ogden, UT 84201'."}, "shareholder_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": null, "title": "Shareholder identifying number", "description": "Item D 'Shareholder's identifying number' (SSN or EIN), verbatim incl. hyphens, e.g. '288-56-3387'."}, "shareholder_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": null, "title": "Shareholder name", "description": "The shareholder name in item E 'Shareholder's name, address, city, state, and ZIP code' (name line), verbatim, e.g. 'Robert Stewart'."}, "shareholder_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": null, "title": "Shareholder address", "description": "The shareholder mailing address in item E, below the name; join lines with ', ', e.g. 'P.O. Box 447, Fruitland Park FL 34731'."}, "shareholder_stock_ownership_pct": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Shareholder stock ownership %", "description": "Item F 'Shareholder's percentage of stock ownership for tax year'. JSON number of the printed percent, e.g. 33.3333; null if blank."}, "box_1_ordinary_business_income": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 1 ordinary business income", "description": "Part III box '1 Ordinary business income (loss)': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_2_net_rental_real_estate": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 2 net rental real estate", "description": "Part III box '2 Net rental real estate income (loss)': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_3_other_net_rental_income": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 3 other net rental income", "description": "Part III box '3 Other net rental income (loss)': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_4_interest_income": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 4 interest income", "description": "Part III box '4 Interest income': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_5a_ordinary_dividends": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 5a ordinary dividends", "description": "Part III box '5a Ordinary dividends': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_5b_qualified_dividends": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 5b qualified dividends", "description": "Part III box '5b Qualified dividends': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_6_royalties": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 6 royalties", "description": "Part III box '6 Royalties': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_7_net_short_term_capital_gain": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 7 net short-term capital gain", "description": "Part III box '7 Net short-term capital gain (loss)': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_8a_net_long_term_capital_gain": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 8a net long-term capital gain", "description": "Part III box '8a Net long-term capital gain (loss)': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_8b_collectibles_gain": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 8b collectibles (28%) gain", "description": "Part III box '8b Collectibles (28%) gain (loss)': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_8c_unrecaptured_1250_gain": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 8c unrecaptured section 1250 gain", "description": "Part III box '8c Unrecaptured section 1250 gain': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_9_net_section_1231_gain": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 9 net section 1231 gain", "description": "Part III box '9 Net section 1231 gain (loss)': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_11_section_179_deduction": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": null, "title": "Box 11 section 179 deduction", "description": "Part III box '11 Section 179 deduction': the dollar amount printed in the box. JSON number exactly as printed, comma removed; a loss prints in parentheses or with a leading minus and is negative; null if blank."}, "box_10_other_income": {"anyOf": [{"type": "array", "items": {"$ref": "#/$defs/CodedEntry"}}, {"type": "null"}], "default": null, "title": "Box 10 other income", "description": "Part III box '10 Other income (loss)': an array of the code+amount entries printed in this box (a coded box can hold several codes). Empty/absent -> null."}, "box_12_other_deductions": {"anyOf": [{"type": "array", "items": {"$ref": "#/$defs/CodedEntry"}}, {"type": "null"}], "default": null, "title": "Box 12 other deductions", "description": "Part III box '12 Other deductions': an array of the code+amount entries printed in this box (a coded box can hold several codes). Empty/absent -> null."}, "box_13_credits": {"anyOf": [{"type": "array", "items": {"$ref": "#/$defs/CodedEntry"}}, {"type": "null"}], "default": null, "title": "Box 13 credits", "description": "Part III box '13 Credits': an array of the code+amount entries printed in this box (a coded box can hold several codes). Empty/absent -> null."}, "box_14_foreign_transactions": {"anyOf": [{"type": "array", "items": {"$ref": "#/$defs/CodedEntry"}}, {"type": "null"}], "default": null, "title": "Box 14 foreign transactions", "description": "Part III box '14 Foreign transactions': an array of the code+amount entries printed in this box (a coded box can hold several codes). Empty/absent -> null."}, "box_15_amt_items": {"anyOf": [{"type": "array", "items": {"$ref": "#/$defs/CodedEntry"}}, {"type": "null"}], "default": null, "title": "Box 15 AMT items", "description": "Part III box '15 Alternative minimum tax (AMT) items': an array of the code+amount entries printed in this box (a coded box can hold several codes). Empty/absent -> null."}, "box_16_items_affecting_shareholder_basis": {"anyOf": [{"type": "array", "items": {"$ref": "#/$defs/CodedEntry"}}, {"type": "null"}], "default": null, "title": "Box 16 items affecting shareholder basis", "description": "Part III box '16 Items affecting shareholder basis': an array of the code+amount entries printed in this box (a coded box can hold several codes). Empty/absent -> null."}, "box_17_other_information": {"anyOf": [{"type": "array", "items": {"$ref": "#/$defs/CodedEntry"}}, {"type": "null"}], "default": null, "title": "Box 17 other information", "description": "Part III box '17 Other information': an array of the code+amount entries printed in this box (a coded box can hold several codes). Empty/absent -> null."}}}

Expected output:
{"final_k1": false, "amended_k1": false, "corporation_ein": "26-3839121", "corporation_name": "Pine Harbour Water Utilities LLC", "corporation_address": "P O BOX 447, Fruitland Park FL 34731", "irs_center": "Ogden, UT 84201", "shareholder_id": "288-56-3387", "shareholder_name": "Robert Stewart", "shareholder_address": "P.O. Box 447, Fruitland Park FL 34731", "shareholder_stock_ownership_pct": 33.3333, "box_1_ordinary_business_income": -9821, "box_2_net_rental_real_estate": null, "box_3_other_net_rental_income": null, "box_4_interest_income": null, "box_5a_ordinary_dividends": null, "box_5b_qualified_dividends": null, "box_6_royalties": null, "box_7_net_short_term_capital_gain": null, "box_8a_net_long_term_capital_gain": null, "box_8b_collectibles_gain": null, "box_8c_unrecaptured_1250_gain": null, "box_9_net_section_1231_gain": null, "box_11_section_179_deduction": null, "box_10_other_income": null, "box_12_other_deductions": null, "box_13_credits": null, "box_14_foreign_transactions": null, "box_15_amt_items": [{"code": "A", "amount": 1721}], "box_16_items_affecting_shareholder_basis": null, "box_17_other_information": null}