((declare (in) float aa) (declare (in) float ab) (declare (in) float b)
 (declare (in) float c)
 (declare (out) float d)
 (function main
  (signature void (parameters)
   ((declare (temporary) bool execute_flag)
    (assign (x) (var_ref execute_flag) (constant bool (1)))
    (declare (temporary) bool return_flag)
    (assign (x) (var_ref return_flag) (constant bool (0)))
    (if (expression bool > (var_ref aa) (constant float (0.0)))
     ((if (expression bool > (var_ref ab) (constant float (0.0)))
       ((assign (x) (var_ref return_flag) (constant bool (1)))
        (assign (x) (var_ref execute_flag) (constant bool (0))))
       ()))
     ())
    (if (var_ref execute_flag)
     ((loop
       ((if (expression bool > (var_ref b) (constant float (0.0)))
         ((if (expression bool > (var_ref c) (constant float (0.0))) ()
           (continue)))
         ((assign (x) (var_ref return_flag) (constant bool (1)))))
        break))
      (if (var_ref return_flag) ()
       ((assign (x) (var_ref d) (constant float (1.000000))))))
     ())))))
