Пример #1
0
def compute(form):
    f = form
    validate.year(f.year)
    validate.quarter(f.quarter)
    f.line4 = not (f.line5a1 or f.line5b1 or f.line5c1)

    social_security_rate = Decimal('0.104' if int(f.year) < 2013 else '0.124')
    medicare_rate = Decimal('0.029')
    additional_medicare_rate = Decimal('0.009')

    f.line5a2 = cents(f.line5a1 * social_security_rate)
    f.line5b2 = cents(f.line5b1 * social_security_rate)
    f.line5c2 = cents(f.line5c1 * medicare_rate)
    if form.form_version >= u'2014':
        f.line5d2 = cents(f.line5d1 * additional_medicare_rate)
        f.line5e = f.line5a2 + f.line5b2 + f.line5c2 + f.line5d2
        f.line6 = f.line3 + f.line5e + f.line5f
    else:
        f.line5d = f.line5a2 + f.line5b2 + f.line5c2
        f.line6 = f.line3 + f.line5d + getattr(f, 'line5e', zero)
    f.line10 = f.line6 + f.line7 + f.line8 + f.line9
    if f.form_version == u'2017':
        f.line12 = f.line10 - f.line11
        f.line16_total = f.line16_month1 + f.line16_month2 + f.line16_month3
        if f.line12 > f.line13:
            f.line14 = f.line10 - f.line13
            f.line15 = zero
        else:
            f.line14 = zero
            f.line15 = f.line13 - f.line10
    elif f.form_version >= u'2014':
        f.line14_total = f.line14_month1 + f.line14_month2 + f.line14_month3
        if f.line11 is None:
            f.line11 = f.line14_total
        if f.line10 > f.line11:
            f.line12 = f.line10 - f.line11
            f.line13 = zero
        else:
            f.line12 = zero
            f.line13 = f.line11 - f.line10
    else:
        f.line16_total = f.line16_month1 + f.line16_month2 + f.line16_month3
        if f.line11 is None:
            f.line11 = f.line16_total
        f.line13 = f.line11 + f.line12a
        if f.line10 > f.line13:
            f.line14 = f.line10 - f.line13
            f.line15 = zero
        else:
            f.line14 = zero
            f.line15 = f.line13 - f.line10
Пример #2
0
def compute(form):
    f = form
    validate.year(int(f.form_version))

    f.line1c = f.line1a - f.line1b
    f.line3 = f.line1c - f.line2
    f.line6 = f.line3 + f.line4 + f.line5

    f.line20 = sum(f['line', n] for n in range(7, 20))
    f.line21 = f.line6 - f.line20

    f.line22c = f.line22a + f.line22b
    f.line23d = f.line23a + f.line23b + f.line23c
    owed = f.line22c + f.line24 - f.line23d
    if owed >= 0:
        f.line25 = owed
        f.line26 = zero
        f.line27 = zero
    else:
        f.line25 = zero
        f.line26 = -owed
        f.line27 = -owed - f.line27_credited

    f.K.line1 = f.line21
    f.K.line3c = f.K.line3a - f.K.line3b
    f.K.line18 = (
        f.K.line1 + f.K.line2 + f.K.line3c + f.K.line4
        + f.K.line5a + f.K.line6 + f.K.line7 + f.K.line8a
        + f.K.line9 + f.K.line10
        - f.K.line11 - f.K.line12a - f.K.line12b - f.K.line12c
        - f.K.line12d - f.K.line14l
        )

    f.M2.line2a = abs(f.line21) if f.line21 > 0 else zero
    f.M2.line4a = abs(f.line21) if f.line21 < 0 else zero
    f.M2.line6a = (f.M2.line1a + f.M2.line2a + f.M2.line3a
                   - f.M2.line4a - f.M2.line5a)
    f.M2.line8a = f.M2.line6a - f.M2.line7a

    f.M2.line6b = f.M2.line1b + f.M2.line3b - f.M2.line5b
    f.M2.line8b = f.M2.line6b - f.M2.line7b

    f.M2.line6c = f.M2.line1c
    f.M2.line8c = f.M2.line6c - f.M2.line7c
