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
****************************************************************/