#include <vector>
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
unsigned long long is_ok(unsigned int n)
{
unsigned long long sum = 0;
for(int i = 1; i*i <= n; ++i)
{
if (n%i == 0) {
sum += i*i;
if (i*i != n) sum += (n/i)*(n/i);
}
}
unsigned long long sq = sqrt(sum)+0.5;
if (sq*sq == sum) return sum;
return 0;
}
int main(int argc, const char * argv[])
{
vector<pair<unsigned int,unsigned long long>> p;
for(unsigned int i = 2; i < 10000; ++i)
{
unsigned long long s = is_ok(i);
if (s) p.emplace_back(i,s);
}
for(auto x: p)
cout << setw(10) << x.first << " " << setw(10) << x.second << endl;
}
I2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aW9tYW5pcD4KI2luY2x1ZGUgPGNtYXRoPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnVuc2lnbmVkIGxvbmcgbG9uZyBpc19vayh1bnNpZ25lZCBpbnQgbikKewogICAgdW5zaWduZWQgbG9uZyBsb25nIHN1bSA9IDA7CiAgICBmb3IoaW50IGkgPSAxOyBpKmkgPD0gbjsgKytpKQogICAgewogICAgICAgIGlmIChuJWkgPT0gMCkgewogICAgICAgICAgICBzdW0gKz0gaSppOwogICAgICAgICAgICBpZiAoaSppICE9IG4pIHN1bSArPSAobi9pKSoobi9pKTsKICAgICAgICB9CiAgICB9CiAgICB1bnNpZ25lZCBsb25nIGxvbmcgc3EgPSBzcXJ0KHN1bSkrMC41OwogICAgaWYgKHNxKnNxID09IHN1bSkgcmV0dXJuIHN1bTsKICAgIHJldHVybiAwOwp9CgoKaW50IG1haW4oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiBhcmd2W10pCnsKICAgIHZlY3RvcjxwYWlyPHVuc2lnbmVkIGludCx1bnNpZ25lZCBsb25nIGxvbmc+PiBwOwogICAgZm9yKHVuc2lnbmVkIGludCBpID0gMjsgaSA8IDEwMDAwOyArK2kpCiAgICB7CiAgICAgICAgdW5zaWduZWQgbG9uZyBsb25nIHMgPSBpc19vayhpKTsKICAgICAgICBpZiAocykgcC5lbXBsYWNlX2JhY2soaSxzKTsKICAgIH0KCiAgICBmb3IoYXV0byB4OiBwKQogICAgICAgIGNvdXQgPDwgc2V0dygxMCkgPDwgeC5maXJzdCA8PCAiICIgPDwgc2V0dygxMCkgPDwgeC5zZWNvbmQgPDwgZW5kbDsKfQo=