Interactive Hong Kong Salaries Tax Calculator Based on Piecewise Functions
2016-02-26 12:28
This GeoGebra applet provides an interactive model for calculating Hong Kong Salaries Tax. By inputting the chargeable income, it utilizes conditional statements to construct piecewise linear functions, automatically calculating the tax for each bracket and summing up the total tax liability. The interface features multiple input boxes and text tables to visually display the calculation process an
In collections
S3 Percentages
Loading the GeoGebra board and drawing, please wait…
<?xml version="1.0" encoding="utf-8"?>
<geogebra format="5.0" version="5.0.802.0" app="classic" platform="w" id="e495ff5f-b598-4b5e-910d-9240c2cadcfc" xsi:noNamespaceSchemaLocation="http://www.geogebra.org/apps/xsd/ggb.xsd" xmlns="" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<gui>
<window width="1050" height="700" />
<perspectives>
<perspective id="tmp">
<panes>
<pane location="" divider="0.9419047619047619" orientation="1" />
</panes>
<views>
<view id="512" toolbar="0 | 1 501 5 19 , 67 | 2 15 45 18 , 7 37 | 514 3 9 , 13 44 , 47 | 16 | 551 550 11 , 20 22 21 23 , 55 56 57 , 12 | 69 | 510 511 , 512 513 | 533 531 , 534 532 , 522 523 , 537 536 , 535 | 521 520 | 36 , 38 49 560 | 571 30 29 570 31 33 | 17 | 540 40 41 42 , 27 28 35 , 6 , 502" visible="false" inframe="false" stylebar="false" location="1,1,1" size="500" window="100,100,600,400" />
<view id="8" toolbar="1001 | 1002 | 1003 || 1005 | 1004 || 1006 | 1007 | 1010 || 1008 1009 || 66 68 || 6" visible="false" inframe="false" stylebar="false" location="1,3" size="300" window="100,100,600,400" />
<view id="4" toolbar="0 || 2020 , 2021 , 2022 , 66 || 2001 , 2003 , 2002 , 2004 , 2005 || 2040 , 2041 , 2042 , 2044 , 2043" visible="false" inframe="false" stylebar="true" location="1" size="282" window="100,100,600,400" />
<view id="2" visible="false" inframe="false" stylebar="true" location="1" size="224" tab="ALGEBRA" window="100,100,250,400" />
<view id="16" visible="false" inframe="false" stylebar="false" location="1" size="150" window="50,50,500,500" />
<view id="32" visible="false" inframe="false" stylebar="true" location="1" size="150" window="50,50,500,500" />
<view id="64" toolbar="0" visible="false" inframe="false" stylebar="true" location="1" size="150" window="50,50,500,500" />
<view id="128" visible="false" inframe="false" stylebar="false" location="1" size="480" window="50,50,500,500" />
<view id="4097" visible="false" inframe="false" stylebar="true" location="1" size="375" window="162,134,955,550" />
<view id="70" toolbar="0 || 2020 || 2021 || 2022" visible="false" inframe="false" stylebar="true" location="1" size="150" window="50,50,500,500" />
<view id="1" visible="true" inframe="false" stylebar="true" location="" size="698" window="100,100,600,400" />
</views>
<toolbar show="false" items="0 39 | 1 501 67 , 5 19 , 72 | 2 15 45 , 18 65 , 7 37 | 4 3 8 9 , 13 44 , 58 , 47 | 16 51 64 , 70 | 10 34 53 11 , 24 20 22 , 21 23 | 55 56 57 , 12 | 36 46 , 38 49 50 , 71 | 30 29 54 32 31 33 | 17 26 62 73 , 14 68 | 25 52 60 61 | 40 41 42 , 27 28 35 , 6" position="7" help="false" />
<input show="false" cmd="true" top="algebra" />
<dockBar show="false" east="false" />
</perspective>
</perspectives>
<labelingStyle val="2"/>
<font size="20"/>
</gui>
<euclidianView>
<viewNumber viewNo="1"/>
<size width="1048" height="698"/>
<coordSystem xZero="42.63636363636364" yZero="591.0000000000001" scale="43.63636363636365" yscale="38.39940633245383"/>
<evSettings axes="false" grid="false" gridIsBold="false" pointCapturing="2" rightAngleStyle="1" checkboxSize="26" gridType="0"/>
<bgColor r="255" g="255" b="255"/>
<axesColor r="0" g="0" b="0"/>
<gridColor r="192" g="192" b="192"/>
<lineStyle axes="1" grid="0"/>
<axis id="0" show="false" label="" unitLabel="" tickStyle="1" showNumbers="true"/>
<axis id="1" show="false" label="" unitLabel="" tickStyle="1" showNumbers="true"/>
<grid distX="0.5" distY="0.5" distTheta="0.5235987755982988"/>
</euclidianView>
<kernel>
<uses3D val="true"/>
<continuous val="false"/>
<usePathAndRegionParameters val="true"/>
<decimals val="2"/>
<angleUnit val="degree"/>
<algebraStyle val="0" spreadsheet="0"/>
<coordStyle val="0"/>
</kernel>
<tableview min="0" max="0" step="0"/>
<scripting blocked="false" disabled="false"/>
<construction title="" author="" date="">
<element type="numeric" label="lang">
<value val="2"/>
<symbolic val="true" />
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="3"/>
<labelMode val="2"/>
<animation step="1" speed="1" type="0" playing="false"/>
</element>
<expression label="L1" exp="50000"/>
<element type="numeric" label="L1">
<value val="50000"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="0"/>
<labelMode val="2"/>
<animation step="1" speed="1" type="0" playing="false"/>
</element>
<expression label="r4'" exp="17"/>
<element type="numeric" label="r4'">
<value val="17"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="0"/>
<labelMode val="2"/>
<animation step="1" speed="1" type="0" playing="false"/>
</element>
<expression label="r4" exp="r4' / 100" />
<element type="numeric" label="r4">
<value val="0.17"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<expression label="L2" exp="50000"/>
<element type="numeric" label="L2">
<value val="50000"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="0"/>
<labelMode val="2"/>
<animation step="1" speed="1" type="0" playing="false"/>
</element>
<element type="numeric" label="in_0">
<value val="120000"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="0"/>
<labelMode val="2"/>
<animation step="1" speed="1" type="0" playing="false"/>
</element>
<element type="numeric" label="deduct">
<value val="0"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="0"/>
<labelMode val="2"/>
<animation step="1" speed="1" type="0" playing="false"/>
</element>
<element type="numeric" label="allw">
<value val="130000"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="0"/>
<labelMode val="2"/>
<animation step="1" speed="1" type="0" playing="false"/>
</element>
<command name="If">
<input a0="in_0 > deduct + allw" a1="in_0 - deduct - allw" a2="0"/>
<output a0="in"/>
</command>
<element type="numeric" label="in">
<value val="0"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<expression label="L3" exp="50000"/>
<element type="numeric" label="L3">
<value val="50000"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="0"/>
<labelMode val="2"/>
<animation step="1" speed="1" type="0" playing="false"/>
</element>
<command name="If">
<input a0="in ≥ L1 + L2 + L3" a1="in - L1 - L2 - L3" a2="0"/>
<output a0="m4"/>
</command>
<element type="numeric" label="m4">
<value val="0"/>
<objColor r="0" g="0" b="255" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<expression label="r3'" exp="12"/>
<element type="numeric" label="r3'">
<value val="12"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="0"/>
<labelMode val="2"/>
<animation step="1" speed="1" type="0" playing="false"/>
</element>
<expression label="r3" exp="r3' / 100" />
<element type="numeric" label="r3">
<value val="0.12"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<command name="If">
<input a0="in ≥ L1 + L2 + L3" a1="L3" a2="If[in ≥ L1 + L2, in - L1 - L2, 0]"/>
<output a0="m3"/>
</command>
<element type="numeric" label="m3">
<value val="0"/>
<objColor r="0" g="0" b="255" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<element type="numeric" label="r2'">
<value val="7"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="0"/>
<labelMode val="2"/>
<animation step="1" speed="1" type="0" playing="false"/>
</element>
<expression label="r2" exp="r2' / 100" />
<element type="numeric" label="r2">
<value val="0.07"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<command name="If">
<input a0="in ≥ L1 + L2" a1="L2" a2="If[in ≥ L1, in - L1, 0]"/>
<output a0="m2"/>
</command>
<element type="numeric" label="m2">
<value val="0"/>
<objColor r="0" g="0" b="255" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<command name="If">
<input a0="in ≥ L1" a1="L1" a2="in"/>
<output a0="m1"/>
</command>
<element type="numeric" label="m1">
<value val="0"/>
<objColor r="0" g="0" b="255" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<expression label="r1'" exp="2"/>
<element type="numeric" label="r1'">
<value val="2"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="0"/>
<labelMode val="2"/>
<animation step="1" speed="1" type="0" playing="false"/>
</element>
<expression label="r1" exp="r1' / 100" />
<element type="numeric" label="r1">
<value val="0.02"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<command name="Textfield">
<input a0="in_0"/>
<output a0="InputBox1"/>
</command>
<element type="textfield" label="InputBox1">
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelOffset x="21" y="15"/>
<labelMode val="3"/>
<auxiliary val="true"/>
<caption val="Income $"/>
<font serif="false" sizeM="1.6" size="12" style="0"/>
<length val="7"/>
</element>
<command name="Textfield">
<input a0="allw"/>
<output a0="InputBox2"/>
</command>
<element type="textfield" label="InputBox2">
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelOffset x="414" y="15"/>
<labelMode val="3"/>
<auxiliary val="true"/>
<caption val="Less: Allowances $"/>
<font serif="false" sizeM="1.4" size="8" style="0"/>
<length val="7"/>
</element>
<command name="Textfield">
<input a0="deduct"/>
<output a0="InputBox3"/>
</command>
<element type="textfield" label="InputBox3">
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelOffset x="414" y="111"/>
<labelMode val="3"/>
<auxiliary val="true"/>
<caption val="Less: Deductions $"/>
<font serif="false" sizeM="1.4" size="8" style="0"/>
<length val="7"/>
</element>
<command name="Textfield">
<input a0="L1"/>
<output a0="InputBoxL1"/>
</command>
<element type="textfield" label="InputBoxL1">
<show object="true" label="true"/>
<condition showObject="edit"/>
<objColor r="0" g="100" b="0" alpha="1"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelOffset x="21" y="265"/>
<labelMode val="3"/>
<auxiliary val="true"/>
<caption val="On the First: $"/>
<font serif="false" sizeM="1.4" size="8" style="0"/>
<length val="5"/>
</element>
<command name="Textfield">
<input a0="L2"/>
<output a0="InputBoxL2"/>
</command>
<element type="textfield" label="InputBoxL2">
<show object="true" label="true"/>
<condition showObject="edit"/>
<objColor r="0" g="100" b="0" alpha="1"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelOffset x="21" y="322"/>
<labelMode val="3"/>
<auxiliary val="true"/>
<caption val="On the Next: $"/>
<font serif="false" sizeM="1.4" size="8" style="0"/>
<length val="5"/>
</element>
<command name="Textfield">
<input a0="L3"/>
<output a0="InputBoxL3"/>
</command>
<element type="textfield" label="InputBoxL3">
<show object="true" label="true"/>
<condition showObject="edit"/>
<objColor r="0" g="100" b="0" alpha="1"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelOffset x="21" y="380"/>
<labelMode val="3"/>
<auxiliary val="true"/>
<caption val="On the Next: $"/>
<font serif="false" sizeM="1.4" size="8" style="0"/>
<length val="5"/>
</element>
<command name="Textfield">
<input a0="r1'"/>
<output a0="InputBoxR1"/>
</command>
<element type="textfield" label="InputBoxR1">
<show object="true" label="true"/>
<condition showObject="edit"/>
<objColor r="255" g="0" b="0" alpha="1"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelOffset x="326" y="265"/>
<labelMode val="0"/>
<auxiliary val="true"/>
<caption val="(%)"/>
<font serif="false" sizeM="1.4" size="8" style="0"/>
<length val="3"/>
</element>
<command name="Textfield">
<input a0="r2'"/>
<output a0="InputBoxR2"/>
</command>
<element type="textfield" label="InputBoxR2">
<show object="true" label="true"/>
<condition showObject="edit"/>
<objColor r="255" g="0" b="0" alpha="1"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelOffset x="326" y="322"/>
<labelMode val="0"/>
<auxiliary val="true"/>
<caption val="(%)"/>
<font serif="false" sizeM="1.4" size="8" style="0"/>
<length val="3"/>
</element>
<command name="Textfield">
<input a0="r3'"/>
<output a0="InputBoxR3"/>
</command>
<element type="textfield" label="InputBoxR3">
<show object="true" label="true"/>
<condition showObject="edit"/>
<objColor r="255" g="0" b="0" alpha="1"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelOffset x="326" y="380"/>
<labelMode val="0"/>
<auxiliary val="true"/>
<caption val="(%)"/>
<font serif="false" sizeM="1.4" size="8" style="0"/>
<length val="3"/>
</element>
<command name="Textfield">
<input a0="r4'"/>
<output a0="InputBoxR4"/>
</command>
<element type="textfield" label="InputBoxR4">
<show object="true" label="true"/>
<condition showObject="edit"/>
<objColor r="255" g="0" b="0" alpha="1"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelOffset x="326" y="437"/>
<labelMode val="0"/>
<auxiliary val="true"/>
<caption val="(%)"/>
<font serif="false" sizeM="1.4" size="8" style="0"/>
<length val="3"/>
</element>
<expression label="tax1" exp="(m1 * r1)" />
<element type="numeric" label="tax1">
<value val="0"/>
<objColor r="255" g="0" b="0" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<command name="If">
<input a0="in ≥ L1 + L2 + L3" a1="in - L1 - L2 - L3" a2="0"/>
<output a0="L4"/>
</command>
<element type="numeric" label="L4">
<value val="0"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<expression label="tax2" exp="(m2 * r2)" />
<element type="numeric" label="tax2">
<value val="0"/>
<objColor r="255" g="0" b="0" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<expression label="tax3" exp="(m3 * r3)" />
<element type="numeric" label="tax3">
<value val="0"/>
<objColor r="255" g="0" b="0" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<expression label="tax4" exp="(m4 * r4)" />
<element type="numeric" label="tax4">
<value val="0"/>
<objColor r="255" g="0" b="0" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<expression label="tax" exp="tax1 + tax2 + tax3 + tax4" />
<element type="numeric" label="tax">
<value val="0"/>
<objColor r="255" g="0" b="0" alpha="0.10000000149011612"/>
<selectionAllowed val="false"/>
</element>
<element type="boolean" label="showTax">
<value val="false"/>
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelOffset x="234" y="509"/>
<labelMode val="3"/>
<checkbox fixed="true"/>
<caption val="Tax payable"/>
</element>
<expression label="list1" exp="{"\darkgreen{" + (If[lang ≟ 1, "最初的", "\text{On the First}"]) + "\;\dollar\;" + (Text[L1]) + "}", "\darkgreen{" + (If[lang ≟ 1, "其次的", "\text{On the Next}"]) + "\;\dollar\;" + (Text[L2]) + "}", "\darkgreen{" + (If[lang ≟ 1, "其次的", "\text{On the Next}"]) + "\;\dollar\;" + (Text[L3]) + "}", "\darkgreen{" + (If[lang ≟ 1, "餘額", "\text{Remainder}"]) + "}"}" />
<element type="list" label="list1">
<show object="false" label="false" ev="4"/>
<objColor r="0" g="100" b="0" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelMode val="0"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<pointSize val="5"/>
<pointStyle val="0"/>
<angleStyle val="0"/>
</element>
<expression label="list2" exp="{"\red{" + (Text[r1']) + "%}", "\red{" + (Text[r2']) + "%}", "\red{" + (Text[r3']) + "%}", "\red{" + (Text[r4']) + "%}"}" />
<element type="list" label="list2">
<show object="false" label="false" ev="4"/>
<objColor r="0" g="100" b="0" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelMode val="0"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<pointSize val="5"/>
<pointStyle val="0"/>
<angleStyle val="0"/>
</element>
<command name="TableText">
<input a0="{list1, list2}" a1=""r_|v""/>
<output a0="textTable"/>
</command>
<element type="text" label="textTable">
<show object="true" label="true" ev="8"/>
<condition showObject="¬edit"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.5" size="10" style="0"/>
<startPoint x="-0.4208333333333334" y="8.431888651257868" z="1"/>
</element>
<element type="boolean" label="edit">
<value val="false"/>
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelOffset x="16" y="509"/>
<labelMode val="3"/>
<checkbox fixed="true"/>
<caption val="Edit tax rates"/>
</element>
<expression label="textRemark1" exp=""例如:基本免稅額、已婚人士免稅額、子女免稅額、供養兄弟姊妹 / 父母/祖父母/外祖父母免稅額、
單親免稅額、傷殘受養人免稅額""/>
<element type="text" label="textRemark1">
<show object="true" label="true" ev="40"/>
<condition showObject="lang ≟ 1"/>
<objColor r="96" g="96" b="96" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<font serif="false" sizeM="0.5" size="-10" style="0"/>
<startPoint x="8.564583333333351" y="13.469971741949882" z="1"/>
</element>
<expression label="textRemark2" exp=""例如:個人進修開支、長者住宿照顧開支、居所貸款利息、向認可退休計劃支付的強制性供款、
認可慈善捐款""/>
<element type="text" label="textRemark2">
<show object="true" label="true" ev="40"/>
<condition showObject="lang ≟ 1"/>
<objColor r="96" g="96" b="96" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<font serif="false" sizeM="0.5" size="-10" style="0"/>
<startPoint x="8.560416666666688" y="10.949130356360632" z="1"/>
</element>
<expression label="text1" exp=""\blue{" + (LaTeX[m1]) + "}×\red{" + (LaTeX[r1']) + "%} = \$\;" + (LaTeX[tax1]) + """ />
<element type="text" label="text1">
<show object="true" label="true" ev="8"/>
<condition showObject="m1 > 0"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="8" style="0"/>
<startPoint x="10.066666666666674" y="8.431270238003206" z="1"/>
</element>
<expression label="text2" exp=""\blue{" + (LaTeX[m2]) + "}×\red{" + (LaTeX[r2']) + "%} = \$\;" + (LaTeX[tax2]) + """ />
<element type="text" label="text2">
<show object="true" label="true" ev="8"/>
<condition showObject="m2 > 0"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="8" style="0"/>
<startPoint x="10.068750000000007" y="6.921255378906947" z="1"/>
</element>
<expression label="text3" exp=""\blue{" + (LaTeX[m3]) + "}×\red{" + (LaTeX[r3']) + "%} = \$\;" + (LaTeX[tax3]) + """ />
<element type="text" label="text3">
<show object="true" label="true" ev="8"/>
<condition showObject="m3 > 0"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="8" style="0"/>
<startPoint x="10.066666666666675" y="5.426378760940323" z="1"/>
</element>
<expression label="text4" exp=""\blue{" + (LaTeX[m4]) + "}×\red{" + (LaTeX[r4']) + "%} = \$\;" + (LaTeX[tax4]) + """ />
<element type="text" label="text4">
<show object="true" label="true" ev="8"/>
<condition showObject="m4 > 0"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="8" style="0"/>
<startPoint x="10.06875000000001" y="3.93177269877261" z="1"/>
</element>
<expression label="textTax" exp=""" + (LaTeX[If[m2 > 0, "=" + (Text[tax1]) + "+" + (Text[tax2]), ""]]) + "" + (LaTeX[If[m3 > 0, "+" + (Text[tax3]), ""]]) + "" + (LaTeX[If[m4 > 0, "+" + (Text[tax4]), ""]]) + "\\
=\underline\underline{\$\; " + (LaTeX[tax]) + "}"" />
<element type="text" label="textTax">
<show object="true" label="true" ev="8"/>
<condition showObject="showTax"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.6" size="12" style="0"/>
<startPoint x="5.077083333333336" y="0.9162479493588185" z="1"/>
</element>
<element type="button" label="button1">
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<bgColor r="191" g="255" b="0" alpha="255"/>
<layer val="0"/>
<labelOffset x="261" y="73"/>
<labelMode val="3"/>
<animation step="1" speed="1" type="0" playing="false"/>
<auxiliary val="true"/>
<ggbscript val="SetValue[in_0,in_0+10000]"/>
<caption val="+10000"/>
<font serif="false" sizeM="2" size="20" style="0"/>
</element>
<element type="button" label="button2">
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<bgColor r="191" g="255" b="0" alpha="255"/>
<layer val="0"/>
<labelOffset x="130" y="73"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="0" playing="false"/>
<auxiliary val="true"/>
<ggbscript val="SetValue[in_0,If[in_0<10000,0,in_0-10000]]"/>
<caption val="-10000"/>
<font serif="false" sizeM="2" size="20" style="0"/>
</element>
<element type="button" label="button0">
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="3"/>
<labelOffset x="872" y="15"/>
<labelMode val="3"/>
<animation step="1" speed="1" type="0" playing="false"/>
<auxiliary val="true"/>
<ggbscript val="SetValue[lang,If[lang==1,2,1]]
RunClickScript[buttonLang]
"/>
<caption val="中文"/>
<font serif="false" sizeM="1.4" size="8" style="0"/>
</element>
<element type="button" label="buttonLang">
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="3"/>
<labelOffset x="937" y="15"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="0" playing="false"/>
<auxiliary val="true"/>
<ggbscript val="SetCaption[button0,If[lang==1,"ENG","中文"]]
SetCaption[InputBox1,If[lang==1,"年入息 $","Income $"]]
SetCaption[InputBox2,If[lang==1,"減:免稅額 $","Less: Allowances $"]]
SetCaption[InputBox3,If[lang==1,"減:扣除 $","Less: Deductions $"]]
SetCaption[edit,If[lang==1,"修改稅率","Edit tax rates"]]
SetCaption[showTax,If[lang==1,"應繳稅款","Tax payable"]]
SetCaption[InputBoxL1,If[lang==1,"最初的:","On the First: $"]]
SetCaption[InputBoxL2,If[lang==1,"其次的:","On the Next: $"]]
SetCaption[InputBoxL3,If[lang==1,"其次的:","On the Next: $"]]"/>
<font serif="false" sizeM="2" size="20" style="0"/>
</element>
<expression label="textIn" exp=""\text{" + (LaTeX[If[lang ≟ 1, "應課稅入息實額", "Net Chargeable Income"]]) + "} = \$\;" + (LaTeX[in]) + """ />
<element type="text" label="textIn">
<show object="true" label="true" ev="8"/>
<objColor r="0" g="0" b="255" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.6" size="12" style="0"/>
<startPoint x="-0.42916666666666714" y="9.93130888883162" z="1"/>
</element>
<element type="button" label="button3">
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<bgColor r="255" g="255" b="0" alpha="255"/>
<layer val="3"/>
<labelOffset x="130" y="130"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="0" playing="false"/>
<auxiliary val="true"/>
<ggbscript val="SetValue[in_0,If[in_0<1000,0,in_0-1000]]"/>
<caption val="-1000"/>
<font serif="false" sizeM="2" size="20" style="0"/>
</element>
<element type="button" label="button4">
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<bgColor r="255" g="255" b="0" alpha="255"/>
<layer val="3"/>
<labelOffset x="261" y="130"/>
<labelMode val="3"/>
<animation step="1" speed="1" type="0" playing="false"/>
<auxiliary val="true"/>
<ggbscript val="SetValue[in_0,in_0+1000]"/>
<caption val="+1000"/>
<font serif="false" sizeM="2" size="20" style="0"/>
</element>
<expression label="textResidue" exp=""" + (LaTeX[If[lang ≟ 1, " 餘額:", "Remainder:"]]) + """ />
<element type="text" label="textResidue">
<show object="true" label="true" ev="8"/>
<condition showObject="edit"/>
<objColor r="0" g="100" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<font serif="false" sizeM="1.4" size="8" style="0"/>
<startPoint x="2.560416666666672" y="3.1819466275004826" z="1"/>
</element>
<expression label="text5" exp=""e.g. Basic Allowance, Married Person’s Allowance, Child Allowance,
Dependent Brother/ Sister/ Parent/ Grandparent Allowance,
Single Parent Allowance, Disabled Dependant Allowance""/>
<element type="text" label="text5">
<show object="true" label="false" ev="40"/>
<condition showObject="lang ≠ 1"/>
<objColor r="96" g="96" b="96" alpha="0"/>
<layer val="3"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<font serif="false" sizeM="0.5" size="-10" style="0"/>
<startPoint x="8.558333333333339" y="13.46095063859757" z="1"/>
</element>
<expression label="text6" exp=""e.g. Expenses of Self-Education, Elderly Residential Care Expenses, Home Loan Interest,
Mandatory Contributions to Recognized Retirement Schemes, Approved Charitable Donations""/>
<element type="text" label="text6">
<show object="true" label="false" ev="40"/>
<condition showObject="lang ≠ 1"/>
<objColor r="96" g="96" b="96" alpha="0"/>
<layer val="3"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<font serif="false" sizeM="0.5" size="-10" style="0"/>
<startPoint x="8.572916666666668" y="10.950858477844482" z="1"/>
</element>
</construction>
</geogebra>