program Task139;
var A, B, C, Pmax,
res, S_sq, S_tr,
small_triangles,
S_h, hole_side : Int64;
begin
writeln ('Hello World');
res := 0;
Pmax:=999999;
for A:=1 to Pmax do
begin
for B:=A + 1 to Pmax do
begin
for C:=B + 1 to Pmax do
begin
if (A + B + C <= Pmax) and (A*A + B*B =C*C) then
begin
S_sq:= C*C;
S_tr:= Trunc(A*B/2);
small_triangles:=Trunc(S_sq/S_tr);
S_h:= S_sq - small_triangles*S_tr;
hole_side := Trunc(sqrt(S_h));
if C mod hole_side = 0 then inc(res);
end;
end;
end;
end;
writeln(res);
Readln;
end.
