import sys sys.setrecursionlimit(10 ** 6) from collections import * def MI(): return map(int, sys.stdin.readline().split()) def LI(): return list(map(int, sys.stdin.readline().split())) def main(): n,d,t=MI() xx=LI() xx.sort() mod_d=defaultdict(list) for x in xx: mod_d[x%d].append(x//d) #print(mod_d) ans=0 for xx in mod_d.values(): cur=2*t+1 for x0,x1 in zip(xx,xx[1:]): cur+=2*t+1-max(0,x0+2*t-x1+1) ans+=cur print(ans) main()