For this Question: Given two positive integers N and M. Your task is to print first <b>M Special GCD numbers</b> which are greater than N.
<b>M Special GCD numbers</b> : First M numbers which are greater than N and whose GCD with N is equal to the smallest prime factor of N.User Task:
Since this is a functional problem, you don’t have to worry about the input, you just have to complete the function <b>printM_SpecialGCD()</b>, where you will get N and M as a parameter.

Constraints:
2 <= N <= 10^6
1 <= M <= 10^5Print the required answers separated by space.Sample Input:-
10 2

Sample Output:-
12 14

Explanation:-least prime divisor of 10 is 2. 
Numbers greater than 10 whose gcd with 10 is equal to 2 are :- 12 14 16 18 22 . . . .
First two numbers of this series are:- 12 and 14

Sample Input:-
9 3

Sample Output:-
12 15 21, I have written this Solution Code: def GCD(x, y): 
  
   while(y): 
       x, y = y, x % y 
  
   return x 
def primefactor(N) :
    if N%2==0:
        return 2
    i = 3
    while(i<=math.sqrt(N)):
        if(N%i==0):
            return i;
        i=i+2;
    return N;

def printM_SpecialGCD(N,M) : 
      
    prime=primefactor(N) 
    i=prime
    count=0
    while count!=M :
        res=GCD(N,N+i)
        
        if(res == prime):
             count=count+1
             print(N+i, end =" "),
            
            
       
        i=i+prime
      
    , In this Programming Language: Python, Now tell me if this Code is compilable or not?