#include using namespace std; #define fr freopen("in.txt", "r", stdin); #define fw freopen("out.txt", "w", stdout); #define sd(x) scanf("%d", &x); #define sl(x) scanf("%lld", &x); #define sf(x) scanf("%lf", &x); #define ll long long #define ull unsigned long long #define F first #define S second #define mem(v, x) memset(v, x, sizeof(v)); #define EB emplace_back #define PB push_back #define MP make_pair map> mp; int main() { //fr; //fw; int n; sd(n); ll arr[n], ans = 0; for (int x = 0; x < n; x++) sl(arr[x]); for (int x = 0; x < n; x++) { mp.clear(); ll p = arr[x]; for (ll y = 2; y * y <= p; y++) { if (p % y == 0) { while (p % y == 0) { mp[y]++; p /= y; } } } if (p > 1) mp[p]++; ll prev = 1, res = 1; for (auto y : mp) { // cout<