/*
Cred : SunnyYeahBoi
It's my last chance (⌐■_■)
Problem :
*/
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define double long double
#define endl "\n"
#define NAME "a"
const int MAXN = 1e6 + 5;
const int inf = 1e18;
const int MOD = 1e9 + 7;
void FileInput(){
if(fopen(NAME".inp" , "r") == NULL)
freopen(NAME".inp" , "w" , stdout);
freopen(NAME".inp" , "r" , stdin);
freopen(NAME".out" , "w" , stdout);
}
int n , k;
int a[MAXN];
int pref[MAXN] , suf[MAXN];
void solve(){
cin >> n >> k;
for(int i = 1 ; i <= n ; i++) cin >> a[i];
pref[1] = a[1]; // pref[i] - gcd(a[1] , a[2] , ... , a[i])
suf[n] = a[n]; // suf[i] - gcd(a[i] , a[i + 1] , ... , a[n])
for(int i = 2 ; i <= n ; i++)
pref[i] = __gcd(pref[i - 1] , a[i]);
for(int i = n - 1 ; i > 0 ; i--)
suf[i] = __gcd(suf[i + 1] , a[i]);
int res = -inf;
for(int i = 1 ; i + k - 1 <= n ; i++){
int gc = 0;
if(i == 1)
gc = suf[i + k];
else if(i + k - 1 == n)
gc = pref[i - 1];
else gc = __gcd(pref[i - 1] , suf[i + k]);
res = max(res , gc);
}
cout << res << endl;
}
int32_t main(){
FileInput();
ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
int t = 1;
// cin >> t;
while(t--)
solve();
return 0;
}
LyoKICAgIENyZWQgOiBTdW5ueVllYWhCb2kKICAgIEl0J3MgbXkgbGFzdCBjaGFuY2UgKOKMkOKWoF/ilqApCiAgICBQcm9ibGVtIDoKKi8KCiNpbmNsdWRlPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKI2RlZmluZSBpbnQgbG9uZyBsb25nCiNkZWZpbmUgZG91YmxlIGxvbmcgZG91YmxlCiNkZWZpbmUgZW5kbCAiXG4iCiNkZWZpbmUgTkFNRSAiYSIKCmNvbnN0IGludCBNQVhOID0gMWU2ICsgNTsKY29uc3QgaW50IGluZiA9IDFlMTg7CmNvbnN0IGludCBNT0QgPSAxZTkgKyA3OwoKdm9pZCBGaWxlSW5wdXQoKXsKICAgIGlmKGZvcGVuKE5BTUUiLmlucCIgLCAiciIpID09IE5VTEwpCiAgICAgICAgZnJlb3BlbihOQU1FIi5pbnAiICwgInciICwgc3Rkb3V0KTsKICAgIGZyZW9wZW4oTkFNRSIuaW5wIiAsICJyIiAsIHN0ZGluKTsKICAgIGZyZW9wZW4oTkFNRSIub3V0IiAsICJ3IiAsIHN0ZG91dCk7Cn0KCmludCBuICwgazsKaW50IGFbTUFYTl07CmludCBwcmVmW01BWE5dICwgc3VmW01BWE5dOwoKdm9pZCBzb2x2ZSgpewogICAgY2luID4+IG4gPj4gazsKICAgIGZvcihpbnQgaSA9IDEgOyBpIDw9IG4gOyBpKyspIGNpbiA+PiBhW2ldOwoKICAgIHByZWZbMV0gPSBhWzFdOyAvLyBwcmVmW2ldIC0gZ2NkKGFbMV0gLCBhWzJdICwgLi4uICwgYVtpXSkKICAgIHN1ZltuXSA9IGFbbl07IC8vIHN1ZltpXSAtIGdjZChhW2ldICwgYVtpICsgMV0gLCAuLi4gLCBhW25dKQoKICAgIGZvcihpbnQgaSA9IDIgOyBpIDw9IG4gOyBpKyspCiAgICAgICAgcHJlZltpXSA9IF9fZ2NkKHByZWZbaSAtIDFdICwgYVtpXSk7CiAgICBmb3IoaW50IGkgPSBuIC0gMSA7IGkgPiAwIDsgaS0tKQogICAgICAgIHN1ZltpXSA9IF9fZ2NkKHN1ZltpICsgMV0gLCBhW2ldKTsKCiAgICBpbnQgcmVzID0gLWluZjsKICAgIGZvcihpbnQgaSA9IDEgOyBpICsgayAtIDEgPD0gbiA7IGkrKyl7CiAgICAgICAgaW50IGdjID0gMDsKCiAgICAgICAgaWYoaSA9PSAxKQogICAgICAgICAgICBnYyA9IHN1ZltpICsga107CiAgICAgICAgZWxzZSBpZihpICsgayAtIDEgPT0gbikKICAgICAgICAgICAgZ2MgPSBwcmVmW2kgLSAxXTsKICAgICAgICBlbHNlIGdjID0gX19nY2QocHJlZltpIC0gMV0gLCBzdWZbaSArIGtdKTsKICAgICAgICAKICAgICAgICByZXMgPSBtYXgocmVzICwgZ2MpOwogICAgfQoKICAgIGNvdXQgPDwgcmVzIDw8IGVuZGw7Cn0KCmludDMyX3QgbWFpbigpewogICAgRmlsZUlucHV0KCk7CiAgICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApO2Npbi50aWUoMCk7Y291dC50aWUoMCk7CiAgICBpbnQgdCA9IDE7CiAgICAvLyBjaW4gPj4gdDsKICAgIHdoaWxlKHQtLSkKICAgICAgICBzb2x2ZSgpOwogICAgcmV0dXJuIDA7Cn0K