from functools import lru_cache a, b, c, n = map(int, input().split()) def probability(a, goukei): return (a * (a - 1)) / (goukei * (goukei - 1)) @lru_cache(None) def calc(a, b, c, n): goukei = a + b + c if goukei <= 1: return 0 if a == 0: return 0 if (b + c) == 0: return 1 if n == 1: return probability(a, goukei) proba = probability(a, goukei) probb = probability(b, goukei) probc = probability(c, goukei) return ( proba * (1 + calc(a - 1, b, c, n - 1)) + probb * (calc(a, b - 1, c, n - 1)) + probc * (calc(a, b, c - 1, n - 1)) + (1 - proba - probb - probc) * (calc(a, b, c, n - 1)) ) print(calc(a, b, c, n), calc(b, c, a, n), calc(c, a, b, n))