#include <bits/stdc++.h>
using namespace std;
int getAns() {
int notPrime[2005] = {0};
notPrime[1] = 1;
for(int i = 2; i <= 2000; i++) {
if(notPrime[i] == 0) {
for(int j = 2 * i; j <= 2000; j += i) {
notPrime[j] = 1;
}
}
}
int cnt = 0;
for(int i = 1; i <= 1000; i++) {
for(int j = i + 1; j <= 1000; j++) {
for(int k = j + 1; k <= 1000; k++) {
if(!(notPrime[i + j] || notPrime[j + k] || notPrime[i + k])) cnt++;
}
}
}
return cnt;
}
int main() {
cout << getAns();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAKaW50IGdldEFucygpIHsKICAgIGludCBub3RQcmltZVsyMDA1XSA9IHswfTsKICAgIG5vdFByaW1lWzFdID0gMTsKICAgIGZvcihpbnQgaSA9IDI7IGkgPD0gMjAwMDsgaSsrKSB7CiAgICAgICAgaWYobm90UHJpbWVbaV0gPT0gMCkgewogICAgICAgICAgICBmb3IoaW50IGogPSAyICogaTsgaiA8PSAyMDAwOyBqICs9IGkpIHsKICAgICAgICAgICAgICAgIG5vdFByaW1lW2pdID0gMTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBpbnQgY250ID0gMDsKICAgIGZvcihpbnQgaSA9IDE7IGkgPD0gMTAwMDsgaSsrKSB7CiAgICAgICAgZm9yKGludCBqID0gaSArIDE7IGogPD0gMTAwMDsgaisrKSB7CiAgICAgICAgICAgIGZvcihpbnQgayA9IGogKyAxOyBrIDw9IDEwMDA7IGsrKykgewogICAgICAgICAgICAgICAgaWYoIShub3RQcmltZVtpICsgal0gfHwgbm90UHJpbWVbaiArIGtdIHx8IG5vdFByaW1lW2kgKyBrXSkpIGNudCsrOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIGNudDsKfQogCmludCBtYWluKCkgewoJY291dCA8PCBnZXRBbnMoKTsKCXJldHVybiAwOwp9