
A, B, K, C, = input().split()
A = int(A)
B = int(B)
K = int(K)
C = int(C)

K_max = K

if C != A and C != B:
    print(0)

M = [512, 256, 128, 64, 32, 16, 8, 4, 2, 1]
pom = [0,0,0,0,0,0,0,0,0,0]
hodnoty = [518219190, 792845273, 279632277, 582344008,294967268,65536,256,16,4,2]

for i in range(10):
    if K >= M[i]:
        K -= M[i];
        pom[i] = 1;

vysledek = 1

for i in range(10):
    if pom[i] == 1:
        vysledek *= hodnoty[i]
        vysledek = vysledek % 1000000007

vysledek = int(vysledek * K_max / 2)

vysledek = vysledek % 1000000007

print(pom)
print(vysledek)
