n,k=map(int,input().split())
l1=list(map(int,input().split()))
def suShu(n):
f=True
for i in range(2,n):
if n%i==0:
f=True
else:
f=False
return f
l1.sort(reverse = True) #从大到小排列
a=l1[k-1]
l1.sort() #从小到大排列
b=l1[k-1]
if suShu(a-b):
print('YES')
print(a-b)
else:
print('NO')
print(a-b)
/**************************************************************
Problem: 1242
User: admin
Language: Python
Result: Accepted
Time:98 ms
Memory:34480 kb
****************************************************************/