Пример #3
0
def compute(form):
    f = form
    validate.year(f.year)
    validate.quarter(f.quarter)
    f.line4 = not (f.line5a1 or f.line5b1 or f.line5c1)

    social_security_rate = Decimal('0.104' if int(f.year) < 2013 else '0.124')
    medicare_rate = Decimal('0.029')
    additional_medicare_rate = Decimal('0.009')

    f.line5a2 = cents(f.line5a1 * social_security_rate)
    f.line5b2 = cents(f.line5b1 * social_security_rate)
    f.line5c2 = cents(f.line5c1 * medicare_rate)
    if form.form_version >= u'2014':
        f.line5d2 = cents(f.line5d1 * additional_medicare_rate)
        f.line5e = f.line5a2 + f.line5b2 + f.line5c2 + f.line5d2
        f.line6 = f.line3 + f.line5e + f.line5f
    else:
        f.line5d = f.line5a2 + f.line5b2 + f.line5c2
        f.line6 = f.line3 + f.line5d + getattr(f, 'line5e', zero)
    f.line10 = f.line6 + f.line7 + f.line8 + f.line9
    if f.form_version >= u'2014':
        f.line14_total = f.line14_month1 + f.line14_month2 + f.line14_month3
        if f.line11 is None:
            f.line11 = f.line14_total
        if f.line10 > f.line11:
            f.line12 = f.line10 - f.line11
            f.line13 = zero
        else:
            f.line12 = zero
            f.line13 = f.line11 - f.line10
    else:
        f.line16_total = f.line16_month1 + f.line16_month2 + f.line16_month3
        if f.line11 is None:
            f.line11 = f.line16_total
        f.line13 = f.line11 + f.line12a
        if f.line10 > f.line13:
            f.line14 = f.line10 - f.line13
            f.line15 = zero
        else:
            f.line14 = zero
            f.line15 = f.line13 - f.line10
Пример #4
0
def compute(form):
    f = form
    validate.year(int(f.form_version))

    f.line1c = f.line1a - f.line1b
    f.line3 = f.line1c - f.line2
    f.line6 = f.line3 + f.line4 + f.line5

    f.line20 = sum(f['line', n] for n in range(7, 20))
    f.line21 = f.line6 - f.line20

    f.line22c = f.line22a + f.line22b
    f.line23d = f.line23a + f.line23b + f.line23c
    owed = f.line22c + f.line24 - f.line23d
    if owed >= 0:
        f.line25 = owed
        f.line26 = zero
        f.line27 = zero
    else:
        f.line25 = zero
        f.line26 = -owed
        f.line27 = -owed - f.line27_credited

    f.K.line1 = f.line21
    f.K.line3c = f.K.line3a - f.K.line3b
    f.K.line18 = (f.K.line1 + f.K.line2 + f.K.line3c + f.K.line4 + f.K.line5a +
                  f.K.line6 + f.K.line7 + f.K.line8a + f.K.line9 + f.K.line10 -
                  f.K.line11 - f.K.line12a - f.K.line12b - f.K.line12c -
                  f.K.line12d - f.K.line14l)

    f.M2.line2a = abs(f.line21) if f.line21 > 0 else zero
    f.M2.line4a = abs(f.line21) if f.line21 < 0 else zero
    f.M2.line6a = (f.M2.line1a + f.M2.line2a + f.M2.line3a - f.M2.line4a -
                   f.M2.line5a)
    f.M2.line8a = f.M2.line6a - f.M2.line7a

    f.M2.line6b = f.M2.line1b + f.M2.line3b - f.M2.line5b
    f.M2.line8b = f.M2.line6b - f.M2.line7b

    f.M2.line6c = f.M2.line1c
    f.M2.line8c = f.M2.line6c - f.M2.line7c