#https://i...content-available-to-author-only...e.com/Fmh4dE
domy = [int(_) for _ in input().split()] #pozicie domov
vzd = int(input()) #maximalna vzdialenost od zastavky
#upravime pociatocne podmienky
pocet = 0
posl = -7*vzd #dost vlavo, aby pre prvy dom dalo v cykle zastavku ; -vzd-1
#ine riesenie
pocet = 1
posl = domy[0]+vzd #umiestnime prvy dom vo vzdialenosti vzd od prveho domu
print(posl) #vypis poziciu zastavky
for dom in domy: #pre vsetky domy
#ak vzdialenost od poslednej zastavky je velka, tak pridaj novu zastavku
if dom > posl+vzd: #dosah poslednej zastavky
pocet += 1 #zvys pocet zastavok
posl = dom+vzd #zastavku dame o vzd dalej
print(posl) #vypis poziciu zastavky
print(pocet)
I2h0dHBzOi8vaS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5jb20vRm1oNGRFCgpkb215ID0gW2ludChfKSBmb3IgXyBpbiBpbnB1dCgpLnNwbGl0KCldICNwb3ppY2llIGRvbW92CnZ6ZCA9IGludChpbnB1dCgpKSAjbWF4aW1hbG5hIHZ6ZGlhbGVub3N0IG9kIHphc3Rhdmt5CgojdXByYXZpbWUgcG9jaWF0b2NuZSBwb2RtaWVua3kKcG9jZXQgPSAwCnBvc2wgPSAtNyp2emQgI2Rvc3Qgdmxhdm8sIGFieSBwcmUgcHJ2eSBkb20gZGFsbyB2IGN5a2xlIHphc3Rhdmt1IDsgLXZ6ZC0xCgojaW5lIHJpZXNlbmllCnBvY2V0ID0gMQpwb3NsID0gZG9teVswXSt2emQgI3VtaWVzdG5pbWUgcHJ2eSBkb20gdm8gdnpkaWFsZW5vc3RpIHZ6ZCBvZCBwcnZlaG8gZG9tdQpwcmludChwb3NsKSAjdnlwaXMgcG96aWNpdSB6YXN0YXZreQoKZm9yIGRvbSBpbiBkb215OiAjcHJlIHZzZXRreSBkb215CgkjYWsgdnpkaWFsZW5vc3Qgb2QgcG9zbGVkbmVqIHphc3Rhdmt5IGplIHZlbGthLCB0YWsgcHJpZGFqIG5vdnUgemFzdGF2a3UKCWlmIGRvbSA+IHBvc2wrdnpkOiAjZG9zYWggcG9zbGVkbmVqIHphc3Rhdmt5CgkJcG9jZXQgKz0gMSAjenZ5cyBwb2NldCB6YXN0YXZvawoJCXBvc2wgPSBkb20rdnpkICN6YXN0YXZrdSBkYW1lIG8gdnpkIGRhbGVqCgkJcHJpbnQocG9zbCkgI3Z5cGlzIHBvemljaXUgemFzdGF2a3kKcHJpbnQocG9jZXQp