(def (ident fn) (decl (list (param (ident x) (option) (option) (False)) (param (ident y) (option) (option) (False)) (param (ident z) (option) (option) (False))) (option)) (list (assign (variable (ident q)) (None)) (assign (variable (ident q)) (- (+ (variable (ident x)) (variable (ident y))) (apply (. (variable (ident z)) (ident sigmoid)) (list) (list)))) (expression statement (apply (variable (ident print)) (list (variable (ident q))) (list))) (assign (variable (ident w)) (unary minus (variable (ident z)))) (if (and (and (not (variable (ident x))) (not (variable (ident y)))) (variable (ident z))) (list (assign (variable (ident m)) (if (not (variable (ident z))) (variable (ident x)) (variable (ident y))))) (list)) (while (and (< (variable (ident x)) (variable (ident y))) (> (variable (ident y)) (variable (ident z)))) (list (assign (variable (ident q)) (variable (ident x))))) (assert (eq (const 1) (const 1)) (option (string_literal hello))) (return (variable (ident x)))))