/* Stuff needed by cdizy: */
typedef short Guard;
/* External functions, don't include standard libs because cdizy is weird */
extern int atoi (const char *nptr);
extern int printf(const char *format, ...);
/* In order to be able to inspect the result... */
int res, T_res;
void square_root(int O_n)
{
/* Declare guards */
Guard T_G11101 = 1;
Guard G11101 = 1;
Guard T_G1110 = 1;
Guard G1110 = 1;
Guard T_G1110110 = 1;
Guard G1110110 = 1;
/* Declare/initialize tagged params */
int T_O_n = O_n;
/* Declare other variables */
int O_result;
int O_k;
int O_i;
int T_O_result;
int T_O_k;
int T_O_i;
/* Here is the body! */
O_i = 1;
T_O_i = 1;
O_result = 0;
T_O_result = 0;
O_k = 1;
T_O_k = 1;
G1110 = O_k <= O_n;
T_G1110 = T_O_k <= T_O_n;
G1110__v__T_G1110:
if (G1110) G11101 = 1;
if (T_G1110) T_G11101 = 1;
if (G1110) if (G11101) G1110110 = O_k == O_n;
if (T_G1110) if (T_G11101) T_G1110110 = T_O_k == T_O_n;
if (G1110) if (G11101) if (G1110110) O_result = O_i;
if (T_G1110) if (T_G11101) if (T_G1110110) T_O_result = T_O_i;
if (G1110) if (G11101) O_i = (O_i + 1);
if (T_G1110) if (T_G11101) T_O_i = (T_O_i + 1);
if (G1110) if (G11101) O_k = (O_i * O_i);
if (T_G1110) if (T_G11101) T_O_k = (T_O_i * T_O_i);
if (G1110) G1110 = O_k <= O_n;
if (T_G1110) T_G1110 = T_O_k <= T_O_n;
if (G1110) goto G1110__v__T_G1110;
if (T_G1110) goto G1110__v__T_G1110;
/* Correlating point */
{ char *CP0; }
/* Set the output... */
res = O_result;
T_res = T_O_result;
}