def m(h,f,o,t):C=100;b=[24/(50/h)*1000,min(2000,[-f/10*~9,f][f%2]<<h+2)][h<5];x=(o|2-t)*-2*b/C*C;y=~o*t*b/C*C;return-x-y-y,x,y,y
cases = [
[(1, 22, 0, 1), (1100, -500, -300, -300)],
[(1, 22, 0, 0), (1000, -1000, 0, 0)],
[(3, 25, 1, 0), (4800, -4800, 0, 0)],
[(3, 106, 1, 0), (12000, -12000, 0, 0)],
[(4, 20, 0, 1), (5200, -2600, -1300, -1300)],
[(4, 24, 1, 1), (11700, -3900, -3900, -3900)],
[(4, 25, 1, 0), (9600, -9600, 0, 0)],
[(4, 40, 0, 1), (8000, -4000, -2000, -2000)],
[(5, 88, 1, 1), (12000, -4000, -4000, -4000)],
[(7, 25, 1, 1), (18000, -6000, -6000, -6000)],
[(9, 50, 0, 0), (16000, -16000, 0, 0)],
[(12, 64, 0, 0), (24000, -24000, 0, 0)],
[(13, 130, 1, 0), (48000, -48000, 0, 0)],
]
for input_, output in cases:
assert sorted(m(*input_)) == sorted(output)
ZGVmIG0oaCxmLG8sdCk6Qz0xMDA7Yj1bMjQvKDUwL2gpKjEwMDAsbWluKDIwMDAsWy1mLzEwKn45LGZdW2YlMl08PGgrMildW2g8NV07eD0ob3wyLXQpKi0yKmIvQypDO3k9fm8qdCpiL0MqQztyZXR1cm4teC15LXkseCx5LHkKCmNhc2VzID0gWwogICAgWygxLCAyMiwgMCwgMSksICgxMTAwLCAtNTAwLCAtMzAwLCAtMzAwKV0sCiAgICBbKDEsIDIyLCAwLCAwKSwgKDEwMDAsIC0xMDAwLCAwLCAwKV0sCiAgICBbKDMsIDI1LCAxLCAwKSwgKDQ4MDAsIC00ODAwLCAwLCAwKV0sCiAgICBbKDMsIDEwNiwgMSwgMCksICgxMjAwMCwgLTEyMDAwLCAwLCAwKV0sCiAgICBbKDQsIDIwLCAwLCAxKSwgKDUyMDAsIC0yNjAwLCAtMTMwMCwgLTEzMDApXSwKICAgIFsoNCwgMjQsIDEsIDEpLCAoMTE3MDAsIC0zOTAwLCAtMzkwMCwgLTM5MDApXSwKICAgIFsoNCwgMjUsIDEsIDApLCAoOTYwMCwgLTk2MDAsIDAsIDApXSwKICAgIFsoNCwgNDAsIDAsIDEpLCAoODAwMCwgLTQwMDAsIC0yMDAwLCAtMjAwMCldLAogICAgWyg1LCA4OCwgMSwgMSksICgxMjAwMCwgLTQwMDAsIC00MDAwLCAtNDAwMCldLAogICAgWyg3LCAyNSwgMSwgMSksICgxODAwMCwgLTYwMDAsIC02MDAwLCAtNjAwMCldLAogICAgWyg5LCA1MCwgMCwgMCksICgxNjAwMCwgLTE2MDAwLCAwLCAwKV0sCiAgICBbKDEyLCA2NCwgMCwgMCksICgyNDAwMCwgLTI0MDAwLCAwLCAwKV0sCiAgICBbKDEzLCAxMzAsIDEsIDApLCAoNDgwMDAsIC00ODAwMCwgMCwgMCldLApdCgpmb3IgaW5wdXRfLCBvdXRwdXQgaW4gY2FzZXM6CiAgICBhc3NlcnQgc29ydGVkKG0oKmlucHV0XykpID09IHNvcnRlZChvdXRwdXQp