import sys
data = sys.stdin.read().strip().split()
if not data:
sys.exit(0)
N = int(data[0])
# Kiểm tra N
if N < 1 or N > 10:
print("INVALID INPUT")
sys.exit(0)
idx = 1
def calc_tax(tntt: int) -> int:
"""Tính thuế TNCN từ TNTT (đơn vị VND)."""
if tntt <= 0:
return 0
# Bảng bậc thuế: (ngưỡng trên, thuế suất %, giảm trừ nhanh)
brackets = [
(5_000_000, 5, 0),
(10_000_000, 10, 250_000),
(18_000_000, 15, 750_000),
(32_000_000, 20, 1_650_000),
(52_000_000, 25, 3_250_000),
(80_000_000, 30, 5_850_000),
(float('inf'), 35, 9_850_000),
]
for upper, rate, ded in brackets:
if tntt <= upper:
return tntt * rate // 100 - ded
# Không tới được đây, nhưng để chắc chắn:
return 0
for _ in range(N):
if idx + 1 >= len(data):
print("INVALID INPUT")
break
m = int(data[idx])
n = int(data[idx + 1])
idx += 2
# Kiểm tra từng bộ test
if m < 1000 or n < 1000:
print("INVALID INPUT")
continue
# Tính bảo hiểm
bhxh = n * 8 // 100 # 8%
bhyt = n * 15 // 1000 # 1.5%
bhtn = n * 1 // 100 # 1%
bh = bhxh + bhyt + bhtn
# Thu nhập chịu thuế
giam_tru_ban_than = 11_000_000
tntt = m - giam_tru_ban_than - bh
# Thuế TNCN
thue = calc_tax(tntt)
print(f"{bh} {thue}")
aW1wb3J0IHN5cwoKZGF0YSA9IHN5cy5zdGRpbi5yZWFkKCkuc3RyaXAoKS5zcGxpdCgpCmlmIG5vdCBkYXRhOgogICAgc3lzLmV4aXQoMCkKCk4gPSBpbnQoZGF0YVswXSkKCiMgS2nhu4NtIHRyYSBOCmlmIE4gPCAxIG9yIE4gPiAxMDoKICAgIHByaW50KCJJTlZBTElEIElOUFVUIikKICAgIHN5cy5leGl0KDApCgppZHggPSAxCgpkZWYgY2FsY190YXgodG50dDogaW50KSAtPiBpbnQ6CiAgICAiIiJUw61uaCB0aHXhur8gVE5DTiB04burIFROVFQgKMSRxqFuIHbhu4sgVk5EKS4iIiIKICAgIGlmIHRudHQgPD0gMDoKICAgICAgICByZXR1cm4gMAoKICAgICMgQuG6o25nIGLhuq1jIHRodeG6vzogKG5nxrDhu6FuZyB0csOqbiwgdGh14bq/IHN14bqldCAlLCBnaeG6o20gdHLhu6sgbmhhbmgpCiAgICBicmFja2V0cyA9IFsKICAgICAgICAoNV8wMDBfMDAwLCA1LCAwKSwKICAgICAgICAoMTBfMDAwXzAwMCwgMTAsIDI1MF8wMDApLAogICAgICAgICgxOF8wMDBfMDAwLCAxNSwgNzUwXzAwMCksCiAgICAgICAgKDMyXzAwMF8wMDAsIDIwLCAxXzY1MF8wMDApLAogICAgICAgICg1Ml8wMDBfMDAwLCAyNSwgM18yNTBfMDAwKSwKICAgICAgICAoODBfMDAwXzAwMCwgMzAsIDVfODUwXzAwMCksCiAgICAgICAgKGZsb2F0KCdpbmYnKSwgMzUsIDlfODUwXzAwMCksCiAgICBdCgogICAgZm9yIHVwcGVyLCByYXRlLCBkZWQgaW4gYnJhY2tldHM6CiAgICAgICAgaWYgdG50dCA8PSB1cHBlcjoKICAgICAgICAgICAgcmV0dXJuIHRudHQgKiByYXRlIC8vIDEwMCAtIGRlZAoKICAgICMgS2jDtG5nIHThu5tpIMSRxrDhu6NjIMSRw6J5LCBuaMawbmcgxJHhu4MgY2jhuq9jIGNo4bqvbjoKICAgIHJldHVybiAwCgpmb3IgXyBpbiByYW5nZShOKToKICAgIGlmIGlkeCArIDEgPj0gbGVuKGRhdGEpOgogICAgICAgIHByaW50KCJJTlZBTElEIElOUFVUIikKICAgICAgICBicmVhawoKICAgIG0gPSBpbnQoZGF0YVtpZHhdKQogICAgbiA9IGludChkYXRhW2lkeCArIDFdKQogICAgaWR4ICs9IDIKCiAgICAjIEtp4buDbSB0cmEgdOG7q25nIGLhu5kgdGVzdAogICAgaWYgbSA8IDEwMDAgb3IgbiA8IDEwMDA6CiAgICAgICAgcHJpbnQoIklOVkFMSUQgSU5QVVQiKQogICAgICAgIGNvbnRpbnVlCgogICAgIyBUw61uaCBi4bqjbyBoaeG7g20KICAgIGJoeGggPSBuICogOCAvLyAxMDAgICAgICAgIyA4JQogICAgYmh5dCA9IG4gKiAxNSAvLyAxMDAwICAgICAjIDEuNSUKICAgIGJodG4gPSBuICogMSAvLyAxMDAgICAgICAgIyAxJQogICAgYmggPSBiaHhoICsgYmh5dCArIGJodG4KCiAgICAjIFRodSBuaOG6rXAgY2jhu4t1IHRodeG6vwogICAgZ2lhbV90cnVfYmFuX3RoYW4gPSAxMV8wMDBfMDAwCiAgICB0bnR0ID0gbSAtIGdpYW1fdHJ1X2Jhbl90aGFuIC0gYmgKCiAgICAjIFRodeG6vyBUTkNOCiAgICB0aHVlID0gY2FsY190YXgodG50dCkKCiAgICBwcmludChmIntiaH0ge3RodWV9IikK