{"id":6,"date":"2025-03-30T12:42:38","date_gmt":"2025-03-30T03:42:38","guid":{"rendered":"http:\/\/koraku-realty.net\/?page_id=6"},"modified":"2025-04-05T07:37:16","modified_gmt":"2025-04-04T22:37:16","slug":"%e6%b4%97%e7%b7%b4%e3%81%95%e3%82%8c%e3%81%9f%e4%b8%8d%e5%8b%95%e7%94%a3%e6%8a%95%e8%b3%87%e3%81%ae%e4%b8%96%e7%95%8c%e3%81%b8%e3%82%88%e3%81%86%e3%81%93%e3%81%9d","status":"publish","type":"page","link":"https:\/\/koraku-realty.net\/?page_id=6","title":{"rendered":"\u6d17\u7df4\u3055\u308c\u305f\u4e0d\u52d5\u7523\u6295\u8cc7\u306e\u4e16\u754c\u3078\u3088\u3046\u3053\u305d"},"content":{"rendered":"\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-container-core-group-is-layout-75f56b9d wp-block-group-is-layout-constrained\" style=\"min-height:0vh;margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--70);padding-right:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--70);padding-left:var(--wp--preset--spacing--40)\">\n<div class=\"wp-block-group has-global-padding is-layout-constrained wp-container-core-group-is-layout-f15145cb wp-block-group-is-layout-constrained\">\n<p class=\"has-text-align-center wp-block-paragraph\">\u5f8c\u697d\u5730\u6240\u682a\u5f0f\u4f1a\u793e\u304c\u304a\u5c4a\u3051\u3059\u308b\u3001\u4e0d\u52d5\u7523\u6295\u8cc7\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3002<\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-35f06ea7 wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\">\u3055\u3089\u306b\u8a73\u3057\u304f<\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<!DOCTYPE html>\n<html lang=\"zh\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>\u65e5\u672c\u623f\u5730\u4ea7\u6295\u8d44\u6a21\u62df\u5668<\/title>\n    <script src=\"https:\/\/cdn.tailwindcss.com\"><\/script>\n    <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js\"><\/script>\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Lato:wght@300;400;700&#038;family=Playfair+Display:wght@400;700&#038;display=swap\" rel=\"stylesheet\">\n    <style>\n      @font-face {\n        font-family: 'LucideIcons';\n        src: url(https:\/\/cdn.jsdelivr.net\/npm\/lucide-static@latest\/font\/Lucide.ttf) format('truetype');\n      }\n      .lucide {\n        font-family: 'LucideIcons';\n        font-style: normal;\n        font-weight: normal;\n        font-variant: normal;\n        text-rendering: auto;\n        line-height: 1;\n        -webkit-font-smoothing: antialiased;\n        -moz-osx-font-smoothing: grayscale;\n      }\n\n      \/* Luxurious Theme Adjustments *\/\n      :root {\n        \/* Dark theme with gold accents *\/\n        --bg-main: #1a1a1a; \/* Very dark gray \/ Off-black *\/\n        --bg-card: #2a2a2a; \/* Slightly lighter dark gray *\/\n        --text-primary: #e0e0e0; \/* Light gray for primary text *\/\n        --text-secondary: #a0a0a0; \/* Medium gray for secondary text *\/\n        --accent-gold: #daa520; \/* Gold accent *\/\n        --accent-gold-hover: #b8860b; \/* Darker gold for hover *\/\n        --border-color: #444444; \/* Dark border *\/\n        --positive-color: #22c55e; \/* Green *\/\n        --negative-color: #ef4444; \/* Red *\/\n        --tab-inactive-bg: #333333;\n        --tab-active-bg: var(--bg-card);\n        --tab-inactive-text: var(--text-secondary);\n        --tab-active-text: var(--accent-gold);\n      }\n\n      body {\n        font-family: 'Lato', sans-serif; \/* Primary font *\/\n        background-color: var(--bg-main);\n        color: var(--text-primary);\n      }\n\n      h1, h2, h3, .result-title {\n        font-family: 'Playfair Display', serif; \/* Heading font *\/\n      }\n\n      .tab-button {\n        padding: 0.75rem 1.5rem;\n        border-radius: 0.375rem 0.375rem 0 0;\n        cursor: pointer;\n        transition: background-color 0.3s, color 0.3s;\n        background-color: var(--tab-inactive-bg);\n        color: var(--tab-inactive-text);\n        border: 1px solid var(--border-color);\n        border-bottom: none;\n        margin-right: 0.25rem;\n        font-weight: 600; \/* Slightly bolder tabs *\/\n      }\n\n      .tab-button.active {\n        background-color: var(--tab-active-bg);\n        color: var(--tab-active-text);\n        border-color: var(--border-color);\n        border-bottom: 1px solid var(--tab-active-bg); \/* Match background *\/\n      }\n\n      .tab-content {\n        display: none;\n        padding: 2rem; \/* Increased padding *\/\n        border: 1px solid var(--border-color);\n        border-radius: 0 0.375rem 0.375rem 0.375rem;\n        background-color: var(--bg-card);\n      }\n      .tab-content.active {\n        display: block;\n      }\n\n      \/* Tooltip Styles (Dark Theme) *\/\n      .tooltip {\n        position: relative;\n        display: inline-block;\n        cursor: help;\n      }\n      .tooltip .tooltiptext {\n        visibility: hidden;\n        width: 250px;\n        background-color: #333; \/* Darker background *\/\n        color: #fff;\n        text-align: left;\n        border-radius: 6px;\n        padding: 8px;\n        position: absolute;\n        z-index: 10;\n        bottom: 125%;\n        left: 50%;\n        margin-left: -125px;\n        opacity: 0;\n        transition: opacity 0.3s;\n        font-size: 0.8rem;\n        line-height: 1.4;\n        box-shadow: 0 2px 5px rgba(0,0,0,0.3);\n      }\n      .tooltip:hover .tooltiptext {\n        visibility: visible;\n        opacity: 1;\n      }\n      .tooltip .lucide {\n          font-size: 0.9em;\n          margin-left: 4px;\n          color: var(--text-secondary); \/* Lighter icon color *\/\n      }\n\n      .positive { color: var(--positive-color); }\n      .negative { color: var(--negative-color); }\n\n    <\/style>\n    <script>\n        \/\/ Tailwind Config (Optional: Customize colors, fonts)\n        tailwind.config = {\n          theme: {\n            extend: {\n              colors: {\n                'primary-dark': '#1a1a1a',\n                'card-dark': '#2a2a2a',\n                'text-light': '#e0e0e0',\n                'text-medium': '#a0a0a0',\n                'accent-gold': '#daa520',\n                'accent-gold-dark': '#b8860b',\n                'border-dark': '#444444',\n                'positive': '#22c55e',\n                'negative': '#ef4444',\n              },\n              fontFamily: {\n                sans: ['Lato', 'sans-serif'],\n                serif: ['Playfair Display', 'serif'],\n              }\n            }\n          }\n        }\n      <\/script>\n<\/head>\n<body class=\"p-4 md:p-8\">\n\n    <div class=\"max-w-7xl mx-auto bg-card-dark rounded-lg shadow-xl overflow-hidden border border-border-dark\">\n        <header class=\"bg-gradient-to-r from-gray-900 via-primary-dark to-gray-900 text-white p-5 md:p-7 flex justify-between items-center border-b border-accent-gold\/30\">\n             <h1 class=\"text-xl md:text-3xl font-bold font-serif text-accent-gold tracking-wide\" data-lang-key=\"title\">\u65e5\u672c\u623f\u5730\u4ea7\u6295\u8d44\u6a21\u62df\u5668<\/h1>\n            <div class=\"flex items-center space-x-3\">\n                <label for=\"language-select\" class=\"text-sm text-text-medium\" data-lang-key=\"language\">\u8bed\u8a00:<\/label>\n                <select id=\"language-select\" class=\"block w-auto px-3 py-1.5 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light\">\n                    <option value=\"zh\">\u4e2d\u6587<\/option>\n                    <option value=\"ja\">\u65e5\u672c\u8a9e<\/option>\n                    <option value=\"en\">English<\/option>\n                <\/select>\n            <\/div>\n        <\/header>\n\n        <div class=\"p-5 md:p-8 grid grid-cols-1 lg:grid-cols-3 gap-8\">\n            <div class=\"lg:col-span-1 space-y-6\">\n                <h2 class=\"text-2xl font-semibold text-accent-gold border-b border-accent-gold\/50 pb-2 font-serif\" data-lang-key=\"inputParameters\">\u8f93\u5165\u53c2\u6570<\/h2>\n\n                <div class=\"space-y-4 p-5 bg-primary-dark border border-border-dark rounded-md shadow-md\">\n                    <h3 class=\"text-lg font-medium text-accent-gold font-serif\" data-lang-key=\"propertyInfo\">\u623f\u4ea7\u4fe1\u606f<\/h3>\n                    <div>\n                        <label for=\"purchase-price\" class=\"block text-sm font-medium text-text-medium mb-1\" data-lang-key=\"purchasePrice\">\u8d2d\u4e70\u4ef7\u683c (\u65e5\u5143)<\/label>\n                        <input type=\"number\" id=\"purchase-price\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"50000000\">\n                    <\/div>\n                    <div>\n                        <label for=\"land-value-ratio\" class=\"block text-sm font-medium text-text-medium mb-1\">\n                            <span data-lang-key=\"landValueRatio\">\u571f\u5730\u4ef7\u503c\u5360\u6bd4 (%)<\/span>\n                            <span class=\"tooltip\">\n                                <span class=\"tooltiptext\" data-lang-key=\"landValueRatioTooltip\">\u571f\u5730\u4ef7\u503c\u5360\u603b\u8d2d\u4e70\u4ef7\u683c\u7684\u767e\u5206\u6bd4\u3002\u8fd9\u5bf9\u8ba1\u7b97\u5efa\u7b51\u7269\u7684\u6298\u65e7\u5f88\u91cd\u8981\u3002<\/span>\n                            <\/span>\n                        <\/label>\n                        <input type=\"number\" id=\"land-value-ratio\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"40\" min=\"0\" max=\"100\">\n                    <\/div>\n                    <div>\n                        <label for=\"building-type\" class=\"block text-sm font-medium text-text-medium mb-1\" data-lang-key=\"buildingType\">\u5efa\u7b51\u7c7b\u578b<\/label>\n                        <select id=\"building-type\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light\">\n                            <option value=\"wood\" data-lang-key=\"wood\">\u6728\u9020 (22\u5e74)<\/option>\n                            <option value=\"lightweight_steel\" data-lang-key=\"lightweight_steel\">\u8efd\u91cf\u9244\u9aa8\u9020 (\u9aa8\u683c\u6750\u8089\u539a 3mm\u8d854mm\u4ee5\u4e0b, 27\u5e74)<\/option>\n                            <option value=\"heavy_steel\" data-lang-key=\"heavy_steel\">\uff08\u91cd\u91cf\uff09\u9244\u9aa8\u9020 (\u9aa8\u683c\u6750\u8089\u539a 4mm\u8d85, 34\u5e74)<\/option>\n                            <option value=\"rc_src\" data-lang-key=\"rc_src\">RC\/SRC\u9020 (\u9244\u7b4b\/\u9244\u9aa8\u9244\u7b4b\u30b3\u30f3\u30af\u30ea\u30fc\u30c8, 47\u5e74)<\/option>\n                            <\/select>\n                    <\/div>\n                    <div>\n                        <label for=\"elapsed-years\" class=\"block text-sm font-medium text-text-medium mb-1\">\n                            <span data-lang-key=\"elapsedYears\">\u5efa\u7b51\u5df2\u8fc7\u5e74\u6570 (\u8d2d\u4e70\u65f6)<\/span>\n                             <span class=\"tooltip\">\n                                <span class=\"tooltiptext\" data-lang-key=\"elapsedYearsTooltip\">\u7528\u4e8e\u8ba1\u7b97\u4e2d\u53e4\u7269\u4e1a\u7684\u6298\u65e7\u3002\u65b0\u5efa\u7b51\u8bf7\u8f93\u51650\u3002<\/span>\n                            <\/span>\n                        <\/label>\n                        <input type=\"number\" id=\"elapsed-years\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"0\" min=\"0\">\n                    <\/div>\n                     <div>\n                        <label for=\"property-type\" class=\"block text-sm font-medium text-text-medium mb-1\" data-lang-key=\"propertyType\">\u623f\u4ea7\u7c7b\u578b (\u7528\u4e8e\u53d6\u5f97\u7a0e)<\/label>\n                        <select id=\"property-type\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light\">\n                            <option value=\"residential\" data-lang-key=\"residential\">\u4f4f\u5b85<\/option>\n                            <option value=\"land\" data-lang-key=\"land\">\u571f\u5730<\/option>\n                            <option value=\"other_building\" data-lang-key=\"other_building\">\u5176\u4ed6\u5efa\u7b51<\/option>\n                        <\/select>\n                    <\/div>\n                    <div>\n                        <label for=\"monthly-rent\" class=\"block text-sm font-medium text-text-medium mb-1\" data-lang-key=\"monthlyRent\">\u6708\u79df\u91d1 (\u65e5\u5143)<\/label>\n                        <input type=\"number\" id=\"monthly-rent\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"200000\">\n                    <\/div>\n                    <div>\n                        <label for=\"holding-period\" class=\"block text-sm font-medium text-text-medium mb-1\" data-lang-key=\"holdingPeriod\">\u9884\u8ba1\u6301\u6709\u671f (\u5e74)<\/label>\n                        <input type=\"number\" id=\"holding-period\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"10\" min=\"1\">\n                    <\/div>\n                <\/div>\n\n                <div class=\"space-y-4 p-5 bg-primary-dark border border-border-dark rounded-md shadow-md\">\n                    <h3 class=\"text-lg font-medium text-accent-gold font-serif\" data-lang-key=\"loanInfo\">\u8d37\u6b3e\u4fe1\u606f<\/h3>\n                    <div>\n                        <label for=\"loan-amount\" class=\"block text-sm font-medium text-text-medium mb-1\" data-lang-key=\"loanAmount\">\u8d37\u6b3e\u91d1\u989d (\u65e5\u5143)<\/label>\n                        <input type=\"number\" id=\"loan-amount\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"40000000\">\n                    <\/div>\n                    <div>\n                        <label for=\"interest-rate\" class=\"block text-sm font-medium text-text-medium mb-1\" data-lang-key=\"interestRate\">\u5e74\u5229\u7387 (%)<\/label>\n                        <input type=\"number\" id=\"interest-rate\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"2.5\" step=\"0.01\">\n                    <\/div>\n                    <div>\n                        <label for=\"loan-term\" class=\"block text-sm font-medium text-text-medium mb-1\" data-lang-key=\"loanTerm\">\u8d37\u6b3e\u671f\u9650 (\u5e74)<\/label>\n                        <input type=\"number\" id=\"loan-term\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"30\" min=\"1\">\n                    <\/div>\n                     <div class=\"flex items-center\">\n                        <input type=\"checkbox\" id=\"apply-mortgage-deduction\" class=\"h-4 w-4 text-accent-gold focus:ring-accent-gold border-border-dark rounded bg-card-dark mr-2\">\n                        <label for=\"apply-mortgage-deduction\" class=\"text-sm font-medium text-text-medium\">\n                             <span data-lang-key=\"applyMortgageDeduction\">\u5e94\u7528\u4f4f\u623f\u8d37\u6b3e\u51cf\u7a0e?<\/span>\n                             <span class=\"tooltip\">\n                                <span class=\"tooltiptext\" data-lang-key=\"mortgageDeductionTooltip\">\u5e74\u672b\u8d37\u6b3e\u4f59\u989d\u76840.7%\u53ef\u4ece\u6240\u5f97\u7a0e\u4e2d\u6263\u9664\uff08\u6709\u4e0a\u9650\u548c\u6761\u4ef6\u9650\u5236\uff09\u3002<\/span>\n                            <\/span>\n                         <\/label>\n                    <\/div>\n                <\/div>\n\n                <div class=\"space-y-4 p-5 bg-primary-dark border border-border-dark rounded-md shadow-md\">\n                    <h3 class=\"text-lg font-medium text-accent-gold font-serif\" data-lang-key=\"expensesTaxInfo\">\u8d39\u7528\u4e0e\u7a0e\u52a1\u4fe1\u606f<\/h3>\n                    <div>\n                        <label for=\"management-fee-rate\" class=\"block text-sm font-medium text-text-medium mb-1\">\n                            <span data-lang-key=\"managementFeeRate\">\u7ba1\u7406\u8d39\u7387 (% of Rent)<\/span>\n                            <span class=\"tooltip\">\n                                <span class=\"tooltiptext\" data-lang-key=\"managementFeeTooltip\">\u901a\u5e38\u4e3a\u79df\u91d1\u76845-10%\u3002<\/span>\n                            <\/span>\n                        <\/label>\n                        <input type=\"number\" id=\"management-fee-rate\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"5\" step=\"0.1\">\n                    <\/div>\n                    <div>\n                        <label for=\"maintenance-cost-rate\" class=\"block text-sm font-medium text-text-medium mb-1\">\n                             <span data-lang-key=\"maintenanceCostRate\">\u7ef4\u62a4\u6210\u672c\u7387 (% of Rent)<\/span>\n                            <span class=\"tooltip\">\n                                <span class=\"tooltiptext\" data-lang-key=\"maintenanceCostTooltip\">\u901a\u5e38\u4e3a\u79df\u91d1\u76845-10%\uff0c\u6216\u8f93\u5165\u5e74\u8d39\u3002<\/span>\n                            <\/span>\n                        <\/label>\n                        <input type=\"number\" id=\"maintenance-cost-rate\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"5\" step=\"0.1\">\n                        <label for=\"maintenance-cost-fixed\" class=\"block text-sm font-medium text-text-medium mb-1 mt-1\" data-lang-key=\"orAnnualAmount\">\u6216 \u5e74\u8d39 (\u65e5\u5143)<\/label>\n                        <input type=\"number\" id=\"maintenance-cost-fixed\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" placeholder=\"\u7559\u7a7a\u5219\u4f7f\u7528\u767e\u5206\u6bd4\">\n                    <\/div>\n                     <div>\n                        <label for=\"insurance-cost\" class=\"block text-sm font-medium text-text-medium mb-1\">\n                            <span data-lang-key=\"annualInsuranceCost\">\u5e74\u4fdd\u9669\u8d39 (\u65e5\u5143)<\/span>\n                             <span class=\"tooltip\">\n                                <span class=\"tooltiptext\" data-lang-key=\"insuranceCostTooltip\">\u5305\u62ec\u706b\u707e\u548c\u5730\u9707\u4fdd\u9669\u3002\u706b\u707e\u4fdd\u9669\u7ea6\u00a52\u4e07-4\u4e07\/2\u5e74\uff0c\u5730\u9707\u4fdd\u9669\u7ea6\u00a50.7\u4e07-2.75\u4e07\/\u5e74\u3002<\/span>\n                            <\/span>\n                        <\/label>\n                        <input type=\"number\" id=\"insurance-cost\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"30000\">\n                    <\/div>\n                     <div>\n                        <label for=\"vacancy-rate\" class=\"block text-sm font-medium text-text-medium mb-1\" data-lang-key=\"vacancyRate\">\u7a7a\u7f6e\u7387 (%)<\/label>\n                        <input type=\"number\" id=\"vacancy-rate\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"5\" step=\"0.1\">\n                    <\/div>\n                    <div>\n                        <label for=\"appreciation-rate\" class=\"block text-sm font-medium text-text-medium mb-1\">\n                            <span data-lang-key=\"annualAppreciationRate\">\u5e74\u8d44\u4ea7\u589e\u503c\u7387 (%)<\/span>\n                            <span class=\"tooltip\">\n                                <span class=\"tooltiptext\" data-lang-key=\"appreciationRateTooltip\">\u9ed8\u8ba4\u4e3a5%\u3002\u4e1c\u4eac\u5730\u533a\u8fd1\u5e74\u589e\u957f\u53ef\u80fd\u66f4\u9ad8\u3002<\/span>\n                            <\/span>\n                        <\/label>\n                        <input type=\"number\" id=\"appreciation-rate\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" value=\"5\" step=\"0.1\">\n                    <\/div>\n                    <div>\n                        <label for=\"investor-status\" class=\"block text-sm font-medium text-text-medium mb-1\" data-lang-key=\"investorStatus\">\u6295\u8d44\u8005\u8eab\u4efd<\/label>\n                        <select id=\"investor-status\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light\">\n                            <option value=\"resident\" data-lang-key=\"resident\">\u5c45\u6c11<\/option>\n                            <option value=\"non-resident\" data-lang-key=\"nonResident\">\u975e\u5c45\u6c11<\/option>\n                        <\/select>\n                    <\/div>\n                    <div>\n                        <label for=\"investor-type\" class=\"block text-sm font-medium text-text-medium mb-1\" data-lang-key=\"investorType\">\u6295\u8d44\u8005\u7c7b\u578b<\/label>\n                        <select id=\"investor-type\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light\">\n                            <option value=\"individual\" data-lang-key=\"individual\">\u4e2a\u4eba<\/option>\n                            <option value=\"corporation\" data-lang-key=\"corporation\">\u516c\u53f8<\/option>\n                        <\/select>\n                    <\/div>\n                     <div>\n                        <label for=\"income-tax-rate-override\" class=\"block text-sm font-medium text-text-medium mb-1\">\n                            <span data-lang-key=\"incomeTaxRateOverride\">\u6240\u5f97\u7a0e\u7387\u8986\u76d6 (%)<\/span>\n                             <span class=\"tooltip\">\n                                <span class=\"tooltiptext\" data-lang-key=\"incomeTaxRateTooltip\">\u7559\u7a7a\u5219\u4f7f\u7528\u9ed8\u8ba4\u7a0e\u7387\uff08\u4e2a\u4eba\u6700\u9ad837%\uff0c\u516c\u53f8\u7ea630.62%\uff0c\u975e\u5c45\u6c1120.42%\uff09\u3002\u8f93\u5165\u5177\u4f53\u7a0e\u7387\u4ee5\u8986\u76d6\u3002<\/span>\n                            <\/span>\n                        <\/label>\n                        <input type=\"number\" id=\"income-tax-rate-override\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" placeholder=\"\u7559\u7a7a\u4f7f\u7528\u9ed8\u8ba4\u503c\" step=\"0.1\">\n                    <\/div>\n                     <div>\n                        <label for=\"resident-tax-rate-override\" class=\"block text-sm font-medium text-text-medium mb-1\">\n                            <span data-lang-key=\"residentTaxRateOverride\">\u4f4f\u6c11\u7a0e\u7387\u8986\u76d6 (%)<\/span>\n                             <span class=\"tooltip\">\n                                <span class=\"tooltiptext\" data-lang-key=\"residentTaxRateTooltip\">\u901a\u5e38\u4e3a\u5e94\u7a0e\u6536\u5165\u768410%\u3002\u8f93\u5165\u5177\u4f53\u7a0e\u7387\u4ee5\u8986\u76d6\u3002\u4ec5\u9002\u7528\u4e8e\u5c45\u6c11\u3002<\/span>\n                            <\/span>\n                        <\/label>\n                        <input type=\"number\" id=\"resident-tax-rate-override\" class=\"block w-full px-3 py-2 border border-border-dark rounded-md shadow-sm focus:outline-none focus:ring-1 focus:ring-accent-gold focus:border-accent-gold sm:text-sm bg-card-dark text-text-light placeholder-text-medium\" placeholder=\"\u7559\u7a7a\u4f7f\u7528\u9ed8\u8ba4\u503c (10%)\" step=\"0.1\">\n                    <\/div>\n                <\/div>\n\n                <button id=\"calculate-button\" class=\"w-full bg-accent-gold hover:bg-accent-gold-dark text-primary-dark font-bold py-3 px-4 rounded-md transition duration-300 shadow-md focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-offset-primary-dark focus:ring-accent-gold\" data-lang-key=\"calculate\">\n                    \u8ba1\u7b97\u6a21\u62df\u7ed3\u679c\n                <\/button>\n            <\/div>\n\n            <div class=\"lg:col-span-2\">\n                <div class=\"mb-4 border-b border-border-dark\">\n                    <nav class=\"-mb-px flex space-x-1\" aria-label=\"Tabs\">\n                        <button class=\"tab-button active\" data-tab=\"overview\" data-lang-key=\"tabOverview\">\u6982\u8981<\/button>\n                        <button class=\"tab-button\" data-tab=\"monthly\" data-lang-key=\"tabMonthly\">\u6708\u5ea6\u8be6\u60c5<\/button>\n                        <button class=\"tab-button\" data-tab=\"tax\" data-lang-key=\"tabTax\">\u7a0e\u52a1\u8be6\u60c5<\/button>\n                    <\/nav>\n                <\/div>\n\n                <div id=\"tab-content-overview\" class=\"tab-content active\">\n                    <h2 class=\"text-2xl font-semibold text-accent-gold mb-6 font-serif\" data-lang-key=\"resultsOverview\">\u7ed3\u679c\u6982\u8981<\/h2>\n                    <div id=\"overview-results\" class=\"space-y-6\">\n                        <div class=\"grid grid-cols-1 md:grid-cols-2 gap-6\">\n                             <div class=\"bg-primary-dark p-5 rounded-lg shadow-lg border border-border-dark\">\n                                <h3 class=\"result-title text-lg font-semibold text-accent-gold mb-2 font-serif\" data-lang-key=\"initialInvestment\">\u521d\u59cb\u6295\u8d44<\/h3>\n                                <p class=\"result-value text-xl font-bold text-text-light\" id=\"initial-investment\">\u00a50<\/p>\n                                <p class=\"text-sm text-text-medium mt-1\" data-lang-key=\"downPaymentAcqTax\">\u9996\u4ed8 + \u4e0d\u52a8\u4ea7\u53d6\u5f97\u7a0e<\/p>\n                            <\/div>\n                            <div class=\"bg-primary-dark p-5 rounded-lg shadow-lg border border-border-dark\">\n                                <h3 class=\"result-title text-lg font-semibold text-accent-gold mb-2 font-serif\" data-lang-key=\"acquisitionTax\">\u4e0d\u52a8\u4ea7\u53d6\u5f97\u7a0e (\u4e00\u6b21\u6027)<\/h3>\n                                <p class=\"result-value text-xl font-bold text-text-light\" id=\"acquisition-tax\">\u00a50<\/p>\n                            <\/div>\n                            <div class=\"bg-primary-dark p-5 rounded-lg shadow-lg border border-border-dark\">\n                                <h3 class=\"result-title text-lg font-semibold text-accent-gold mb-2 font-serif\" data-lang-key=\"avgAnnualCashFlow\">\u5e74\u5747\u7a0e\u540e\u73b0\u91d1\u6d41<\/h3>\n                                <p class=\"result-value text-xl font-bold\" id=\"avg-annual-cash-flow\">\u00a50<\/p>\n                            <\/div>\n                            <div class=\"bg-primary-dark p-5 rounded-lg shadow-lg border border-border-dark\">\n                                <h3 class=\"result-title text-lg font-semibold text-accent-gold mb-2 font-serif\" data-lang-key=\"avgCashOnCash\">\u5e73\u5747\u73b0\u91d1\u56de\u62a5\u7387 (\u7a0e\u540e)<\/h3>\n                                <p class=\"result-value text-xl font-bold\" id=\"avg-cash-on-cash\">0.00%<\/p>\n                            <\/div>\n                             <div class=\"bg-primary-dark p-5 rounded-lg shadow-lg border border-border-dark\">\n                                <h3 class=\"result-title text-lg font-semibold text-accent-gold mb-2 font-serif\" data-lang-key=\"totalProfitOnSale\">\u9884\u8ba1\u51fa\u552e\u65f6\u603b\u5229\u6da6 (\u7a0e\u524d)<\/h3>\n                                <p class=\"result-value text-xl font-bold\" id=\"total-profit-on-sale\">\u00a50<\/p>\n                                <p class=\"text-sm text-text-medium mt-1\" data-lang-key=\"appreciationPlusCashFlow\">\u8d44\u4ea7\u589e\u503c + \u7d2f\u8ba1\u73b0\u91d1\u6d41 &#8211; \u5269\u4f59\u8d37\u6b3e<\/p>\n                            <\/div>\n                             <div class=\"bg-primary-dark p-5 rounded-lg shadow-lg border border-border-dark\">\n                                <h3 class=\"result-title text-lg font-semibold text-accent-gold mb-2 font-serif\" data-lang-key=\"totalRoiPreTax\">\u603b\u6295\u8d44\u56de\u62a5\u7387 (\u6301\u6709\u671f, \u7a0e\u524d)<\/h3>\n                                <p class=\"result-value text-xl font-bold\" id=\"total-roi-pre-tax\">0.00%<\/p>\n                             <\/div>\n                        <\/div>\n                        <div class=\"mt-8\">\n                            <h3 class=\"text-xl font-semibold text-accent-gold mb-4 font-serif\" data-lang-key=\"charts\">\u56fe\u8868<\/h3>\n                            <div class=\"mb-8 p-4 bg-primary-dark rounded-md border border-border-dark\">\n                                <canvas id=\"assetLoanChart\" height=\"300\"><\/canvas>\n                            <\/div>\n                            <div class=\"p-4 bg-primary-dark rounded-md border border-border-dark\">\n                                <canvas id=\"cashFlowChart\" height=\"300\"><\/canvas>\n                            <\/div>\n                        <\/div>\n                         <div id=\"calculation-summary\" class=\"mt-8 p-5 bg-primary-dark rounded-md border border-border-dark\">\n                            <h3 class=\"text-lg font-medium text-accent-gold mb-3 font-serif\" data-lang-key=\"calculationSummary\">\u8ba1\u7b97\u6458\u8981 (\u7b2c\u4e00\u5e74)<\/h3>\n                        <\/div>\n                    <\/div>\n                     <div id=\"overview-placeholder\" class=\"text-center text-text-medium py-16\">\n                        <p data-lang-key=\"enterDataPrompt\">\u8bf7\u8f93\u5165\u5de6\u4fa7\u53c2\u6570\u5e76\u70b9\u51fb\u201c\u8ba1\u7b97\u201d\u6309\u94ae\u67e5\u770b\u7ed3\u679c\u3002<\/p>\n                    <\/div>\n                <\/div>\n\n                <div id=\"tab-content-monthly\" class=\"tab-content\">\n                    <h2 class=\"text-2xl font-semibold text-accent-gold mb-6 font-serif\" data-lang-key=\"monthlyDetails\">\u6708\u5ea6\u8be6\u60c5<\/h2>\n                    <div id=\"monthly-results\" class=\"space-y-4 hidden\">\n                        <div class=\"overflow-x-auto rounded-md border border-border-dark\">\n                            <table class=\"min-w-full divide-y divide-border-dark\">\n                                <thead class=\"bg-primary-dark\/50\">\n                                    <tr>\n                                        <th class=\"px-4 py-3 text-left text-xs font-medium text-accent-gold uppercase tracking-wider\" data-lang-key=\"monthYear\">\u6708\u4efd\/\u5e74\u4efd<\/th>\n                                        <th class=\"px-4 py-3 text-left text-xs font-medium text-accent-gold uppercase tracking-wider\" data-lang-key=\"rentIncome\">\u79df\u91d1\u6536\u5165<\/th>\n                                        <th class=\"px-4 py-3 text-left text-xs font-medium text-accent-gold uppercase tracking-wider\" data-lang-key=\"operatingExpenses\">\u8fd0\u8425\u8d39\u7528<\/th>\n                                        <th class=\"px-4 py-3 text-left text-xs font-medium text-accent-gold uppercase tracking-wider\" data-lang-key=\"loanPayment\">\u8d37\u6b3e\u507f\u8fd8<\/th>\n                                        <th class=\"px-4 py-3 text-left text-xs font-medium text-accent-gold uppercase tracking-wider\" data-lang-key=\"preTaxCashFlow\">\u7a0e\u524d\u73b0\u91d1\u6d41<\/th>\n                                        <th class=\"px-4 py-3 text-left text-xs font-medium text-accent-gold uppercase tracking-wider\" data-lang-key=\"taxes\">\u7a0e\u8d39<\/th>\n                                        <th class=\"px-4 py-3 text-left text-xs font-medium text-accent-gold uppercase tracking-wider\" data-lang-key=\"postTaxCashFlow\">\u7a0e\u540e\u73b0\u91d1\u6d41<\/th>\n                                        <th class=\"px-4 py-3 text-left text-xs font-medium text-accent-gold uppercase tracking-wider\" data-lang-key=\"loanBalance\">\u8d37\u6b3e\u4f59\u989d<\/th>\n                                        <th class=\"px-4 py-3 text-left text-xs font-medium text-accent-gold uppercase tracking-wider\" data-lang-key=\"assetValue\">\u8d44\u4ea7\u4ef7\u503c<\/th>\n                                    <\/tr>\n                                <\/thead>\n                                <tbody id=\"monthly-table-body\" class=\"bg-card-dark divide-y divide-border-dark\">\n                                <\/tbody>\n                            <\/table>\n                        <\/div>\n                    <\/div>\n                     <div id=\"monthly-placeholder\" class=\"text-center text-text-medium py-16\">\n                         <p data-lang-key=\"calculateForMonthly\">\u8ba1\u7b97\u540e\u5c06\u5728\u6b64\u5904\u663e\u793a\u8be6\u7ec6\u7684\u6708\u5ea6\u6570\u636e\u8868\u3002<\/p>\n                    <\/div>\n                <\/div>\n\n                <div id=\"tab-content-tax\" class=\"tab-content\">\n                    <h2 class=\"text-2xl font-semibold text-accent-gold mb-6 font-serif\" data-lang-key=\"taxDetails\">\u7a0e\u52a1\u8be6\u60c5<\/h2>\n                     <div id=\"tax-results\" class=\"space-y-6 hidden\">\n                        <div class=\"bg-primary-dark p-5 rounded-lg shadow-lg border border-border-dark\">\n                             <h3 class=\"result-title text-lg font-semibold text-accent-gold mb-3 font-serif\" data-lang-key=\"taxSummaryFirstYear\">\u7a0e\u52a1\u6458\u8981 (\u7b2c\u4e00\u5e74)<\/h3>\n                             <div id=\"tax-summary-details\" class=\"space-y-2 text-sm text-text-light\">\n                             <\/div>\n                        <\/div>\n                        <div class=\"bg-primary-dark p-5 rounded-lg shadow-lg border border-border-dark\">\n                            <h3 class=\"result-title text-lg font-semibold text-accent-gold mb-2 font-serif\" data-lang-key=\"annualPropertyTax\">\u5e74\u5ea6\u56fa\u5b9a\u8d44\u4ea7\u7a0e\/\u90fd\u5e02\u8ba1\u5212\u7a0e<\/h3>\n                            <p class=\"result-value text-xl font-bold text-text-light\" id=\"annual-property-tax\">\u00a50<\/p>\n                            <p class=\"text-sm text-text-medium mt-1\" data-lang-key=\"propertyTaxTooltip\">\u57fa\u4e8e\u8bc4\u4f30\u4ef7 (\u7ea6\u8d2d\u4e70\u4ef770%) \u8ba1\u7b97\uff0c\u7a0e\u7387\u7ea61.4% + 0.3%\u3002<\/p>\n                        <\/div>\n                        <div class=\"bg-primary-dark p-5 rounded-lg shadow-lg border border-border-dark\">\n                            <h3 class=\"result-title text-lg font-semibold text-accent-gold mb-2 font-serif\" data-lang-key=\"depreciationFirstYear\">\u5e74\u5ea6\u6298\u65e7\u989d (\u7b2c\u4e00\u5e74)<\/h3>\n                            <p class=\"result-value text-xl font-bold text-text-light\" id=\"annual-depreciation\">\u00a50<\/p>\n                             <p class=\"text-sm text-text-medium mt-1\" data-lang-key=\"depreciationBasedOn\">\u57fa\u4e8e\u5efa\u7b51\u7c7b\u578b\u3001\u5efa\u7b51\u4ef7\u503c\u548c\u5df2\u8fc7\u5e74\u6570\u3002<\/p> <\/div>\n                        <div class=\"bg-primary-dark p-5 rounded-lg shadow-lg border border-border-dark\">\n                            <h3 class=\"result-title text-lg font-semibold text-accent-gold mb-2 font-serif\" data-lang-key=\"mortgageInterestDeductionApplicable\">\u4f4f\u623f\u8d37\u6b3e\u51cf\u7a0e\u9002\u7528\u60c5\u51b5<\/h3>\n                            <p id=\"mortgage-deduction-status\" class=\"text-base font-semibold\">\u672a\u5e94\u7528<\/p>\n                             <p class=\"text-sm text-text-medium mt-1\" data-lang-key=\"deductionAmountTooltip\">\u82e5\u9002\u7528\uff0c\u7b2c\u4e00\u5e74\u53ef\u6263\u9664\u6240\u5f97\u7a0e\u989d\u7ea6\u4e3a \u00a5<span id=\"mortgage-deduction-amount\">0<\/span>\u3002<\/p>\n                        <\/div>\n                        <div class=\"p-4 bg-primary-dark rounded-md border border-border-dark\">\n                            <canvas id=\"taxBreakdownChart\" height=\"300\"><\/canvas>\n                        <\/div>\n                    <\/div>\n                     <div id=\"tax-placeholder\" class=\"text-center text-text-medium py-16\">\n                         <p data-lang-key=\"calculateForTax\">\u8ba1\u7b97\u540e\u5c06\u5728\u6b64\u5904\u663e\u793a\u8be6\u7ec6\u7684\u7a0e\u52a1\u4fe1\u606f\u548c\u56fe\u8868\u3002<\/p>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <script>\n        \/\/ --- Language Data ---\n        const translations = {\n             zh: {\n                title: \"\u65e5\u672c\u623f\u5730\u4ea7\u6295\u8d44\u6a21\u62df\u5668\",\n                language: \"\u8bed\u8a00\",\n                inputParameters: \"\u8f93\u5165\u53c2\u6570\",\n                propertyInfo: \"\u623f\u4ea7\u4fe1\u606f\",\n                purchasePrice: \"\u8d2d\u4e70\u4ef7\u683c (\u65e5\u5143)\",\n                landValueRatio: \"\u571f\u5730\u4ef7\u503c\u5360\u6bd4 (%)\",\n                landValueRatioTooltip: \"\u571f\u5730\u4ef7\u503c\u5360\u603b\u8d2d\u4e70\u4ef7\u683c\u7684\u767e\u5206\u6bd4\u3002\u8fd9\u5bf9\u8ba1\u7b97\u5efa\u7b51\u7269\u7684\u6298\u65e7\u5f88\u91cd\u8981\u3002\",\n                buildingType: \"\u5efa\u7b51\u7c7b\u578b\",\n                wood: \"\u6728\u9020 (22\u5e74)\", \/\/ Updated\n                lightweight_steel: \"\u8f7b\u91cf\u94c1\u9aa8\u9020 (\u9aa8\u67b6\u539a 3mm\u8d854mm\u4ee5\u4e0b, 27\u5e74)\", \/\/ Updated\n                heavy_steel: \"(\u91cd\u91cf)\u94c1\u9aa8\u9020 (\u9aa8\u67b6\u539a 4mm\u8d85, 34\u5e74)\", \/\/ Updated\n                rc_src: \"RC\/SRC\u9020 (\u94a2\u7b4b\/\u94a2\u9aa8\u94a2\u7b4b\u6df7\u51dd\u571f, 47\u5e74)\", \/\/ Updated\n                \/\/ brick_stone_block: \"\u7816\/\u77f3\/\u780c\u5757\u9020 (38\u5e74)\", \/\/ Removed\n                elapsedYears: \"\u5efa\u7b51\u5df2\u8fc7\u5e74\u6570 (\u8d2d\u4e70\u65f6)\",\n                elapsedYearsTooltip: \"\u7528\u4e8e\u8ba1\u7b97\u4e2d\u53e4\u7269\u4e1a\u7684\u6298\u65e7\u3002\u65b0\u5efa\u7b51\u8bf7\u8f93\u51650\u3002\",\n                propertyType: \"\u623f\u4ea7\u7c7b\u578b (\u7528\u4e8e\u53d6\u5f97\u7a0e)\",\n                residential: \"\u4f4f\u5b85\",\n                land: \"\u571f\u5730\",\n                other_building: \"\u5176\u4ed6\u5efa\u7b51\",\n                monthlyRent: \"\u6708\u79df\u91d1 (\u65e5\u5143)\",\n                holdingPeriod: \"\u9884\u8ba1\u6301\u6709\u671f (\u5e74)\",\n                loanInfo: \"\u8d37\u6b3e\u4fe1\u606f\",\n                loanAmount: \"\u8d37\u6b3e\u91d1\u989d (\u65e5\u5143)\",\n                interestRate: \"\u5e74\u5229\u7387 (%)\",\n                loanTerm: \"\u8d37\u6b3e\u671f\u9650 (\u5e74)\",\n                applyMortgageDeduction: \"\u5e94\u7528\u4f4f\u623f\u8d37\u6b3e\u51cf\u7a0e?\",\n                mortgageDeductionTooltip: \"\u5e74\u672b\u8d37\u6b3e\u4f59\u989d\u76840.7%\u53ef\u4ece\u6240\u5f97\u7a0e\u4e2d\u6263\u9664\uff08\u6709\u4e0a\u9650\u548c\u6761\u4ef6\u9650\u5236\uff09\u3002\",\n                expensesTaxInfo: \"\u8d39\u7528\u4e0e\u7a0e\u52a1\u4fe1\u606f\",\n                managementFeeRate: \"\u7ba1\u7406\u8d39\u7387 (% of Rent)\",\n                managementFeeTooltip: \"\u901a\u5e38\u4e3a\u79df\u91d1\u76845-10%\u3002\",\n                maintenanceCostRate: \"\u7ef4\u62a4\u6210\u672c\u7387 (% of Rent)\",\n                maintenanceCostTooltip: \"\u901a\u5e38\u4e3a\u79df\u91d1\u76845-10%\uff0c\u6216\u8f93\u5165\u5e74\u8d39\u3002\",\n                orAnnualAmount: \"\u6216 \u5e74\u8d39 (\u65e5\u5143)\",\n                annualInsuranceCost: \"\u5e74\u4fdd\u9669\u8d39 (\u65e5\u5143)\",\n                insuranceCostTooltip: \"\u5305\u62ec\u706b\u707e\u548c\u5730\u9707\u4fdd\u9669\u3002\u706b\u707e\u4fdd\u9669\u7ea6\u00a52\u4e07-4\u4e07\/2\u5e74\uff0c\u5730\u9707\u4fdd\u9669\u7ea6\u00a50.7\u4e07-2.75\u4e07\/\u5e74\u3002\",\n                vacancyRate: \"\u7a7a\u7f6e\u7387 (%)\",\n                annualAppreciationRate: \"\u5e74\u8d44\u4ea7\u589e\u503c\u7387 (%)\",\n                appreciationRateTooltip: \"\u9ed8\u8ba4\u4e3a5%\u3002\u4e1c\u4eac\u5730\u533a\u8fd1\u5e74\u589e\u957f\u53ef\u80fd\u66f4\u9ad8\u3002\",\n                investorStatus: \"\u6295\u8d44\u8005\u8eab\u4efd\",\n                resident: \"\u5c45\u6c11\",\n                nonResident: \"\u975e\u5c45\u6c11\",\n                investorType: \"\u6295\u8d44\u8005\u7c7b\u578b\",\n                individual: \"\u4e2a\u4eba\",\n                corporation: \"\u516c\u53f8\",\n                incomeTaxRateOverride: \"\u6240\u5f97\u7a0e\u7387\u8986\u76d6 (%)\",\n                incomeTaxRateTooltip: \"\u7559\u7a7a\u5219\u4f7f\u7528\u9ed8\u8ba4\u7a0e\u7387\uff08\u4e2a\u4eba\u6700\u9ad837%\uff0c\u516c\u53f8\u7ea630.62%\uff0c\u975e\u5c45\u6c1120.42%\uff09\u3002\u8f93\u5165\u5177\u4f53\u7a0e\u7387\u4ee5\u8986\u76d6\u3002\",\n                residentTaxRateOverride: \"\u4f4f\u6c11\u7a0e\u7387\u8986\u76d6 (%)\",\n                residentTaxRateTooltip: \"\u901a\u5e38\u4e3a\u5e94\u7a0e\u6536\u5165\u768410%\u3002\u8f93\u5165\u5177\u4f53\u7a0e\u7387\u4ee5\u8986\u76d6\u3002\u4ec5\u9002\u7528\u4e8e\u5c45\u6c11\u3002\",\n                calculate: \"\u8ba1\u7b97\u6a21\u62df\u7ed3\u679c\",\n                tabOverview: \"\u6982\u8981\",\n                tabMonthly: \"\u6708\u5ea6\u8be6\u60c5\",\n                tabTax: \"\u7a0e\u52a1\u8be6\u60c5\",\n                resultsOverview: \"\u7ed3\u679c\u6982\u8981\",\n                initialInvestment: \"\u521d\u59cb\u6295\u8d44\",\n                downPaymentAcqTax: \"\u9996\u4ed8 + \u4e0d\u52a8\u4ea7\u53d6\u5f97\u7a0e\",\n                acquisitionTax: \"\u4e0d\u52a8\u4ea7\u53d6\u5f97\u7a0e (\u4e00\u6b21\u6027)\",\n                avgAnnualCashFlow: \"\u5e74\u5747\u7a0e\u540e\u73b0\u91d1\u6d41\",\n                avgCashOnCash: \"\u5e73\u5747\u73b0\u91d1\u56de\u62a5\u7387 (\u7a0e\u540e)\",\n                totalProfitOnSale: \"\u9884\u8ba1\u51fa\u552e\u65f6\u603b\u5229\u6da6 (\u7a0e\u524d)\",\n                appreciationPlusCashFlow: \"\u8d44\u4ea7\u589e\u503c + \u7d2f\u8ba1\u73b0\u91d1\u6d41 - \u5269\u4f59\u8d37\u6b3e\",\n                totalRoiPreTax: \"\u603b\u6295\u8d44\u56de\u62a5\u7387 (\u6301\u6709\u671f, \u7a0e\u524d)\",\n                charts: \"\u56fe\u8868\",\n                calculationSummary: \"\u8ba1\u7b97\u6458\u8981 (\u7b2c\u4e00\u5e74)\",\n                enterDataPrompt: \"\u8bf7\u8f93\u5165\u5de6\u4fa7\u53c2\u6570\u5e76\u70b9\u51fb\u201c\u8ba1\u7b97\u201d\u6309\u94ae\u67e5\u770b\u7ed3\u679c\u3002\",\n                monthlyDetails: \"\u6708\u5ea6\u8be6\u60c5\",\n                monthYear: \"\u6708\u4efd\/\u5e74\u4efd\",\n                rentIncome: \"\u79df\u91d1\u6536\u5165\",\n                operatingExpenses: \"\u8fd0\u8425\u8d39\u7528\",\n                loanPayment: \"\u8d37\u6b3e\u507f\u8fd8\",\n                preTaxCashFlow: \"\u7a0e\u524d\u73b0\u91d1\u6d41\",\n                taxes: \"\u7a0e\u8d39\",\n                postTaxCashFlow: \"\u7a0e\u540e\u73b0\u91d1\u6d41\",\n                loanBalance: \"\u8d37\u6b3e\u4f59\u989d\",\n                assetValue: \"\u8d44\u4ea7\u4ef7\u503c\",\n                calculateForMonthly: \"\u8ba1\u7b97\u540e\u5c06\u5728\u6b64\u5904\u663e\u793a\u8be6\u7ec6\u7684\u6708\u5ea6\u6570\u636e\u8868\u3002\",\n                taxDetails: \"\u7a0e\u52a1\u8be6\u60c5\",\n                taxSummaryFirstYear: \"\u7a0e\u52a1\u6458\u8981 (\u7b2c\u4e00\u5e74)\",\n                annualPropertyTax: \"\u5e74\u5ea6\u56fa\u5b9a\u8d44\u4ea7\u7a0e\/\u90fd\u5e02\u8ba1\u5212\u7a0e\",\n                propertyTaxTooltip: \"\u57fa\u4e8e\u8bc4\u4f30\u4ef7 (\u7ea6\u8d2d\u4e70\u4ef770%) \u8ba1\u7b97\uff0c\u7a0e\u7387\u7ea61.4% + 0.3%\u3002\",\n                depreciationFirstYear: \"\u5e74\u5ea6\u6298\u65e7\u989d (\u7b2c\u4e00\u5e74)\",\n                depreciationBasedOn: \"\u57fa\u4e8e\u5efa\u7b51\u7c7b\u578b\u3001\u5efa\u7b51\u4ef7\u503c\u548c\u5df2\u8fc7\u5e74\u6570\u3002\",\n                mortgageInterestDeductionApplicable: \"\u4f4f\u623f\u8d37\u6b3e\u51cf\u7a0e\u9002\u7528\u60c5\u51b5\",\n                deductionAmountTooltip: \"\u82e5\u9002\u7528\uff0c\u7b2c\u4e00\u5e74\u53ef\u6263\u9664\u6240\u5f97\u7a0e\u989d\u7ea6\u4e3a \u00a5\",\n                calculateForTax: \"\u8ba1\u7b97\u540e\u5c06\u5728\u6b64\u5904\u663e\u793a\u8be6\u7ec6\u7684\u7a0e\u52a1\u4fe1\u606f\u548c\u56fe\u8868\u3002\",\n                chartAssetValue: \"\u8d44\u4ea7\u4ef7\u503c\",\n                chartLoanBalance: \"\u8d37\u6b3e\u4f59\u989d\",\n                chartNetEquity: \"\u51c0\u8d44\u4ea7\",\n                chartAnnualCashFlow: \"\u5e74\u5ea6\u7a0e\u540e\u73b0\u91d1\u6d41\",\n                chartYears: \"\u5e74\",\n                chartAmountJPY: \"\u91d1\u989d (\u65e5\u5143)\",\n                chartIncomeTax: \"\u6240\u5f97\u7a0e\",\n                chartResidentTax: \"\u4f4f\u6c11\u7a0e\",\n                chartPropertyTax: \"\u56fa\u5b9a\u8d44\u4ea7\u7a0e\",\n                chartTaxBreakdown: \"\u5e74\u5ea6\u7a0e\u8d39\u6784\u6210 (\u7b2c\u4e00\u5e74)\",\n                grossRent: \"\u5e74\u603b\u79df\u91d1\u6536\u5165\",\n                effectiveRent: \"\u5e74\u6709\u6548\u79df\u91d1\u6536\u5165 (\u6263\u9664\u7a7a\u7f6e)\",\n                totalOpEx: \"\u5e74\u603b\u8fd0\u8425\u8d39\u7528\",\n                netOpIncome: \"\u51c0\u8fd0\u8425\u6536\u5165 (NOI)\",\n                annualDepreciation: \"\u5e74\u6298\u65e7\u989d\",\n                loanInterestPaid: \"\u5e74\u8d37\u6b3e\u5229\u606f\u652f\u4ed8\",\n                taxableIncome: \"\u5e94\u7a0e\u6536\u5165\",\n                incomeTax: \"\u6240\u5f97\u7a0e\",\n                residentTax: \"\u4f4f\u6c11\u7a0e\",\n                specialIncomeTax: \"\u7279\u522b\u6240\u5f97\u7a0e (\u975e\u5c45\u4f4f\u8005)\",\n                totalTaxes: \"\u5e74\u603b\u7a0e\u8d39\",\n                netIncomeAfterTax: \"\u7a0e\u540e\u51c0\u6536\u5165\",\n                preTaxCashFlowYear1: \"\u7a0e\u524d\u73b0\u91d1\u6d41 (\u7b2c\u4e00\u5e74)\",\n                postTaxCashFlowYear1: \"\u7a0e\u540e\u73b0\u91d1\u6d41 (\u7b2c\u4e00\u5e74)\",\n                cashOnCashYear1: \"\u73b0\u91d1\u56de\u62a5\u7387 (\u7b2c\u4e00\u5e74)\",\n                applied: \"\u5df2\u5e94\u7528\",\n                notApplied: \"\u672a\u5e94\u7528\",\n                notApplicable: \"\u4e0d\u9002\u7528 (\u975e\u5c45\u6c11\/\u516c\u53f8)\",\n                yen: \"\u65e5\u5143\",\n                yearsSuffix: \"\u5e74\",\n            },\n            ja: {\n                title: \"\u65e5\u672c\u4e0d\u52d5\u7523\u6295\u8cc7\u30b7\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\",\n                language: \"\u8a00\u8a9e\",\n                inputParameters: \"\u5165\u529b\u30d1\u30e9\u30e1\u30fc\u30bf\",\n                propertyInfo: \"\u7269\u4ef6\u60c5\u5831\",\n                purchasePrice: \"\u8cfc\u5165\u4fa1\u683c (\u5186)\",\n                landValueRatio: \"\u571f\u5730\u4fa1\u683c\u6bd4\u7387 (%)\",\n                landValueRatioTooltip: \"\u7dcf\u8cfc\u5165\u4fa1\u683c\u306b\u5bfe\u3059\u308b\u571f\u5730\u4fa1\u683c\u306e\u5272\u5408\u3002\u5efa\u7269\u306e\u6e1b\u4fa1\u511f\u5374\u8a08\u7b97\u306b\u91cd\u8981\u3067\u3059\u3002\",\n                buildingType: \"\u5efa\u7269\u69cb\u9020\",\n                wood: \"\u6728\u9020 (22\u5e74)\", \/\/ Updated\n                lightweight_steel: \"\u8efd\u91cf\u9244\u9aa8\u9020 (\u9aa8\u683c\u6750\u8089\u539a 3mm\u8d854mm\u4ee5\u4e0b, 27\u5e74)\", \/\/ Updated\n                heavy_steel: \"\uff08\u91cd\u91cf\uff09\u9244\u9aa8\u9020 (\u9aa8\u683c\u6750\u8089\u539a 4mm\u8d85, 34\u5e74)\", \/\/ Updated\n                rc_src: \"RC\/SRC\u9020 (\u9244\u7b4b\/\u9244\u9aa8\u9244\u7b4b\u30b3\u30f3\u30af\u30ea\u30fc\u30c8, 47\u5e74)\", \/\/ Updated\n                \/\/ brick_stone_block: \"\u308c\u3093\u304c\u30fb\u77f3\u30fb\u30d6\u30ed\u30c3\u30af\u9020 (38\u5e74)\", \/\/ Removed\n                elapsedYears: \"\u5efa\u7269\u7d4c\u904e\u5e74\u6570 (\u8cfc\u5165\u6642)\",\n                elapsedYearsTooltip: \"\u4e2d\u53e4\u7269\u4ef6\u306e\u6e1b\u4fa1\u511f\u5374\u8a08\u7b97\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002\u65b0\u7bc9\u306e\u5834\u5408\u306f0\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\",\n                propertyType: \"\u7269\u4ef6\u7a2e\u5225 (\u53d6\u5f97\u7a0e\u7528)\",\n                residential: \"\u4f4f\u5b85\",\n                land: \"\u571f\u5730\",\n                other_building: \"\u305d\u306e\u4ed6\u5efa\u7269\",\n                monthlyRent: \"\u6708\u984d\u8cc3\u6599 (\u5186)\",\n                holdingPeriod: \"\u4fdd\u6709\u671f\u9593 (\u5e74)\",\n                loanInfo: \"\u30ed\u30fc\u30f3\u60c5\u5831\",\n                loanAmount: \"\u501f\u5165\u91d1\u984d (\u5186)\",\n                interestRate: \"\u5e74\u5229 (%)\",\n                loanTerm: \"\u8fd4\u6e08\u671f\u9593 (\u5e74)\",\n                applyMortgageDeduction: \"\u4f4f\u5b85\u30ed\u30fc\u30f3\u6e1b\u7a0e\u3092\u9069\u7528\u3057\u307e\u3059\u304b\uff1f\",\n                mortgageDeductionTooltip: \"\u5e74\u672b\u30ed\u30fc\u30f3\u6b8b\u9ad8\u306e0.7%\u304c\u6240\u5f97\u7a0e\u304b\u3089\u63a7\u9664\u3055\u308c\u307e\u3059\uff08\u4e0a\u9650\u30fb\u6761\u4ef6\u3042\u308a\uff09\u3002\",\n                expensesTaxInfo: \"\u8cbb\u7528\u30fb\u7a0e\u91d1\u60c5\u5831\",\n                managementFeeRate: \"\u7ba1\u7406\u8cbb\u7387 (\u8cc3\u6599\u6bd4 %)\",\n                managementFeeTooltip: \"\u901a\u5e38\u3001\u8cc3\u6599\u306e5\uff5e10%\u3002\",\n                maintenanceCostRate: \"\u4fee\u7e55\u8cbb\u7387 (\u8cc3\u6599\u6bd4 %)\",\n                maintenanceCostTooltip: \"\u901a\u5e38\u3001\u8cc3\u6599\u306e5\uff5e10%\u3001\u307e\u305f\u306f\u5e74\u984d\u3092\u5165\u529b\u3002\",\n                orAnnualAmount: \"\u307e\u305f\u306f \u5e74\u984d (\u5186)\",\n                annualInsuranceCost: \"\u5e74\u9593\u4fdd\u967a\u6599 (\u5186)\",\n                insuranceCostTooltip: \"\u706b\u707d\u4fdd\u967a\u3068\u5730\u9707\u4fdd\u967a\u3092\u542b\u307f\u307e\u3059\u3002\u706b\u707d\u4fdd\u967a\u306f\u7d042\u4e07\uff5e4\u4e07\u5186\/2\u5e74\u3001\u5730\u9707\u4fdd\u967a\u306f\u7d040.7\u4e07\uff5e2.75\u4e07\u5186\/\u5e74\u3002\",\n                vacancyRate: \"\u7a7a\u5ba4\u7387 (%)\",\n                annualAppreciationRate: \"\u5e74\u9593\u8cc7\u7523\u4fa1\u5024\u4e0a\u6607\u7387 (%)\",\n                appreciationRateTooltip: \"\u30c7\u30d5\u30a9\u30eb\u30c8\u306f5%\u3002\u8fd1\u5e74\u3001\u6771\u4eac\u570f\u3067\u306f\u3088\u308a\u9ad8\u3044\u4e0a\u6607\u7387\u3082\u898b\u3089\u308c\u307e\u3059\u3002\",\n                investorStatus: \"\u6295\u8cc7\u5bb6\u533a\u5206\",\n                resident: \"\u5c45\u4f4f\u8005\",\n                nonResident: \"\u975e\u5c45\u4f4f\u8005\",\n                investorType: \"\u6295\u8cc7\u5bb6\u30bf\u30a4\u30d7\",\n                individual: \"\u500b\u4eba\",\n                corporation: \"\u6cd5\u4eba\",\n                incomeTaxRateOverride: \"\u6240\u5f97\u7a0e\u7387\u4e0a\u66f8\u304d (%)\",\n                incomeTaxRateTooltip: \"\u7a7a\u6b04\u306e\u5834\u5408\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u7a0e\u7387\uff08\u500b\u4eba\u6700\u592737%\u3001\u6cd5\u4eba\u7d0430.62%\u3001\u975e\u5c45\u4f4f\u800520.42%\uff09\u3092\u4f7f\u7528\u3002\u7279\u5b9a\u306e\u7a0e\u7387\u3067\u4e0a\u66f8\u304d\u3002\",\n                residentTaxRateOverride: \"\u4f4f\u6c11\u7a0e\u7387\u4e0a\u66f8\u304d (%)\",\n                residentTaxRateTooltip: \"\u901a\u5e38\u3001\u8ab2\u7a0e\u6240\u5f97\u306e10%\u3002\u7279\u5b9a\u306e\u7a0e\u7387\u3067\u4e0a\u66f8\u304d\u3002\u5c45\u4f4f\u8005\u306e\u307f\u9069\u7528\u3002\",\n                calculate: \"\u30b7\u30df\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3\u7d50\u679c\u3092\u8a08\u7b97\",\n                tabOverview: \"\u6982\u8981\",\n                tabMonthly: \"\u6708\u6b21\u8a73\u7d30\",\n                tabTax: \"\u7a0e\u52d9\u8a73\u7d30\",\n                resultsOverview: \"\u7d50\u679c\u6982\u8981\",\n                initialInvestment: \"\u521d\u671f\u6295\u8cc7\u984d\",\n                downPaymentAcqTax: \"\u982d\u91d1 + \u4e0d\u52d5\u7523\u53d6\u5f97\u7a0e\",\n                acquisitionTax: \"\u4e0d\u52d5\u7523\u53d6\u5f97\u7a0e (\u4e00\u6642)\",\n                avgAnnualCashFlow: \"\u5e73\u5747\u5e74\u9593\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30ed\u30fc (\u7a0e\u5f15\u5f8c)\",\n                avgCashOnCash: \"\u5e73\u5747\u81ea\u5df1\u8cc7\u91d1\u5229\u56de\u308a (\u7a0e\u5f15\u5f8c)\",\n                totalProfitOnSale: \"\u58f2\u5374\u6642\u60f3\u5b9a\u5229\u76ca\u7dcf\u984d (\u7a0e\u5f15\u524d)\",\n                appreciationPlusCashFlow: \"\u8cc7\u7523\u4fa1\u5024\u4e0a\u6607 + \u7d2f\u8a08\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30ed\u30fc - \u30ed\u30fc\u30f3\u6b8b\u50b5\",\n                totalRoiPreTax: \"\u7dcf\u6295\u8cc7\u53ce\u76ca\u7387 (\u4fdd\u6709\u671f\u9593, \u7a0e\u5f15\u524d)\",\n                charts: \"\u30b0\u30e9\u30d5\",\n                calculationSummary: \"\u8a08\u7b97\u30b5\u30de\u30ea\u30fc (\u521d\u5e74\u5ea6)\",\n                enterDataPrompt: \"\u5de6\u5074\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u5165\u529b\u3057\u3001\u300c\u8a08\u7b97\u300d\u30dc\u30bf\u30f3\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u7d50\u679c\u3092\u8868\u793a\u3057\u3066\u304f\u3060\u3055\u3044\u3002\",\n                monthlyDetails: \"\u6708\u6b21\u8a73\u7d30\",\n                monthYear: \"\u5e74\u6708\",\n                rentIncome: \"\u8cc3\u6599\u53ce\u5165\",\n                operatingExpenses: \"\u904b\u55b6\u8cbb\u7528\",\n                loanPayment: \"\u30ed\u30fc\u30f3\u8fd4\u6e08\",\n                preTaxCashFlow: \"\u7a0e\u5f15\u524d\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30ed\u30fc\",\n                taxes: \"\u7a0e\u91d1\",\n                postTaxCashFlow: \"\u7a0e\u5f15\u5f8c\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30ed\u30fc\",\n                loanBalance: \"\u30ed\u30fc\u30f3\u6b8b\u9ad8\",\n                assetValue: \"\u8cc7\u7523\u4fa1\u5024\",\n                calculateForMonthly: \"\u8a08\u7b97\u5f8c\u3001\u8a73\u7d30\u306a\u6708\u6b21\u30c7\u30fc\u30bf\u8868\u304c\u3053\u3053\u306b\u8868\u793a\u3055\u308c\u307e\u3059\u3002\",\n                taxDetails: \"\u7a0e\u52d9\u8a73\u7d30\",\n                taxSummaryFirstYear: \"\u7a0e\u52d9\u30b5\u30de\u30ea\u30fc (\u521d\u5e74\u5ea6)\",\n                annualPropertyTax: \"\u5e74\u9593\u56fa\u5b9a\u8cc7\u7523\u7a0e\u30fb\u90fd\u5e02\u8a08\u753b\u7a0e\",\n                propertyTaxTooltip: \"\u8a55\u4fa1\u984d\uff08\u8cfc\u5165\u4fa1\u683c\u306e\u7d0470%\uff09\u306b\u57fa\u3065\u304d\u8a08\u7b97\u3002\u7a0e\u7387\u306f\u7d041.4% + 0.3%\u3002\",\n                depreciationFirstYear: \"\u5e74\u9593\u6e1b\u4fa1\u511f\u5374\u8cbb (\u521d\u5e74\u5ea6)\",\n                depreciationBasedOn: \"\u5efa\u7269\u69cb\u9020\u3001\u5efa\u7269\u4fa1\u683c\u3001\u7d4c\u904e\u5e74\u6570\u306b\u57fa\u3065\u304d\u307e\u3059\u3002\",\n                mortgageInterestDeductionApplicable: \"\u4f4f\u5b85\u30ed\u30fc\u30f3\u6e1b\u7a0e\u9069\u7528\u72b6\u6cc1\",\n                deductionAmountTooltip: \"\u9069\u7528\u3055\u308c\u308b\u5834\u5408\u3001\u521d\u5e74\u5ea6\u306e\u6240\u5f97\u7a0e\u63a7\u9664\u984d\u306f\u7d04 \",\n                calculateForTax: \"\u8a08\u7b97\u5f8c\u3001\u8a73\u7d30\u306a\u7a0e\u52d9\u60c5\u5831\u3068\u30b0\u30e9\u30d5\u304c\u3053\u3053\u306b\u8868\u793a\u3055\u308c\u307e\u3059\u3002\",\n                chartAssetValue: \"\u8cc7\u7523\u4fa1\u5024\",\n                chartLoanBalance: \"\u30ed\u30fc\u30f3\u6b8b\u9ad8\",\n                chartNetEquity: \"\u7d14\u8cc7\u7523\",\n                chartAnnualCashFlow: \"\u5e74\u9593\u7a0e\u5f15\u5f8c\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30ed\u30fc\",\n                chartYears: \"\u5e74\",\n                chartAmountJPY: \"\u91d1\u984d (\u5186)\",\n                chartIncomeTax: \"\u6240\u5f97\u7a0e\",\n                chartResidentTax: \"\u4f4f\u6c11\u7a0e\",\n                chartPropertyTax: \"\u56fa\u5b9a\u8cc7\u7523\u7a0e\",\n                chartTaxBreakdown: \"\u5e74\u9593\u7a0e\u91d1\u5185\u8a33 (\u521d\u5e74\u5ea6)\",\n                grossRent: \"\u5e74\u9593\u7dcf\u8cc3\u6599\u53ce\u5165\",\n                effectiveRent: \"\u5e74\u9593\u5b9f\u52b9\u8cc3\u6599\u53ce\u5165 (\u7a7a\u5ba4\u63a7\u9664\u5f8c)\",\n                totalOpEx: \"\u5e74\u9593\u7dcf\u904b\u55b6\u8cbb\u7528\",\n                netOpIncome: \"\u7d14\u55b6\u696d\u5229\u76ca (NOI)\",\n                annualDepreciation: \"\u5e74\u9593\u6e1b\u4fa1\u511f\u5374\u8cbb\",\n                loanInterestPaid: \"\u5e74\u9593\u30ed\u30fc\u30f3\u5229\u606f\u652f\u6255\u984d\",\n                taxableIncome: \"\u8ab2\u7a0e\u6240\u5f97\",\n                incomeTax: \"\u6240\u5f97\u7a0e\",\n                residentTax: \"\u4f4f\u6c11\u7a0e\",\n                specialIncomeTax: \"\u5fa9\u8208\u7279\u5225\u6240\u5f97\u7a0e (\u975e\u5c45\u4f4f\u8005)\",\n                totalTaxes: \"\u5e74\u9593\u7dcf\u7a0e\u984d\",\n                netIncomeAfterTax: \"\u7a0e\u5f15\u5f8c\u7d14\u5229\u76ca\",\n                preTaxCashFlowYear1: \"\u7a0e\u5f15\u524d\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30ed\u30fc (\u521d\u5e74\u5ea6)\",\n                postTaxCashFlowYear1: \"\u7a0e\u5f15\u5f8c\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30ed\u30fc (\u521d\u5e74\u5ea6)\",\n                cashOnCashYear1: \"\u81ea\u5df1\u8cc7\u91d1\u5229\u56de\u308a (\u521d\u5e74\u5ea6)\",\n                applied: \"\u9069\u7528\",\n                notApplied: \"\u672a\u9069\u7528\",\n                notApplicable: \"\u9069\u7528\u5916 (\u975e\u5c45\u4f4f\u8005\/\u6cd5\u4eba)\",\n                yen: \"\u5186\",\n                yearsSuffix: \"\u5e74\",\n            },\n            en: {\n                title: \"Japan Real Estate Investment Simulator\",\n                language: \"Language\",\n                inputParameters: \"Input Parameters\",\n                propertyInfo: \"Property Information\",\n                purchasePrice: \"Purchase Price (JPY)\",\n                landValueRatio: \"Land Value Ratio (%)\",\n                landValueRatioTooltip: \"Percentage of the total purchase price attributed to the land. Important for building depreciation calculation.\",\n                buildingType: \"Building Type\",\n                wood: \"Wood (22 years)\", \/\/ Updated\n                lightweight_steel: \"Lightweight Steel (>3mm-4mm thick, 27 years)\", \/\/ Updated\n                heavy_steel: \"Heavy Steel (>4mm thick, 34 years)\", \/\/ Updated\n                rc_src: \"RC\/SRC (Reinforced Concrete, 47 years)\", \/\/ Updated\n                \/\/ brick_stone_block: \"Brick\/Stone\/Block (38 years)\", \/\/ Removed\n                elapsedYears: \"Building Elapsed Years (at purchase)\",\n                elapsedYearsTooltip: \"Used for calculating depreciation of used properties. Enter 0 for new buildings.\",\n                propertyType: \"Property Type (for Acquisition Tax)\",\n                residential: \"Residential\",\n                land: \"Land\",\n                other_building: \"Other Building\",\n                monthlyRent: \"Monthly Rent (JPY)\",\n                holdingPeriod: \"Holding Period (Years)\",\n                loanInfo: \"Loan Information\",\n                loanAmount: \"Loan Amount (JPY)\",\n                interestRate: \"Annual Interest Rate (%)\",\n                loanTerm: \"Loan Term (Years)\",\n                applyMortgageDeduction: \"Apply Mortgage Tax Deduction?\",\n                mortgageDeductionTooltip: \"0.7% of the year-end loan balance can be deducted from income tax (subject to limits and conditions).\",\n                expensesTaxInfo: \"Expenses & Tax Info\",\n                managementFeeRate: \"Management Fee Rate (% of Rent)\",\n                managementFeeTooltip: \"Typically 5-10% of rent.\",\n                maintenanceCostRate: \"Maintenance Cost Rate (% of Rent)\",\n                maintenanceCostTooltip: \"Typically 5-10% of rent, or enter annual amount.\",\n                orAnnualAmount: \"Or Annual Amount (JPY)\",\n                annualInsuranceCost: \"Annual Insurance Cost (JPY)\",\n                insuranceCostTooltip: \"Includes fire and earthquake insurance. Fire ins. approx. \u00a520k-40k\/2yrs, Earthquake ins. approx. \u00a57.3k-27.5k\/yr.\",\n                vacancyRate: \"Vacancy Rate (%)\",\n                annualAppreciationRate: \"Annual Appreciation Rate (%)\",\n                appreciationRateTooltip: \"Default is 5%. Growth in Tokyo area may have been higher recently.\",\n                investorStatus: \"Investor Status\",\n                resident: \"Resident\",\n                nonResident: \"Non-Resident\",\n                investorType: \"Investor Type\",\n                individual: \"Individual\",\n                corporation: \"Corporation\",\n                incomeTaxRateOverride: \"Income Tax Rate Override (%)\",\n                incomeTaxRateTooltip: \"Leave blank for default rates (Indiv. up to 37%, Corp. ~30.62%, Non-Res. 20.42%). Enter specific rate to override.\",\n                residentTaxRateOverride: \"Resident Tax Rate Override (%)\",\n                residentTaxRateTooltip: \"Typically 10% of taxable income. Enter specific rate to override. Applies to residents only.\",\n                calculate: \"Calculate Simulation Results\",\n                tabOverview: \"Overview\",\n                tabMonthly: \"Monthly Details\",\n                tabTax: \"Tax Details\",\n                resultsOverview: \"Results Overview\",\n                initialInvestment: \"Initial Investment\",\n                downPaymentAcqTax: \"Down Payment + Acquisition Tax\",\n                acquisitionTax: \"Acquisition Tax (One-time)\",\n                avgAnnualCashFlow: \"Avg. Annual Cash Flow (After Tax)\",\n                avgCashOnCash: \"Avg. Cash-on-Cash Return (After Tax)\",\n                totalProfitOnSale: \"Est. Total Profit on Sale (Pre-Tax)\",\n                appreciationPlusCashFlow: \"Appreciation + Cum. Cash Flow - Loan Balance\",\n                totalRoiPreTax: \"Total ROI (Holding Period, Pre-Tax)\",\n                charts: \"Charts\",\n                calculationSummary: \"Calculation Summary (Year 1)\",\n                enterDataPrompt: \"Please enter parameters on the left and click 'Calculate' to see the results.\",\n                monthlyDetails: \"Monthly Details\",\n                monthYear: \"Month\/Year\",\n                rentIncome: \"Rent Income\",\n                operatingExpenses: \"Operating Expenses\",\n                loanPayment: \"Loan Payment\",\n                preTaxCashFlow: \"Pre-Tax Cash Flow\",\n                taxes: \"Taxes\",\n                postTaxCashFlow: \"Post-Tax Cash Flow\",\n                loanBalance: \"Loan Balance\",\n                assetValue: \"Asset Value\",\n                calculateForMonthly: \"Detailed monthly data table will be displayed here after calculation.\",\n                taxDetails: \"Tax Details\",\n                taxSummaryFirstYear: \"Tax Summary (Year 1)\",\n                annualPropertyTax: \"Annual Property\/City Planning Tax\",\n                propertyTaxTooltip: \"Based on assessed value (~70% of purchase price). Rate approx. 1.4% + 0.3%.\",\n                depreciationFirstYear: \"Annual Depreciation (Year 1)\",\n                depreciationBasedOn: \"Based on building type, value, and elapsed years.\",\n                mortgageInterestDeductionApplicable: \"Mortgage Deduction Applicability\",\n                deductionAmountTooltip: \"If applicable, potential income tax deduction in Year 1 is approx. \u00a5\",\n                calculateForTax: \"Detailed tax information and charts will be displayed here after calculation.\",\n                chartAssetValue: \"Asset Value\",\n                chartLoanBalance: \"Loan Balance\",\n                chartNetEquity: \"Net Equity\",\n                chartAnnualCashFlow: \"Annual Post-Tax Cash Flow\",\n                chartYears: \"Years\",\n                chartAmountJPY: \"Amount (JPY)\",\n                chartIncomeTax: \"Income Tax\",\n                chartResidentTax: \"Resident Tax\",\n                chartPropertyTax: \"Property Tax\",\n                chartTaxBreakdown: \"Annual Tax Breakdown (Year 1)\",\n                grossRent: \"Gross Annual Rent\",\n                effectiveRent: \"Effective Annual Rent (Net Vacancy)\",\n                totalOpEx: \"Total Annual Operating Expenses\",\n                netOpIncome: \"Net Operating Income (NOI)\",\n                annualDepreciation: \"Annual Depreciation\",\n                loanInterestPaid: \"Annual Loan Interest Paid\",\n                taxableIncome: \"Taxable Income\",\n                incomeTax: \"Income Tax\",\n                residentTax: \"Resident Tax\",\n                specialIncomeTax: \"Special Income Tax (Non-Resident)\",\n                totalTaxes: \"Total Annual Taxes\",\n                netIncomeAfterTax: \"Net Income After Tax\",\n                preTaxCashFlowYear1: \"Pre-Tax Cash Flow (Year 1)\",\n                postTaxCashFlowYear1: \"Post-Tax Cash Flow (Year 1)\",\n                cashOnCashYear1: \"Cash-on-Cash Return (Year 1)\",\n                applied: \"Applied\",\n                notApplied: \"Not Applied\",\n                notApplicable: \"Not Applicable (Non-Res\/Corp)\",\n                yen: \"JPY\",\n                yearsSuffix: \" Years\",\n            }\n        };\n\n        \/\/ --- DOM Elements ---\n        const languageSelect = document.getElementById('language-select');\n        const calculateButton = document.getElementById('calculate-button');\n        const tabButtons = document.querySelectorAll('.tab-button');\n        const tabContents = document.querySelectorAll('.tab-content');\n        const overviewResults = document.getElementById('overview-results');\n        const monthlyResults = document.getElementById('monthly-results');\n        const taxResults = document.getElementById('tax-results');\n        const overviewPlaceholder = document.getElementById('overview-placeholder');\n        const monthlyPlaceholder = document.getElementById('monthly-placeholder');\n        const taxPlaceholder = document.getElementById('tax-placeholder');\n\n        \/\/ Input Fields\n        const purchasePriceEl = document.getElementById('purchase-price');\n        const landValueRatioEl = document.getElementById('land-value-ratio');\n        const buildingTypeEl = document.getElementById('building-type');\n        const elapsedYearsEl = document.getElementById('elapsed-years'); \/\/ New\n        const propertyTypeEl = document.getElementById('property-type');\n        const monthlyRentEl = document.getElementById('monthly-rent');\n        const holdingPeriodEl = document.getElementById('holding-period');\n        const loanAmountEl = document.getElementById('loan-amount');\n        const interestRateEl = document.getElementById('interest-rate');\n        const loanTermEl = document.getElementById('loan-term');\n        const applyMortgageDeductionEl = document.getElementById('apply-mortgage-deduction');\n        const managementFeeRateEl = document.getElementById('management-fee-rate');\n        const maintenanceCostRateEl = document.getElementById('maintenance-cost-rate');\n        const maintenanceCostFixedEl = document.getElementById('maintenance-cost-fixed');\n        const insuranceCostEl = document.getElementById('insurance-cost');\n        const vacancyRateEl = document.getElementById('vacancy-rate');\n        const appreciationRateEl = document.getElementById('appreciation-rate');\n        const investorStatusEl = document.getElementById('investor-status');\n        const investorTypeEl = document.getElementById('investor-type');\n        const incomeTaxRateOverrideEl = document.getElementById('income-tax-rate-override');\n        const residentTaxRateOverrideEl = document.getElementById('resident-tax-rate-override');\n\n        \/\/ Output Fields\n        const initialInvestmentEl = document.getElementById('initial-investment');\n        const acquisitionTaxEl = document.getElementById('acquisition-tax');\n        const avgAnnualCashFlowEl = document.getElementById('avg-annual-cash-flow');\n        const avgCashOnCashEl = document.getElementById('avg-cash-on-cash');\n        const totalProfitOnSaleEl = document.getElementById('total-profit-on-sale');\n        const totalRoiPreTaxEl = document.getElementById('total-roi-pre-tax');\n        const monthlyTableBody = document.getElementById('monthly-table-body');\n        const annualPropertyTaxEl = document.getElementById('annual-property-tax');\n        const annualDepreciationEl = document.getElementById('annual-depreciation');\n        const mortgageDeductionStatusEl = document.getElementById('mortgage-deduction-status');\n        const mortgageDeductionAmountEl = document.getElementById('mortgage-deduction-amount');\n        const calculationSummaryContainer = document.getElementById('calculation-summary');\n        const taxSummaryDetailsContainer = document.getElementById('tax-summary-details');\n\n\n        \/\/ --- Chart Instances ---\n        let assetLoanChart = null;\n        let cashFlowChart = null;\n        let taxBreakdownChart = null;\n\n        \/\/ --- Theme Colors for Charts ---\n        const chartColors = {\n            background: 'rgba(42, 42, 42, 0.8)', \/\/ --bg-card with alpha\n            text: '#e0e0e0', \/\/ --text-primary\n            grid: '#444444', \/\/ --border-color\n            accent1: '#36a2eb', \/\/ Light Blue (Asset Value)\n            accent2: '#ff6384', \/\/ Pink\/Red (Loan Balance)\n            accent3: '#4bc0c0', \/\/ Teal (Net Equity \/ Positive CF)\n            accent4: '#ffcd56', \/\/ Yellow (Property Tax)\n            accent5: '#c9cbcf', \/\/ Gray (Placeholder)\n            gold: '#daa520', \/\/ --accent-gold\n            positive: '#22c55e',\n            negative: '#ef4444',\n        };\n\n        \/\/ --- Utility Functions ---\n        const formatCurrency = (value, lang = 'zh') => {\n            const currency = (lang === 'en') ? 'JPY' : '\u5186'; \/\/ Use \u5186 for Japanese\n             if (isNaN(value)) return `0 ${currency}`;\n             \/\/ Use ja-JP locale for Japanese formatting consistency\n            return new Intl.NumberFormat('ja-JP', { style: 'currency', currency: 'JPY', minimumFractionDigits: 0, maximumFractionDigits: 0 }).format(value);\n        };\n\n        const formatPercent = (value) => {\n            if (isNaN(value)) return '0.00%';\n            return `${(value * 100).toFixed(2)}%`;\n        };\n\n        const getLang = () => languageSelect.value;\n\n        const translateUI = () => {\n            const lang = getLang();\n            const t = translations[lang];\n            document.documentElement.lang = lang; \/\/ Set html lang attribute\n\n            document.querySelectorAll('[data-lang-key]').forEach(el => {\n                const key = el.getAttribute('data-lang-key');\n                if (t[key]) {\n                    if (el.classList.contains('tooltiptext')) {\n                         el.textContent = t[key];\n                    } else if (el.tagName === 'BUTTON' || el.tagName === 'LABEL' || el.tagName === 'H1' || el.tagName === 'H2' || el.tagName === 'H3' || el.tagName === 'TH' || el.tagName === 'P' || (el.tagName === 'SPAN' && !el.closest('.tooltip'))) {\n                         \/\/ Check if it's the mortgage deduction amount span\n                         if (el.id !== 'mortgage-deduction-amount') {\n                             el.textContent = t[key];\n                         }\n                    } else if (el.tagName === 'OPTION') {\n                         el.textContent = t[key];\n                    }\n                }\n            });\n             \/\/ Re-run calculation display to format numbers and update chart labels\n             if (window.simulationResults) {\n                 displayResults(window.simulationResults); \/\/ This will re-render charts with new labels\n             } else {\n                 \/\/ Update chart titles even if no results yet\n                 const t = translations[getLang()];\n                 if (assetLoanChart) assetLoanChart.options.plugins.title.text = `${t.chartAssetValue}, ${t.chartLoanBalance} & ${t.chartNetEquity}`;\n                 if (cashFlowChart) cashFlowChart.options.plugins.title.text = t.chartAnnualCashFlow;\n                 if (taxBreakdownChart) taxBreakdownChart.options.plugins.title.text = t.chartTaxBreakdown;\n                 if (assetLoanChart) assetLoanChart.update('none');\n                 if (cashFlowChart) cashFlowChart.update('none');\n                 if (taxBreakdownChart) taxBreakdownChart.update('none');\n             }\n        };\n\n        \/\/ --- Calculation Logic ---\n        const calculateSimulation = () => {\n            \/\/ --- Get Inputs ---\n            const purchasePrice = parseFloat(purchasePriceEl.value) || 0;\n            const landValueRatio = (parseFloat(landValueRatioEl.value) || 0) \/ 100;\n            const buildingType = buildingTypeEl.value; \/\/ Updated value based on selection\n            const elapsedYears = parseInt(elapsedYearsEl.value) || 0;\n            const propertyType = propertyTypeEl.value;\n            const monthlyRent = parseFloat(monthlyRentEl.value) || 0;\n            const holdingPeriod = parseInt(holdingPeriodEl.value) || 1;\n            const loanAmount = parseFloat(loanAmountEl.value) || 0;\n            const interestRateAnnual = (parseFloat(interestRateEl.value) || 0) \/ 100;\n            const loanTermYears = parseInt(loanTermEl.value) || 1;\n            const applyMortgageDeduction = applyMortgageDeductionEl.checked;\n            const managementFeeRate = (parseFloat(managementFeeRateEl.value) || 0) \/ 100;\n            let maintenanceCostRate = (parseFloat(maintenanceCostRateEl.value) || 0) \/ 100;\n            const maintenanceCostFixed = parseFloat(maintenanceCostFixedEl.value) || 0;\n            const insuranceCostAnnual = parseFloat(insuranceCostEl.value) || 0;\n            const vacancyRate = (parseFloat(vacancyRateEl.value) || 0) \/ 100;\n            const appreciationRateAnnual = (parseFloat(appreciationRateEl.value) || 0) \/ 100;\n            const investorStatus = investorStatusEl.value;\n            const investorType = investorTypeEl.value;\n            const incomeTaxRateOverride = incomeTaxRateOverrideEl.value ? parseFloat(incomeTaxRateOverrideEl.value) \/ 100 : null;\n            const residentTaxRateOverride = residentTaxRateOverrideEl.value ? parseFloat(residentTaxRateOverrideEl.value) \/ 100 : null;\n\n            \/\/ --- Basic Calculations ---\n            const buildingValue = purchasePrice * (1 - landValueRatio);\n            const landValue = purchasePrice * landValueRatio;\n            const downPayment = purchasePrice - loanAmount;\n            const monthlyInterestRate = interestRateAnnual \/ 12;\n            const loanTermMonths = loanTermYears * 12;\n\n            \/\/ --- Depreciation Calculation (Modified for Used Properties & New Categories) ---\n            let statutoryUsefulLife;\n            switch (buildingType) {\n                case 'wood': statutoryUsefulLife = 22; break;\n                case 'lightweight_steel': statutoryUsefulLife = 27; break; \/\/ Representative value\n                case 'heavy_steel': statutoryUsefulLife = 34; break;\n                case 'rc_src': statutoryUsefulLife = 47; break;\n                \/\/ case 'brick_stone_block': statutoryUsefulLife = 38; break; \/\/ Removed\n                default: statutoryUsefulLife = 47; \/\/ Default to longest life if type unknown\n            }\n\n            let depreciationUsefulLife;\n            if (elapsedYears <= 0) {\n                \/\/ New property\n                depreciationUsefulLife = statutoryUsefulLife;\n            } else {\n                \/\/ Used property calculation\n                let remainingLife;\n                if (elapsedYears < statutoryUsefulLife) {\n                    remainingLife = (statutoryUsefulLife - elapsedYears) + (elapsedYears * 0.2);\n                } else {\n                    remainingLife = statutoryUsefulLife * 0.2;\n                }\n                \/\/ Round down and apply 2-year minimum\n                depreciationUsefulLife = Math.max(2, Math.floor(remainingLife));\n            }\n\n            \/\/ Calculate depreciation rate (simplified method: 1 \/ useful life)\n            const depreciationRate = depreciationUsefulLife > 0 ? (1 \/ depreciationUsefulLife) : 0;\n            const annualDepreciation = buildingValue * depreciationRate;\n\n            \/\/ --- Assessed Value (for taxes) ---\n            const assessedValue = purchasePrice * 0.7;\n            const assessedBuildingValue = buildingValue * 0.7;\n            const assessedLandValue = landValue * 0.7;\n\n            \/\/ --- Acquisition Tax (One-time) ---\n            let acquisitionTaxRate = 0.03;\n            let acquisitionTaxBase = assessedValue;\n            if (propertyType === 'land' || propertyType === 'residential') {\n                 acquisitionTaxRate = 0.03;\n                 acquisitionTaxBase = assessedValue;\n            } else if (propertyType === 'other_building') {\n                 acquisitionTaxRate = 0.04;\n                 acquisitionTaxBase = assessedBuildingValue;\n            }\n            const acquisitionTax = acquisitionTaxBase * acquisitionTaxRate;\n\n            \/\/ --- Initial Investment ---\n            const initialInvestment = downPayment + acquisitionTax;\n\n            \/\/ --- Property Tax (Annual) ---\n            const propertyTaxRate = 0.014;\n            const cityPlanningTaxRate = 0.003;\n            const annualPropertyTaxTotal = assessedValue * (propertyTaxRate + cityPlanningTaxRate);\n\n            \/\/ --- Loan Payment Calculation (Amortization) ---\n            let monthlyPayment = 0;\n            if (loanAmount > 0 && monthlyInterestRate > 0) {\n                 monthlyPayment = loanAmount * (monthlyInterestRate * Math.pow(1 + monthlyInterestRate, loanTermMonths)) \/ (Math.pow(1 + monthlyInterestRate, loanTermMonths) - 1);\n            } else if (loanAmount > 0 && interestRateAnnual === 0) {\n                 monthlyPayment = loanAmount \/ loanTermMonths;\n            }\n\n            \/\/ --- Simulation Loop (Monthly) ---\n            const results = {\n                monthly: [],\n                annual: [],\n                summary: {\n                    initialInvestment: initialInvestment,\n                    acquisitionTax: acquisitionTax,\n                    avgAnnualCashFlow: 0,\n                    avgCashOnCash: 0,\n                    totalProfitOnSale: 0,\n                    totalRoiPreTax: 0,\n                    annualPropertyTax: annualPropertyTaxTotal,\n                    annualDepreciation: annualDepreciation,\n                    mortgageDeductionApplicable: false,\n                    mortgageDeductionAmountYear1: 0,\n                    year1: {}\n                }\n            };\n\n            let currentLoanBalance = loanAmount;\n            let currentAssetValue = purchasePrice;\n            let totalCashFlowPostTax = 0;\n            let cumulativeInterestPaid = 0;\n\n            for (let year = 1; year <= holdingPeriod; year++) {\n                let annualGrossRent = 0;\n                let annualEffectiveRent = 0;\n                let annualManagementFee = 0;\n                let annualMaintenanceCost = 0;\n                let annualLoanPayment = 0;\n                let annualInterestPaid = 0;\n                let annualPrincipalPaid = 0;\n                let annualPreTaxCashFlow = 0;\n                let annualPostTaxCashFlow = 0;\n                let annualIncomeTax = 0;\n                let annualResidentTax = 0;\n                let annualSpecialIncomeTax = 0;\n                let annualTotalTaxes = 0;\n\n                if (year > 1) {\n                     currentAssetValue *= (1 + appreciationRateAnnual);\n                }\n\n                for (let month = 1; month <= 12; month++) {\n                    const monthIndex = (year - 1) * 12 + month -1;\n                    const grossRent = monthlyRent;\n                    const vacancyLoss = grossRent * vacancyRate;\n                    const effectiveRent = grossRent - vacancyLoss;\n                    const managementFee = grossRent * managementFeeRate;\n                    let maintenanceCost;\n                    if (maintenanceCostFixed > 0) {\n                        maintenanceCost = maintenanceCostFixed \/ 12;\n                        maintenanceCostRate = 0;\n                    } else {\n                        maintenanceCost = grossRent * maintenanceCostRate;\n                    }\n                    const insuranceCost = insuranceCostAnnual \/ 12;\n                    const propertyTax = annualPropertyTaxTotal \/ 12;\n                    const operatingExpenses = managementFee + maintenanceCost + insuranceCost + propertyTax;\n\n                    let interestPayment = 0;\n                    let principalPayment = 0;\n                    if (currentLoanBalance > 0) {\n                         interestPayment = currentLoanBalance * monthlyInterestRate;\n                         principalPayment = monthlyPayment - interestPayment;\n                         if (principalPayment > currentLoanBalance) {\n                             principalPayment = currentLoanBalance;\n                             monthlyPayment = interestPayment + principalPayment;\n                         }\n                         currentLoanBalance -= principalPayment;\n                         if (currentLoanBalance < 0.01) currentLoanBalance = 0;\n                    }\n\n                    const preTaxCashFlow = effectiveRent - operatingExpenses - monthlyPayment;\n\n                    results.monthly.push({\n                        month: monthIndex + 1, year: year, grossRent: grossRent, effectiveRent: effectiveRent,\n                        operatingExpenses: operatingExpenses, loanPayment: monthlyPayment, interestPayment: interestPayment,\n                        principalPayment: principalPayment, preTaxCashFlow: preTaxCashFlow, taxes: 0, postTaxCashFlow: 0,\n                        loanBalance: currentLoanBalance, assetValue: currentAssetValue\n                    });\n\n                    annualGrossRent += grossRent;\n                    annualEffectiveRent += effectiveRent;\n                    annualManagementFee += managementFee;\n                    annualMaintenanceCost += maintenanceCost;\n                    annualLoanPayment += monthlyPayment;\n                    annualInterestPaid += interestPayment;\n                    annualPrincipalPaid += principalPayment;\n                    annualPreTaxCashFlow += preTaxCashFlow;\n                    cumulativeInterestPaid += interestPayment;\n                } \/\/ End Monthly Loop\n\n                \/\/ --- Annual Tax Calculation ---\n                const annualNOI = annualEffectiveRent - annualManagementFee - annualMaintenanceCost - insuranceCostAnnual - annualPropertyTaxTotal;\n                const taxableIncome = annualNOI - annualInterestPaid - annualDepreciation;\n\n                let incomeTaxRate = 0;\n                let residentTaxRate = 0;\n                let specialIncomeTaxRate = 0;\n\n                if (investorStatus === 'non-resident') {\n                    incomeTaxRate = incomeTaxRateOverride ?? 0.2042;\n                    residentTaxRate = 0;\n                    specialIncomeTaxRate = 0;\n                } else {\n                     residentTaxRate = residentTaxRateOverride ?? 0.10;\n                     specialIncomeTaxRate = 0;\n                     if (investorType === 'individual') {\n                         incomeTaxRate = incomeTaxRateOverride ?? 0.37;\n                     } else {\n                         incomeTaxRate = incomeTaxRateOverride ?? 0.3062;\n                     }\n                }\n\n                annualIncomeTax = Math.max(0, taxableIncome) * incomeTaxRate;\n                annualResidentTax = Math.max(0, taxableIncome) * residentTaxRate;\n\n                 let mortgageDeductionBenefit = 0;\n                 let mortgageDeductionApplicableThisYear = false;\n                 if (applyMortgageDeduction &#038;&#038; investorStatus === 'resident' &#038;&#038; investorType === 'individual' &#038;&#038; year <= 13 &#038;&#038; currentLoanBalance > 0) {\n                    const potentialDeduction = currentLoanBalance * 0.007;\n                    const maxDeduction = 350000; \/\/ Simplified cap\n                    const actualDeduction = Math.min(potentialDeduction, maxDeduction);\n                    mortgageDeductionBenefit = Math.min(actualDeduction, annualIncomeTax);\n                    annualIncomeTax -= mortgageDeductionBenefit;\n                    mortgageDeductionApplicableThisYear = true;\n                 }\n\n                 if (year === 1) {\n                     results.summary.mortgageDeductionAmountYear1 = mortgageDeductionBenefit;\n                     results.summary.mortgageDeductionApplicable = mortgageDeductionApplicableThisYear;\n                 }\n\n\n                annualTotalTaxes = annualIncomeTax + annualResidentTax + annualSpecialIncomeTax;\n                annualPostTaxCashFlow = annualPreTaxCashFlow - annualTotalTaxes;\n\n                results.annual.push({\n                    year: year, assetValue: currentAssetValue, loanBalance: currentLoanBalance,\n                    netEquity: currentAssetValue - currentLoanBalance, grossRent: annualGrossRent, effectiveRent: annualEffectiveRent,\n                    operatingExpenses: annualManagementFee + annualMaintenanceCost + insuranceCostAnnual + annualPropertyTaxTotal,\n                    noi: annualNOI, loanPayment: annualLoanPayment, interestPaid: annualInterestPaid, principalPaid: annualPrincipalPaid,\n                    depreciation: annualDepreciation,\n                    taxableIncome: taxableIncome, incomeTax: annualIncomeTax, residentTax: annualResidentTax,\n                    specialIncomeTax: annualSpecialIncomeTax, totalTaxes: annualTotalTaxes, preTaxCashFlow: annualPreTaxCashFlow,\n                    postTaxCashFlow: annualPostTaxCashFlow, cashOnCash: initialInvestment > 0 ? annualPostTaxCashFlow \/ initialInvestment : 0,\n                    mortgageDeductionBenefit: mortgageDeductionBenefit, mortgageDeductionApplicable: mortgageDeductionApplicableThisYear\n                });\n\n                totalCashFlowPostTax += annualPostTaxCashFlow;\n\n                 if (year === 1) {\n                    results.summary.year1 = results.annual[0];\n                 }\n            } \/\/ End Annual Loop\n\n            results.summary.avgAnnualCashFlow = totalCashFlowPostTax \/ holdingPeriod;\n            const totalCashOnCash = results.annual.reduce((sum, yearData) => sum + yearData.cashOnCash, 0);\n            results.summary.avgCashOnCash = totalCashOnCash \/ holdingPeriod;\n\n            const finalAssetValue = currentAssetValue;\n            const finalLoanBalance = currentLoanBalance;\n            const appreciationProfit = finalAssetValue - purchasePrice;\n            const totalPreTaxCashFlow = results.annual.reduce((sum, yearData) => sum + yearData.preTaxCashFlow, 0);\n            results.summary.totalProfitOnSale = appreciationProfit + totalPreTaxCashFlow;\n            results.summary.totalRoiPreTax = initialInvestment > 0 ? results.summary.totalProfitOnSale \/ initialInvestment : 0;\n\n            window.simulationResults = results;\n            return results;\n        };\n\n\n        \/\/ --- Display Logic ---\n        const displayResults = (results) => {\n            if (!results) return;\n\n            const lang = getLang();\n            const t = translations[lang];\n\n            \/\/ Show\/Hide Placeholders\n            overviewResults.classList.remove('hidden');\n            monthlyResults.classList.remove('hidden');\n            taxResults.classList.remove('hidden');\n            overviewPlaceholder.classList.add('hidden');\n            monthlyPlaceholder.classList.add('hidden');\n            taxPlaceholder.classList.add('hidden');\n\n            \/\/ Formatters\n            const formatDisplayCurrency = (value) => formatCurrency(value, lang);\n            const formatDisplayPercent = (value) => formatPercent(value);\n\n            \/\/ --- Overview Tab ---\n            initialInvestmentEl.textContent = formatDisplayCurrency(results.summary.initialInvestment);\n            acquisitionTaxEl.textContent = formatDisplayCurrency(results.summary.acquisitionTax);\n            avgAnnualCashFlowEl.textContent = formatDisplayCurrency(results.summary.avgAnnualCashFlow);\n            avgAnnualCashFlowEl.className = `result-value text-xl font-bold ${results.summary.avgAnnualCashFlow >= 0 ? 'positive' : 'negative'}`;\n            avgCashOnCashEl.textContent = formatDisplayPercent(results.summary.avgCashOnCash);\n            avgCashOnCashEl.className = `result-value text-xl font-bold ${results.summary.avgCashOnCash >= 0 ? 'positive' : 'negative'}`;\n            totalProfitOnSaleEl.textContent = formatDisplayCurrency(results.summary.totalProfitOnSale);\n             totalProfitOnSaleEl.className = `result-value text-xl font-bold ${results.summary.totalProfitOnSale >= 0 ? 'positive' : 'negative'}`;\n            totalRoiPreTaxEl.textContent = formatDisplayPercent(results.summary.totalRoiPreTax);\n            totalRoiPreTaxEl.className = `result-value text-xl font-bold ${results.summary.totalRoiPreTax >= 0 ? 'positive' : 'negative'}`;\n\n\n            \/\/ --- Calculation Summary (Year 1) ---\n            const year1 = results.summary.year1;\n            calculationSummaryContainer.innerHTML = `\n                <h3 class=\"text-lg font-medium text-accent-gold mb-3 font-serif\" data-lang-key=\"calculationSummary\">${t.calculationSummary}<\/h3>\n                <dl class=\"grid grid-cols-1 md:grid-cols-2 gap-x-6 gap-y-2 text-sm text-text-light\">\n                    <dt class=\"text-text-medium\">${t.grossRent}:<\/dt><dd class=\"text-right\">${formatDisplayCurrency(year1.grossRent)}<\/dd>\n                    <dt class=\"text-text-medium\">${t.effectiveRent}:<\/dt><dd class=\"text-right\">${formatDisplayCurrency(year1.effectiveRent)}<\/dd>\n                    <dt class=\"text-text-medium\">${t.totalOpEx}:<\/dt><dd class=\"text-right\">${formatDisplayCurrency(year1.operatingExpenses)}<\/dd>\n                    <dt class=\"font-semibold text-text-medium\">${t.netOpIncome}:<\/dt><dd class=\"text-right font-semibold\">${formatDisplayCurrency(year1.noi)}<\/dd>\n                    <dt class=\"text-text-medium\">${t.annualDepreciation}:<\/dt><dd class=\"text-right\">${formatDisplayCurrency(year1.depreciation)}<\/dd>\n                    <dt class=\"text-text-medium\">${t.loanInterestPaid}:<\/dt><dd class=\"text-right\">${formatDisplayCurrency(year1.interestPaid)}<\/dd>\n                    <dt class=\"font-semibold text-text-medium\">${t.taxableIncome}:<\/dt><dd class=\"text-right font-semibold ${year1.taxableIncome >= 0 ? '' : 'negative'}\">${formatDisplayCurrency(year1.taxableIncome)}<\/dd>\n                    <dt class=\"text-text-medium\">${t.incomeTax}:<\/dt><dd class=\"text-right\">${formatDisplayCurrency(year1.incomeTax + year1.mortgageDeductionBenefit)}<\/dd>\n                     ${year1.mortgageDeductionBenefit > 0 ? `<dt class=\"pl-4 text-xs text-text-medium\">${t.mortgageInterestDeductionApplicable}:<\/dt><dd class=\"text-right text-xs negative\">-${formatDisplayCurrency(year1.mortgageDeductionBenefit)}<\/dd>` : ''}\n                    <dt class=\"text-text-medium\">${t.residentTax}:<\/dt><dd class=\"text-right\">${formatDisplayCurrency(year1.residentTax)}<\/dd>\n                    ${year1.specialIncomeTax > 0 ? `<dt class=\"text-text-medium\">${t.specialIncomeTax}:<\/dt><dd class=\"text-right\">${formatDisplayCurrency(year1.specialIncomeTax)}<\/dd>` : ''}\n                    <dt class=\"font-semibold text-text-medium\">${t.totalTaxes}:<\/dt><dd class=\"text-right font-semibold\">${formatDisplayCurrency(year1.totalTaxes)}<\/dd>\n                    <dt class=\"mt-2 text-text-medium\">${t.preTaxCashFlowYear1}:<\/dt><dd class=\"text-right mt-2 ${year1.preTaxCashFlow >= 0 ? 'positive' : 'negative'}\">${formatDisplayCurrency(year1.preTaxCashFlow)}<\/dd>\n                    <dt class=\"font-bold text-text-medium\">${t.postTaxCashFlowYear1}:<\/dt><dd class=\"text-right font-bold ${year1.postTaxCashFlow >= 0 ? 'positive' : 'negative'}\">${formatDisplayCurrency(year1.postTaxCashFlow)}<\/dd>\n                    <dt class=\"text-text-medium\">${t.cashOnCashYear1}:<\/dt><dd class=\"text-right ${year1.cashOnCash >= 0 ? 'positive' : 'negative'}\">${formatDisplayPercent(year1.cashOnCash)}<\/dd>\n                <\/dl>\n            `;\n\n\n            \/\/ --- Monthly Tab ---\n            monthlyTableBody.innerHTML = '';\n            results.monthly.forEach(m => {\n                const annualData = results.annual[m.year - 1];\n                const monthlyTaxes = annualData.totalTaxes \/ 12;\n                const monthlyPostTaxCashFlow = m.preTaxCashFlow - monthlyTaxes;\n                const row = `\n                    <tr class=\"hover:bg-primary-dark\/30\">\n                        <td class=\"px-4 py-3 whitespace-nowrap text-sm text-text-medium\">${m.month}\/${m.year}<\/td>\n                        <td class=\"px-4 py-3 whitespace-nowrap text-sm text-text-light\">${formatDisplayCurrency(m.effectiveRent)}<\/td>\n                        <td class=\"px-4 py-3 whitespace-nowrap text-sm text-text-light\">${formatDisplayCurrency(m.operatingExpenses)}<\/td>\n                        <td class=\"px-4 py-3 whitespace-nowrap text-sm text-text-light\">${formatDisplayCurrency(m.loanPayment)}<\/td>\n                        <td class=\"px-4 py-3 whitespace-nowrap text-sm ${m.preTaxCashFlow >= 0 ? 'positive' : 'negative'}\">${formatDisplayCurrency(m.preTaxCashFlow)}<\/td>\n                        <td class=\"px-4 py-3 whitespace-nowrap text-sm text-text-light\">${formatDisplayCurrency(monthlyTaxes)}<\/td>\n                        <td class=\"px-4 py-3 whitespace-nowrap text-sm font-medium ${monthlyPostTaxCashFlow >= 0 ? 'positive' : 'negative'}\">${formatDisplayCurrency(monthlyPostTaxCashFlow)}<\/td>\n                        <td class=\"px-4 py-3 whitespace-nowrap text-sm text-text-light\">${formatDisplayCurrency(m.loanBalance)}<\/td>\n                        <td class=\"px-4 py-3 whitespace-nowrap text-sm text-text-light\">${formatDisplayCurrency(results.annual[m.year-1].assetValue)}<\/td>\n                    <\/tr>\n                `;\n                monthlyTableBody.innerHTML += row;\n            });\n\n            \/\/ --- Tax Tab ---\n            annualPropertyTaxEl.textContent = formatDisplayCurrency(results.summary.annualPropertyTax);\n            annualDepreciationEl.textContent = formatDisplayCurrency(results.summary.annualDepreciation); \/\/ Use the value calculated in summary\n\n             \/\/ Mortgage Deduction Status\n             const year1DeductionApplicable = results.summary.mortgageDeductionApplicable;\n             const year1DeductionBenefit = results.summary.mortgageDeductionAmountYear1;\n             const isEligible = document.getElementById('apply-mortgage-deduction').checked && (investorStatusEl.value === 'resident' && investorTypeEl.value === 'individual');\n\n             if (year1DeductionApplicable && year1DeductionBenefit > 0) {\n                 mortgageDeductionStatusEl.textContent = t.applied;\n                 mortgageDeductionStatusEl.className = 'text-base font-semibold positive';\n                 mortgageDeductionAmountEl.textContent = formatDisplayCurrency(year1DeductionBenefit);\n             } else if (isEligible && year1DeductionBenefit <= 0) {\n                 mortgageDeductionStatusEl.textContent = t.notApplied;\n                 mortgageDeductionStatusEl.className = 'text-base font-semibold negative';\n                 mortgageDeductionAmountEl.textContent = '0';\n             } else if (!isEligible &#038;&#038; document.getElementById('apply-mortgage-deduction').checked) {\n                 mortgageDeductionStatusEl.textContent = t.notApplicable;\n                 mortgageDeductionStatusEl.className = 'text-base font-semibold text-text-medium';\n                 mortgageDeductionAmountEl.textContent = '0';\n             } else {\n                 mortgageDeductionStatusEl.textContent = t.notApplied;\n                 mortgageDeductionStatusEl.className = 'text-base font-semibold negative';\n                 mortgageDeductionAmountEl.textContent = '0';\n             }\n\n\n             \/\/ Tax Summary Details (Year 1)\n             taxSummaryDetailsContainer.innerHTML = `\n                <p><strong class=\"text-text-medium\">${t.taxableIncome}:<\/strong> <span class=\"${year1.taxableIncome >= 0 ? '' : 'negative'}\">${formatDisplayCurrency(year1.taxableIncome)}<\/span><\/p>\n                <p><strong class=\"text-text-medium\">${t.incomeTax}:<\/strong> ${formatDisplayCurrency(year1.incomeTax + year1.mortgageDeductionBenefit)} ${year1.mortgageDeductionBenefit > 0 ? `<span class=\"text-xs negative\">(${t.applied}\u63a7\u9664 -${formatDisplayCurrency(year1.mortgageDeductionBenefit)})<\/span>` : ''}<\/p>\n                <p><strong class=\"text-text-medium\">${t.residentTax}:<\/strong> ${formatDisplayCurrency(year1.residentTax)}<\/p>\n                ${year1.specialIncomeTax > 0 ? `<p><strong class=\"text-text-medium\">${t.specialIncomeTax}:<\/strong> ${formatDisplayCurrency(year1.specialIncomeTax)}<\/p>` : ''}\n                <p><strong class=\"text-text-medium\">${t.totalTaxes}:<\/strong> ${formatDisplayCurrency(year1.totalTaxes)}<\/p>\n             `;\n\n\n            \/\/ --- Charts ---\n            const years = results.annual.map(d => d.year);\n            const assetValues = results.annual.map(d => d.assetValue);\n            const loanBalances = results.annual.map(d => d.loanBalance);\n            const netEquities = results.annual.map(d => d.netEquity);\n            const annualCashFlows = results.annual.map(d => d.postTaxCashFlow);\n            const year1Taxes = [\n                year1.incomeTax,\n                year1.residentTax,\n                results.summary.annualPropertyTax\n            ].filter(tax => tax !== null && tax > 0);\n\n             const year1TaxLabels = [\n                t.chartIncomeTax,\n                t.chartResidentTax,\n                t.chartPropertyTax\n            ].filter((label, index) => year1Taxes[index] !== null && year1Taxes[index] > 0);\n\n\n            \/\/ Destroy previous charts\n            if (assetLoanChart) assetLoanChart.destroy();\n            if (cashFlowChart) cashFlowChart.destroy();\n            if (taxBreakdownChart) taxBreakdownChart.destroy();\n\n            \/\/ Chart.js Global Defaults for Dark Theme\n            Chart.defaults.color = chartColors.text;\n            Chart.defaults.borderColor = chartColors.grid;\n\n            \/\/ Asset Value vs Loan Balance Chart\n            const assetLoanCtx = document.getElementById('assetLoanChart').getContext('2d');\n            assetLoanChart = new Chart(assetLoanCtx, {\n                type: 'line',\n                data: {\n                    labels: years.map(y => `${t.chartYears} ${y}`),\n                    datasets: [\n                        { label: t.chartAssetValue, data: assetValues, borderColor: chartColors.accent1, backgroundColor: chartColors.accent1 + '33', fill: false, tension: 0.1 },\n                        { label: t.chartLoanBalance, data: loanBalances, borderColor: chartColors.accent2, backgroundColor: chartColors.accent2 + '33', fill: false, tension: 0.1 },\n                        { label: t.chartNetEquity, data: netEquities, borderColor: chartColors.accent3, backgroundColor: chartColors.accent3 + '33', fill: true, tension: 0.1 }\n                    ]\n                },\n                options: {\n                    responsive: true, maintainAspectRatio: false,\n                    plugins: {\n                        title: { display: true, text: `${t.chartAssetValue}, ${t.chartLoanBalance} & ${t.chartNetEquity}`, color: chartColors.text, font: { family: \"'Playfair Display', serif\", size: 16 } },\n                        legend: { labels: { color: chartColors.text } },\n                        tooltip: {\n                            backgroundColor: chartColors.background, titleColor: chartColors.text, bodyColor: chartColors.text,\n                            callbacks: { label: (context) => `${context.dataset.label}: ${formatDisplayCurrency(context.raw)}` }\n                        }\n                    },\n                    scales: {\n                        y: { title: { display: true, text: t.chartAmountJPY, color: chartColors.text }, ticks: { color: chartColors.text, callback: (value) => formatDisplayCurrency(value).replace('\u00a5','').replace('\u5186','') }, grid: { color: chartColors.grid } },\n                        x: { ticks: { color: chartColors.text }, grid: { color: chartColors.grid } }\n                    }\n                }\n            });\n\n            \/\/ Annual Cash Flow Chart\n            const cashFlowCtx = document.getElementById('cashFlowChart').getContext('2d');\n            cashFlowChart = new Chart(cashFlowCtx, {\n                type: 'bar',\n                data: {\n                    labels: years.map(y => `${t.chartYears} ${y}`),\n                    datasets: [{\n                        label: t.chartAnnualCashFlow,\n                        data: annualCashFlows,\n                        backgroundColor: annualCashFlows.map(cf => cf >= 0 ? chartColors.positive + '99' : chartColors.negative + '99'),\n                        borderColor: annualCashFlows.map(cf => cf >= 0 ? chartColors.positive : chartColors.negative),\n                        borderWidth: 1\n                    }]\n                },\n                options: {\n                    responsive: true, maintainAspectRatio: false,\n                     plugins: {\n                        title: { display: true, text: t.chartAnnualCashFlow, color: chartColors.text, font: { family: \"'Playfair Display', serif\", size: 16 } },\n                        legend: { display: false }, \/\/ Hide legend for single dataset bar chart\n                        tooltip: {\n                            backgroundColor: chartColors.background, titleColor: chartColors.text, bodyColor: chartColors.text,\n                            callbacks: { label: (context) => `${context.dataset.label}: ${formatDisplayCurrency(context.raw)}` }\n                        }\n                    },\n                     scales: {\n                        y: { title: { display: true, text: t.chartAmountJPY, color: chartColors.text }, ticks: { color: chartColors.text, callback: (value) => formatDisplayCurrency(value).replace('\u00a5','').replace('\u5186','') }, grid: { color: chartColors.grid } },\n                        x: { ticks: { color: chartColors.text }, grid: { display: false } } \/\/ Hide x-axis grid lines for bar chart\n                    }\n                }\n            });\n\n             \/\/ Tax Breakdown Chart (Year 1)\n             const taxBreakdownCtx = document.getElementById('taxBreakdownChart').getContext('2d');\n             taxBreakdownChart = new Chart(taxBreakdownCtx, {\n                 type: 'pie',\n                 data: {\n                     labels: year1TaxLabels,\n                     datasets: [{\n                         label: t.chartTaxBreakdown,\n                         data: year1Taxes,\n                         backgroundColor: [\n                             chartColors.accent2 + 'B3', \/\/ Income Tax (Reddish)\n                             chartColors.accent1 + 'B3', \/\/ Resident Tax (Blueish)\n                             chartColors.accent4 + 'B3', \/\/ Property Tax (Yellowish)\n                             'rgba(153, 102, 255, 0.7)' \/\/ Purplish if Special Tax added\n                         ],\n                         borderColor: chartColors.grid, \/\/ Use grid color for border\n                         borderWidth: 1\n                     }]\n                 },\n                 options: {\n                     responsive: true, maintainAspectRatio: false,\n                     plugins: {\n                         title: { display: true, text: t.chartTaxBreakdown, color: chartColors.text, font: { family: \"'Playfair Display', serif\", size: 16 } },\n                         tooltip: {\n                             backgroundColor: chartColors.background, titleColor: chartColors.text, bodyColor: chartColors.text,\n                             callbacks: { label: (context) => `${context.label}: ${formatDisplayCurrency(context.parsed)}` }\n                         },\n                          legend: { position: 'bottom', labels: { color: chartColors.text } }\n                     }\n                 }\n             });\n        };\n\n        \/\/ --- Event Listeners ---\n        languageSelect.addEventListener('change', translateUI);\n\n        calculateButton.addEventListener('click', () => {\n            const results = calculateSimulation();\n            displayResults(results);\n        });\n\n        tabButtons.forEach(button => {\n            button.addEventListener('click', () => {\n                const targetTab = button.getAttribute('data-tab');\n                tabButtons.forEach(btn => btn.classList.remove('active'));\n                button.classList.add('active');\n                tabContents.forEach(content => {\n                    content.classList.toggle('active', content.id === `tab-content-${targetTab}`);\n                });\n            });\n        });\n\n        \/\/ --- Initial Setup ---\n        translateUI(); \/\/ Set initial language\n        \/\/ Hide results sections initially\n        overviewResults.classList.add('hidden');\n        monthlyResults.classList.add('hidden');\n        taxResults.classList.add('hidden');\n\n    <\/script>\n\n<\/body>\n<\/html>\n","protected":false},"excerpt":{"rendered":"<p>\u5f8c\u697d\u5730\u6240\u682a\u5f0f\u4f1a\u793e\u304c\u304a\u5c4a\u3051\u3059\u308b\u3001\u4e0d\u52d5\u7523\u6295\u8cc7\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u3002 \u65e5\u672c\u623f\u5730\u4ea7\u6295\u8d44\u6a21\u62df\u5668 \u65e5\u672c\u623f\u5730\u4ea7\u6295\u8d44\u6a21\u62df\u5668 \u8bed\u8a00: \u4e2d\u6587\u65e5\u672c\u8a9eEnglish \u8f93\u5165\u53c2\u6570 \u623f\u4ea7\u4fe1\u606f \u8d2d\u4e70\u4ef7\u683c (\u65e5\u5143) \u571f\u5730\u4ef7\u503c\u5360\u6bd4 (%) \u571f\u5730\u4ef7\u503c\u5360\u603b\u8d2d\u4e70\u4ef7\u683c [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-6","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/koraku-realty.net\/index.php?rest_route=\/wp\/v2\/pages\/6","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/koraku-realty.net\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/koraku-realty.net\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/koraku-realty.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/koraku-realty.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6"}],"version-history":[{"count":4,"href":"https:\/\/koraku-realty.net\/index.php?rest_route=\/wp\/v2\/pages\/6\/revisions"}],"predecessor-version":[{"id":25,"href":"https:\/\/koraku-realty.net\/index.php?rest_route=\/wp\/v2\/pages\/6\/revisions\/25"}],"wp:attachment":[{"href":"https:\/\/koraku-realty.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}