SomethingElseMkII { ; An enhanced version of "Something Else" with two ; added parameters. ; Based on "Something New 4" by Jos Leys ; I thank him for his kind permission to publish this ; Toby Marshall, May 2002 ; hint: change fn1 to "ident" for an interesting Mset ; with built-in spirals. Also good with the switch. init: z = @start loop: IF (@group ==0); first IF (@op2 == 0) IF (@op == 0) z = @fn1(z^@fn4(1/#pixel))/ (fn2((@fn5(#pixel^@p4)*@p3)^@p1)*fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2 ELSEIF (@op == 1) z = @fn1(z^@fn4(1/#pixel))^ (fn2((@fn5(#pixel^@p4)*@p3)^@p1)*fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2 ENDIF ELSEIF (@op2 == 1) IF (@op == 0) z = @fn1(z^@fn4(1/#pixel))/ (fn2((@fn5(#pixel^@p4)*@p3)^@p1)+fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2 ELSEIF (@op == 1) z = @fn1(z^@fn4(1/#pixel))^ (fn2((@fn5(#pixel^@p4)*@p3)^@p1)+fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2 ENDIF ELSEIF (@op2 == 2) IF (@op == 0) z = @fn1(z^@fn4(1/#pixel))/ (fn2((@fn5(#pixel^@p4)*@p3)^@p1)^fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2 ELSEIF (@op == 1) z = @fn1(z^@fn4(1/#pixel))^ (fn2((@fn5(#pixel^@p4)*@p3)^@p1)^fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2 ENDIF ENDIF ELSEIF (@group == 1); second IF (@op2 == 0) IF (@op == 0) z = @fn1(z^@fn4(1/#pixel))/ ((fn2((@fn5(#pixel^@p4)*@p3)^@p1)*fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2) ELSEIF (@op == 1) z = @fn1(z^@fn4(1/#pixel))^ ((fn2((@fn5(#pixel^@p4)*@p3)^@p1)*fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2) ENDIF ELSEIF (@op2 == 1) IF (@op == 0) z = @fn1(z^@fn4(1/#pixel))/ ((fn2((@fn5(#pixel^@p4)*@p3)^@p1)+fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2) ELSEIF (@op == 1) z = @fn1(z^@fn4(1/#pixel))^ ((fn2((@fn5(#pixel^@p4)*@p3)^@p1)+fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2) ENDIF ELSEIF (@op2 == 2) IF (@op == 0) z = @fn1(z^@fn4(1/#pixel))/ ((fn2((@fn5(#pixel^@p4)*@p3)^@p1)^fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2) ELSEIF (@op == 1) z = @fn1(z^@fn4(1/#pixel))^ ((fn2((@fn5(#pixel^@p4)*@p3)^@p1)^fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2) ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "SomethingElseMkIIJulia" bailout = bailout seed = #pixel param1 = @param1 param2 = @param2 param3 = @param3 param4 = @param4 op = @op op2 = @op2 group = @group fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 default: title = "Something Else Mk II" periodicity = 0 angle = 270 center = (1,0) param start caption = "init z" default = (1.0,0) endparam param bailout default = 20 endparam param p1 caption="param 1" default = (1.0,0) endparam param p2 caption="param 2" default = (.14,0) endparam param p3 caption="param 3" default = (0.7,0) endparam param p4 caption="param 4" default = (1.0,0) endparam param op caption = "operator 1" enum = "/""^" default = 0 endparam param op2 caption = "operator 2" enum = "*""+""^" default = 1 endparam param group caption = "grouping" enum = "first""second" hint = "with 2nd grouping it is best if operator 1 is set to / , not ^" default = 0 endparam func fn1 caption="Function 1" default = cos() endfunc func fn2 caption="Function 2" default = ident() endfunc func fn3 caption="Function 3" default = ident() endfunc func fn4 caption="Function 4" default = ident() endfunc func fn5 caption="Function 5" default = ident() endfunc func fn6 caption="Function 6" default = ident() endfunc } SomethingElseMkIIJulia { ; Based on "Something New 4" by Jos Leys ; I thank him for his kind permission to publish this ; Toby Marshall, May 2002 init: z = #pixel loop: IF (@group ==0); first IF (@op2 == 0) IF (@op == 0) z = @fn1(z^@fn4(1/@seed))/ (fn2((@fn5(@seed^@p4)*@p3)^@p1)*fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2 ELSEIF (@op == 1) z = @fn1(z^@fn4(1/@seed))^ (fn2((@fn5(@seed^@p4)*@p3)^@p1)*fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2 ENDIF ELSEIF (@op2 == 1) IF (@op == 0) z = @fn1(z^@fn4(1/@seed))/ (fn2((@fn5(@seed^@p4)*@p3)^@p1)+fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2 ELSEIF (@op == 1) z = @fn1(z^@fn4(1/@seed))^ (fn2((@fn5(@seed^@p4)*@p3)^@p1)+fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2 ENDIF ELSEIF (@op2 == 2) IF (@op == 0) z = @fn1(z^@fn4(1/@seed))/ (fn2((@fn5(@seed^@p4)*@p3)^@p1)^fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2 ELSEIF (@op == 1) z = @fn1(z^@fn4(1/@seed))^ (fn2((@fn5(@seed^@p4)*@p3)^@p1)^fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2 ENDIF ENDIF ELSEIF (@group == 1); second IF (@op2 == 0) IF (@op == 0) z = @fn1(z^@fn4(1/@seed))/ ((fn2((@fn5(@seed^@p4)*@p3)^@p1)*fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2) ELSEIF (@op == 1) z = @fn1(z^@fn4(1/@seed))^ ((fn2((@fn5(@seed^@p4)*@p3)^@p1)*fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2) ENDIF ELSEIF (@op2 == 1) IF (@op == 0) z = @fn1(z^@fn4(1/@seed))/ ((fn2((@fn5(@seed^@p4)*@p3)^@p1)+fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2) ELSEIF (@op == 1) z = @fn1(z^@fn4(1/@seed))^ ((fn2((@fn5(@seed^@p4)*@p3)^@p1)+fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2) ENDIF ELSEIF (@op2 == 2) IF (@op == 0) z = @fn1(z^@fn4(1/@seed))/ ((fn2((@fn5(@seed^@p4)*@p3)^@p1)^fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2) ELSEIF (@op == 1) z = @fn1(z^@fn4(1/@seed))^ ((fn2((@fn5(@seed^@p4)*@p3)^@p1)^fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2) ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "SomethingElseMkII" bailout = bailout param1 = @param1 param2 = @param2 param3 = @param3 param4 = @param4 op = @op op2 = @op2 group = @group fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 default: title = "Something Else Mk II Julia" periodicity = 0 magn = .78 maxiter = 500 center = (1.2, -0.175) param seed default =(1.95, 0.44) caption = "seed" endparam param bailout default = 20 endparam param p1 caption="param 1" default = (1.0,0) endparam param p2 caption="param 2" default = (.14,0) endparam param p3 caption="param 3" default = (0.7,0) endparam param p4 caption="param 4" default = (1.0,0) endparam param op caption = "operator 1" enum = "/""^" default = 0 endparam param op2 caption = "operator 2" enum = "*""+""^" default = 1 endparam param group caption = "grouping" enum = "first""second" default = 0 endparam func fn1 caption="Function 1" default = cos() endfunc func fn2 caption="Function 2" default = ident() endfunc func fn3 caption="Function 3" default = ident() endfunc func fn4 caption="Function 4" default = ident() endfunc func fn5 caption="Function 5" default = ident() endfunc func fn6 caption="Function 6" default = ident() endfunc } =========================================================================== SomethingElse { ; Based on "Something New 4" by Jos Leys ; I thank him for his kind permission to publish this ; Toby Marshall, May 2002 ; hint: change fn1 to "ident" for an interesting Mset ; with built-in spirals. Also good with the switch. init: z = @start loop: IF (@op == 0) z = @fn1(z^@fn4(1/#pixel))/ (fn2((@fn5(#pixel^@p4)*@p3)^@p1)+fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2 ELSEIF (@op == 1) z = @fn1(z^@fn4(1/#pixel))^ (fn2((@fn5(#pixel^@p4)*@p3)^@p1)+fn3((@fn6(#pixel^@p4)*@p3)^@p1))/@p2 ENDIF bailout: |z| < @bailout switch: type = "SomethingElseJulia" bailout = bailout seed = #pixel param1 = @param1 param2 = @param2 param3 = @param3 param4 = @param4 op = @op fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 default: title = "Something Else" periodicity = 0 angle = 270 center = (1,0) param start default = (1E-27,0) endparam param bailout default = 20 endparam param p1 caption="param 1" default = (1.0,0) endparam param p2 caption="param 2" default = (.14,0) endparam param p3 caption="param 3" default = (0.7,0) endparam param p4 caption="param 4" default = (1.0,0) endparam param op caption = "operator" enum = "/""^" default = 0 endparam func fn1 caption="Function 1" default = cos() endfunc func fn2 caption="Function 2" default = ident() endfunc func fn3 caption="Function 3" default = ident() endfunc func fn4 caption="Function 4" default = ident() endfunc func fn5 caption="Function 5" default = ident() endfunc func fn6 caption="Function 6" default = ident() endfunc } SomethingElseJulia { ; Based on "Something New 4" by Jos Leys ; I thank him for his kind permission to publish this ; Toby Marshall, May 2002 init: z = #pixel loop: IF (@op == 0) z = @fn1(z^@fn4(1/@seed))/ (fn2((@fn5(@seed^@p4)*@p3)^@p1)+fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2 ELSEIF (@op == 1) z = @fn1(z^@fn4(1/@seed))^ (fn2((@fn5(@seed^@p4)*@p3)^@p1)+fn3((@fn6(@seed^@p4)*@p3)^@p1))/@p2 ENDIF bailout: |z| < @bailout switch: type = "SomethingElse" bailout = bailout param1 = @param1 param2 = @param2 param3 = @param3 param4 = @param4 op = @op fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 default: title = "Something Else Julia" periodicity = 0 magn = .78 maxiter = 500 center = (1.2, -0.175) param seed default =(1.95, 0.44) caption = "seed" endparam param start default = (1E-27,0) endparam param p1 caption="param 1" default = (1.0,0) endparam param p2 caption="param 2" default = (.14,0) endparam param p3 caption="param 3" default = (0.7,0) endparam param p4 caption="param 4" default = (1.0,0) endparam param op caption = "operator" enum = "/""^" default = 0 endparam func fn1 caption="Function 1" default = cos() endfunc func fn2 caption="Function 2" default = ident() endfunc func fn3 caption="Function 3" default = ident() endfunc func fn4 caption="Function 4" default = ident() endfunc func fn5 caption="Function 5" default = ident() endfunc func fn6 caption="Function 6" default = ident() endfunc param bailout default = 20 endparam } =========================================================================== FantasiaSpirale { ;Toby Marshall, Feb. 2002 ;Choose your parameter and function values ;then explore the resulting figure with ;the Julia switch. At least one operator ;should be an exponent. Effective bailouts ;vary greatly depending on the coloring ;and functions chosen. ;Have fun! init: z = @start loop: IF (@op3 == 0); exp IF (@op2 == 0); exp IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(#pixel-@p2)^fn3(z^@p3)^fn4(#pixel-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(#pixel-@p2)^fn3(z^@p3)^fn4(#pixel-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(#pixel-@p2)^fn3(z^@p3)^fn4(#pixel-@p4) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(#pixel-@p2)^fn3(z^@p3)*fn4(#pixel-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(#pixel-@p2)^fn3(z^@p3)*fn4(#pixel-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(#pixel-@p2)^fn3(z^@p3)*fn4(#pixel-@p4) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(#pixel-@p2)^fn3(z^@p3)/fn4(#pixel-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(#pixel-@p2)^fn3(z^@p3)/fn4(#pixel-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(#pixel-@p2)^fn3(z^@p3)/fn4(#pixel-@p4) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0); exp IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(#pixel-@p2)*fn3(z^@p3)^fn4(#pixel-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(#pixel-@p2)*fn3(z^@p3)^fn4(#pixel-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(#pixel-@p2)*fn3(z^@p3)^fn4(#pixel-@p4) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(#pixel-@p2)*fn3(z^@p3)*fn4(#pixel-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(#pixel-@p2)*fn3(z^@p3)*fn4(#pixel-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(#pixel-@p2)*fn3(z^@p3)*fn4(#pixel-@p4) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(#pixel-@p2)*fn3(z^@p3)/fn4(#pixel-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(#pixel-@p2)*fn3(z^@p3)/fn4(#pixel-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(#pixel-@p2)*fn3(z^@p3)/fn4(#pixel-@p4) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0); exp IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(#pixel-@p2)/fn3(z^@p3)^fn4(#pixel-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(#pixel-@p2)/fn3(z^@p3)^fn4(#pixel-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(#pixel-@p2)/fn3(z^@p3)^fn4(#pixel-@p4) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(#pixel-@p2)/fn3(z^@p3)*fn4(#pixel-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(#pixel-@p2)/fn3(z^@p3)*fn4(#pixel-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(#pixel-@p2)/fn3(z^@p3)*fn4(#pixel-@p4) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(#pixel-@p2)/fn3(z^@p3)/fn4(#pixel-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(#pixel-@p2)/fn3(z^@p3)/fn4(#pixel-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(#pixel-@p2)/fn3(z^@p3)/fn4(#pixel-@p4) ENDIF ENDIF ENDIF bailout: |z|<@bailout switch: type = "FantasiaSpiraleJulia" seed = #pixel bailout = bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 p1 = @p1 p2 = @p2 p3 = @p3 p4 = @p4 op1 = @op1 op2 = @op2 op3 = @op3 default: title = "Fantasia Spirale" periodicity = 0 param start default = (2.0,0) endparam param bailout default = 4.0 hint = "Effective bailouts vary greatly depending on the coloring and functions chosen" endparam param p1 caption = "param1" default = (1.0,0.0) endparam param p2 caption = "param2" default = (0.0,0.0) endparam param p3 caption = "param3" default = (1.0,0.0) endparam param p4 caption = "param4" default = (0.0,0.0) endparam param op3 caption = "main operator" default = 1 enum = "^""*""/" hint = "At least one operator should be an exponent" endparam param op1 caption = "operator1" default = 0 enum = "^""*""/" hint = "At least one operator should be an exponent" endparam param op2 caption = "operator2" default = 0 enum = "^""*""/" hint = "At least one operator should be an exponent" endparam func fn1 caption = "Function 1" default = ident() endfunc func fn2 caption = "Function 2" default = ident() endfunc func fn3 caption = "Function 3" default = ident() endfunc func fn4 caption = "Function 4" default = ident() endfunc } FantasiaSpiraleJulia { ;Toby Marshall, Feb. 2002 ;Increment parameters to vary spirals. ;Effective bailouts vary greatly ;depending on the coloring and ;functions chosen. init: z = #pixel loop: IF (@op3 == 0); exp IF (@op2 == 0); exp IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(@seed-@p2)^fn3(z^@p3)^fn4(@seed-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(@seed-@p2)^fn3(z^@p3)^fn4(@seed-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(@seed-@p2)^fn3(z^@p3)^fn4(@seed-@p4) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(@seed-@p2)^fn3(z^@p3)*fn4(@seed-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(@seed-@p2)^fn3(z^@p3)*fn4(@seed-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(@seed-@p2)^fn3(z^@p3)*fn4(@seed-@p4) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(@seed-@p2)^fn3(z^@p3)/fn4(@seed-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(@seed-@p2)^fn3(z^@p3)/fn4(@seed-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(@seed-@p2)^fn3(z^@p3)/fn4(@seed-@p4) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0); exp IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(@seed-@p2)*fn3(z^@p3)^fn4(@seed-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(@seed-@p2)*fn3(z^@p3)^fn4(@seed-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(@seed-@p2)*fn3(z^@p3)^fn4(@seed-@p4) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(@seed-@p2)*fn3(z^@p3)*fn4(@seed-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(@seed-@p2)*fn3(z^@p3)*fn4(@seed-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(@seed-@p2)*fn3(z^@p3)*fn4(@seed-@p4) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(@seed-@p2)*fn3(z^@p3)/fn4(@seed-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(@seed-@p2)*fn3(z^@p3)/fn4(@seed-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(@seed-@p2)*fn3(z^@p3)/fn4(@seed-@p4) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0); exp IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(@seed-@p2)/fn3(z^@p3)^fn4(@seed-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(@seed-@p2)/fn3(z^@p3)^fn4(@seed-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(@seed-@p2)/fn3(z^@p3)^fn4(@seed-@p4) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(@seed-@p2)/fn3(z^@p3)*fn4(@seed-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(@seed-@p2)/fn3(z^@p3)*fn4(@seed-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(@seed-@p2)/fn3(z^@p3)*fn4(@seed-@p4) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0); exp z = fn1(z^@p1)^fn2(@seed-@p2)/fn3(z^@p3)/fn4(@seed-@p4) ELSEIF (@op1 == 1) z = fn1(z^@p1)*fn2(@seed-@p2)/fn3(z^@p3)/fn4(@seed-@p4) ELSEIF (@op1 == 2) z = fn1(z^@p1)/fn2(@seed-@p2)/fn3(z^@p3)/fn4(@seed-@p4) ENDIF ENDIF ENDIF bailout: |z|<@bailout switch: type = "FantasiaSpirale" bailout = bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 p1 = @p1 p2 = @p2 p3 = @p3 p4 = @p4 op1 = @op1 op2 = @op2 op3 = @op3 default: title = "Fantasia Spirale Julia" maxiter = 500 periodicity = 0 param seed default = (0.987, -0.05) endparam param bailout hint = "Effective bailouts vary greatly depending on the coloring and functions chosen" default = 4.0 endparam param p1 caption = "param1" default = (1.0,0.0) endparam param p2 caption = "param2" default = (0.0,0.0) endparam param p3 caption = "param3" default = (1.0,0.0) endparam param p4 caption = "param4" default = (0.0,0.0) endparam param op3 caption = "main operator" default = 0 enum = "^""*""/" hint = "At least one operator should be an exponent" endparam param op1 caption = "operator1" default = 1 enum = "^""*""/" hint = "At least one operator should be an exponent" endparam param op2 caption = "operator2" default = 2 enum = "^""*""/" hint = "At least one operator should be an exponent" endparam func fn1 caption = "Function 1" default = ident() endfunc func fn2 caption = "Function 2" default = abs() endfunc func fn3 caption = "Function 3" default = log() endfunc func fn4 caption = "Function 4" default = flip() endfunc } ========================================================================== CoolBrew { ; Toby Marshall, May 2002 ; Use with the Julia switch. All functions ; and parameters can be varied to explore ; different Julia sets. Some parameter ; combinations give black M sets, but they ; too sometimes yield interesting results ; with the switch. Try a higher value for ; "init z" if you encounter a black M set ; after setting operators, it might help. ; Bailout values are especially critical ; with this formula--experiment with them. init: z = @start complex frog = @frog*(0.0,1.0) loop: aa = fn1(#pixel^@exp5 + @maid) bb = fn2(real(fn3(z^@exp1) + @eye)) cc = fn4(imag (@fn5(z^@exp2) + frog)) dd = @fn6(#pixel^@exp4 +@hen) gg = @fn7(z^@exp3 + @bat) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / cc / dd / gg ELSEIF (@op1 == 1) z = aa^(bb) * cc / dd / gg ELSEIF (@op1 == 2) z = aa^(bb) - cc / dd / gg ELSEIF (@op1 == 3) z = aa^(bb) + cc / dd / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc / dd / gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / cc * dd / gg ELSEIF (@op1 == 1) z = aa^(bb) * cc * dd / gg ELSEIF (@op1 == 2) z = aa^(bb) - cc * dd / gg ELSEIF (@op1 == 3) z = aa^(bb) + cc * dd / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc * dd / gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / cc - dd / gg ELSEIF (@op1 == 1) z = aa^(bb) * cc - dd / gg ELSEIF (@op1 == 2) z = aa^(bb) - cc - dd / gg ELSEIF (@op1 == 3) z = aa^(bb) + cc - dd / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc - dd / gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / cc + dd / gg ELSEIF (@op1 == 1) z = aa^(bb) * cc + dd / gg ELSEIF (@op1 == 2) z = aa^(bb) - cc + dd / gg ELSEIF (@op1 == 3) z = aa^(bb) + cc + dd / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc + dd / gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / cc ^ dd / gg ELSEIF (@op1 == 1) z = aa^(bb) * cc ^ dd / gg ELSEIF (@op1 == 2) z = aa^(bb) - cc ^ dd / gg ELSEIF (@op1 == 3) z = aa^(bb) + cc ^ dd / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc ^ dd / gg ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / cc / dd * gg ELSEIF (@op1 == 1) z = aa^(bb) * cc / dd * gg ELSEIF (@op1 == 2) z = aa^(bb) - cc / dd * gg ELSEIF (@op1 == 3) z = aa^(bb) + cc / dd * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc / dd * gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / cc * dd * gg ELSEIF (@op1 == 1) z = aa^(bb) * cc * dd * gg ELSEIF (@op1 == 2) z = aa^(bb) - cc * dd * gg ELSEIF (@op1 == 3) z = aa^(bb) + cc * dd * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc * dd * gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / cc - dd * gg ELSEIF (@op1 == 1) z = aa^(bb) * cc - dd * gg ELSEIF (@op1 == 2) z = aa^(bb) - cc - dd * gg ELSEIF (@op1 == 3) z = aa^(bb) + cc - dd * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc - dd * gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / cc + dd * gg ELSEIF (@op1 == 1) z = aa^(bb) * cc + dd * gg ELSEIF (@op1 == 2) z = aa^(bb) - cc + dd * gg ELSEIF (@op1 == 3) z = aa^(bb) + cc + dd * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc + dd * gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / cc ^ dd * gg ELSEIF (@op1 == 1) z = aa^(bb) * cc ^ dd * gg ELSEIF (@op1 == 2) z = aa^(bb) - cc ^ dd * gg ELSEIF (@op1 == 3) z = aa^(bb) + cc ^ dd * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc ^ dd * gg ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / cc / dd - gg ELSEIF (@op1 == 1) z = aa^(bb) * cc / dd - gg ELSEIF (@op1 == 2) z = aa^(bb) - cc / dd - gg ELSEIF (@op1 == 3) z = aa^(bb) + cc / dd - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc / dd - gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / cc * dd - gg ELSEIF (@op1 == 1) z = aa^(bb) * cc * dd - gg ELSEIF (@op1 == 2) z = aa^(bb) - cc * dd - gg ELSEIF (@op1 == 3) z = aa^(bb) + cc * dd - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc * dd - gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / cc - dd - gg ELSEIF (@op1 == 1) z = aa^(bb) * cc - dd - gg ELSEIF (@op1 == 2) z = aa^(bb) - cc - dd - gg ELSEIF (@op1 == 3) z = aa^(bb) + cc - dd - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc - dd - gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / cc + dd - gg ELSEIF (@op1 == 1) z = aa^(bb) * cc + dd - gg ELSEIF (@op1 == 2) z = aa^(bb) - cc + dd - gg ELSEIF (@op1 == 3) z = aa^(bb) + cc + dd - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc + dd - gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / cc ^ dd - gg ELSEIF (@op1 == 1) z = aa^(bb) * cc ^ dd - gg ELSEIF (@op1 == 2) z = aa^(bb) - cc ^ dd - gg ELSEIF (@op1 == 3) z = aa^(bb) + cc ^ dd - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc ^ dd - gg ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / cc / dd + gg ELSEIF (@op1 == 1) z = aa^(bb) * cc / dd + gg ELSEIF (@op1 == 2) z = aa^(bb) - cc / dd + gg ELSEIF (@op1 == 3) z = aa^(bb) + cc / dd + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc / dd + gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / cc * dd + gg ELSEIF (@op1 == 1) z = aa^(bb) * cc * dd + gg ELSEIF (@op1 == 2) z = aa^(bb) - cc * dd + gg ELSEIF (@op1 == 3) z = aa^(bb) + cc * dd + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc * dd + gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / cc - dd + gg ELSEIF (@op1 == 1) z = aa^(bb) * cc - dd + gg ELSEIF (@op1 == 2) z = aa^(bb) - cc - dd + gg ELSEIF (@op1 == 3) z = aa^(bb) + cc - dd + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc - dd + gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / cc + dd + gg ELSEIF (@op1 == 1) z = aa^(bb) * cc + dd + gg ELSEIF (@op1 == 2) z = aa^(bb) - cc + dd + gg ELSEIF (@op1 == 3) z = aa^(bb) + cc + dd + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc + dd + gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / cc ^ dd + gg ELSEIF (@op1 == 1) z = aa^(bb) * cc ^ dd + gg ELSEIF (@op1 == 2) z = aa^(bb) - cc ^ dd + gg ELSEIF (@op1 == 3) z = aa^(bb) + cc ^ dd + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc ^ dd + gg ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / cc / dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * cc / dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - cc / dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + cc / dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc / dd ^ gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / cc * dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * cc * dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - cc * dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + cc * dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc * dd ^ gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / cc - dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * cc - dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - cc - dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + cc - dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc - dd ^ gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / cc + dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * cc + dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - cc + dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + cc + dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc + dd ^ gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / cc ^ dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * cc ^ dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - cc ^ dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + cc ^ dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc ^ dd ^ gg ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb / cc) / dd / gg ELSEIF (@op1 == 1) z = aa^(bb * cc) / dd / gg ELSEIF (@op1 == 2) z = aa^(bb - cc) / dd / gg ELSEIF (@op1 == 3) z = aa^(bb + cc) / dd / gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) / dd / gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb / cc) * dd / gg ELSEIF (@op1 == 1) z = aa^(bb * cc) * dd / gg ELSEIF (@op1 == 2) z = aa^(bb - cc) * dd / gg ELSEIF (@op1 == 3) z = aa^(bb + cc) * dd / gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) * dd / gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb / cc) - dd / gg ELSEIF (@op1 == 1) z = aa^(bb * cc) - dd / gg ELSEIF (@op1 == 2) z = aa^(bb - cc) - dd / gg ELSEIF (@op1 == 3) z = aa^(bb + cc) - dd / gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) - dd / gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb / cc) + dd / gg ELSEIF (@op1 == 1) z = aa^(bb * cc) + dd / gg ELSEIF (@op1 == 2) z = aa^(bb - cc) + dd / gg ELSEIF (@op1 == 3) z = aa^(bb + cc) + dd / gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) + dd / gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb / cc) ^ dd / gg ELSEIF (@op1 == 1) z = aa^(bb * cc) ^ dd / gg ELSEIF (@op1 == 2) z = aa^(bb - cc) ^ dd / gg ELSEIF (@op1 == 3) z = aa^(bb + cc) ^ dd / gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) ^ dd / gg ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb / cc) / dd * gg ELSEIF (@op1 == 1) z = aa^(bb * cc) / dd * gg ELSEIF (@op1 == 2) z = aa^(bb - cc) / dd * gg ELSEIF (@op1 == 3) z = aa^(bb + cc) / dd * gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) / dd * gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb / cc) * dd * gg ELSEIF (@op1 == 1) z = aa^(bb * cc) * dd * gg ELSEIF (@op1 == 2) z = aa^(bb - cc) * dd * gg ELSEIF (@op1 == 3) z = aa^(bb + cc) * dd * gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) * dd * gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb / cc) - dd * gg ELSEIF (@op1 == 1) z = aa^(bb * cc) - dd * gg ELSEIF (@op1 == 2) z = aa^(bb - cc) - dd * gg ELSEIF (@op1 == 3) z = aa^(bb + cc) - dd * gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) - dd * gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb / cc) + dd * gg ELSEIF (@op1 == 1) z = aa^(bb * cc) + dd * gg ELSEIF (@op1 == 2) z = aa^(bb - cc) + dd * gg ELSEIF (@op1 == 3) z = aa^(bb + cc) + dd * gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) + dd * gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb / cc) ^ dd * gg ELSEIF (@op1 == 1) z = aa^(bb * cc) ^ dd * gg ELSEIF (@op1 == 2) z = aa^(bb - cc) ^ dd * gg ELSEIF (@op1 == 3) z = aa^(bb + cc) ^ dd * gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) ^ dd * gg ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb / cc) / dd - gg ELSEIF (@op1 == 1) z = aa^(bb * cc) / dd - gg ELSEIF (@op1 == 2) z = aa^(bb - cc) / dd - gg ELSEIF (@op1 == 3) z = aa^(bb + cc) / dd - gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) / dd - gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb / cc) * dd - gg ELSEIF (@op1 == 1) z = aa^(bb * cc) * dd - gg ELSEIF (@op1 == 2) z = aa^(bb - cc) * dd - gg ELSEIF (@op1 == 3) z = aa^(bb + cc) * dd - gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) * dd - gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb / cc) - dd - gg ELSEIF (@op1 == 1) z = aa^(bb * cc) - dd - gg ELSEIF (@op1 == 2) z = aa^(bb - cc) - dd - gg ELSEIF (@op1 == 3) z = aa^(bb + cc) - dd - gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) - dd - gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb / cc) + dd - gg ELSEIF (@op1 == 1) z = aa^(bb * cc) + dd - gg ELSEIF (@op1 == 2) z = aa^(bb - cc) + dd - gg ELSEIF (@op1 == 3) z = aa^(bb + cc) + dd - gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) + dd - gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb / cc) ^ dd - gg ELSEIF (@op1 == 1) z = aa^(bb * cc) ^ dd - gg ELSEIF (@op1 == 2) z = aa^(bb - cc) ^ dd - gg ELSEIF (@op1 == 3) z = aa^(bb + cc) ^ dd - gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) ^ dd - gg ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb / cc) / dd + gg ELSEIF (@op1 == 1) z = aa^(bb * cc) / dd + gg ELSEIF (@op1 == 2) z = aa^(bb - cc) / dd + gg ELSEIF (@op1 == 3) z = aa^(bb + cc) / dd + gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) / dd + gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb / cc) * dd + gg ELSEIF (@op1 == 1) z = aa^(bb * cc) * dd + gg ELSEIF (@op1 == 2) z = aa^(bb - cc) * dd + gg ELSEIF (@op1 == 3) z = aa^(bb + cc) * dd + gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) * dd + gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb / cc) - dd + gg ELSEIF (@op1 == 1) z = aa^(bb * cc) - dd + gg ELSEIF (@op1 == 2) z = aa^(bb - cc) - dd + gg ELSEIF (@op1 == 3) z = aa^(bb + cc) - dd + gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) - dd + gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb / cc) + dd + gg ELSEIF (@op1 == 1) z = aa^(bb * cc) + dd + gg ELSEIF (@op1 == 2) z = aa^(bb - cc) + dd + gg ELSEIF (@op1 == 3) z = aa^(bb + cc) + dd + gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) + dd + gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb / cc) ^ dd + gg ELSEIF (@op1 == 1) z = aa^(bb * cc) ^ dd + gg ELSEIF (@op1 == 2) z = aa^(bb - cc) ^ dd + gg ELSEIF (@op1 == 3) z = aa^(bb + cc) ^ dd + gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) ^ dd + gg ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb / cc) / dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb * cc) / dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb - cc) / dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb + cc) / dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) / dd ^ gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb / cc) * dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb * cc) * dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb - cc) * dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb + cc) * dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) * dd ^ gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb / cc) - dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb * cc) - dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb - cc) - dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb + cc) - dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) - dd ^ gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb / cc) + dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb * cc) + dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb - cc) + dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb + cc) + dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) + dd ^ gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb / cc) ^ dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb * cc) ^ dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb - cc) ^ dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb + cc) ^ dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) ^ dd ^ gg ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd) / gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd) / gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd) / gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd) / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd) / gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd) / gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd) / gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd) / gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd) / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd) / gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd) / gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd) / gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd) / gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd) / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd) / gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd) / gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd) / gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd) / gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd) / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd) / gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd) / gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd) / gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd) / gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd) / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd) / gg ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd) * gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd) * gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd) * gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd) * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd) * gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd) * gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd) * gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd) * gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd) * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd) * gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd) * gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd) * gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd) * gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd) * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd) * gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd) * gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd) * gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd) * gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd) * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd) * gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd) * gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd) * gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd) * gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd) * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd) * gg ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd) - gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd) - gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd) - gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd) - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd) - gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd) - gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd) - gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd) - gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd) - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd) - gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd) - gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd) - gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd) - gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd) - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd) - gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd) - gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd) - gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd) - gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd) - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd) - gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd) - gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd) - gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd) - gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd) - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd) - gg ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd) + gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd) + gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd) + gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd) + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd) + gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd) + gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd) + gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd) + gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd) + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd) + gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd) + gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd) + gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd) + gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd) + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd) + gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd) + gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd) + gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd) + gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd) + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd) + gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd) + gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd) + gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd) + gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd) + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd) + gg ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd) ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd) ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd) ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd) ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd) ^ gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd) ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd) ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd) ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd) ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd) ^ gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd) ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd) ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd) ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd) ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd) ^ gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd) ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd) ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd) ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd) ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd) ^ gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd) ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd) ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd) ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd) ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd) ^ gg ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd / gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd / gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd / gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd / gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd / gg) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd / gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd / gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd / gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd / gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd / gg) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd / gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd / gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd / gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd / gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd / gg) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd / gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd / gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd / gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd / gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd / gg) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd / gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd / gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd / gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd / gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd / gg) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd * gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd * gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd * gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd * gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd * gg) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd * gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd * gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd * gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd * gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd * gg) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd * gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd * gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd * gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd * gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd * gg) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd * gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd * gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd * gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd * gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd * gg) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd * gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd * gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd * gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd * gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd * gg) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd - gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd - gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd - gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd - gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd - gg) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd - gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd - gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd - gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd - gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd - gg) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd - gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd - gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd - gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd - gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd - gg) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd - gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd - gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd - gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd - gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd - gg) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd - gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd - gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd - gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd - gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd - gg) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd + gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd + gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd + gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd + gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd + gg) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd + gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd + gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd + gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd + gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd + gg) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd + gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd + gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd + gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd + gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd + gg) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd + gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd + gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd + gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd + gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd + gg) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd + gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd + gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd + gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd + gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd + gg) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd ^ gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd ^ gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd ^ gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd ^ gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd ^ gg) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd ^ gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd ^ gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd ^ gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd ^ gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd ^ gg) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd ^ gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd ^ gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd ^ gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd ^ gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd ^ gg) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd ^ gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd ^ gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd ^ gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd ^ gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd ^ gg) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd ^ gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd ^ gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd ^ gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd ^ gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd ^ gg) ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "CoolBrewJulia" seed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 eye = @eye frog = @frog hen = @hen maid = @maid op1 = @op1 op2 = @op2 op3 = @op3 start = @start group = @group exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 default: title = "Cool Brew" maxiter = 1000 periodicity = 0 magn = 0.393 center = (.3577,1.57) param bailout caption = "bailout" default = 5.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param start caption = "init z" default = 0.0 hint = "If you encounter a black Mset try setting this value higher. It could help." endparam param eye caption = "eye of newt" default = -1.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (-.5,0) endparam param bat caption = "bat wings" default = (0,0) endparam param maid caption = "maiden's tears" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param exp5 caption = "exponent 5" default = (1,0) endparam param op1 caption = "operator 1" enum = "/""*""-""+""^" default = 2 endparam param op2 caption = "operator 2" enum = "/""*""-""+""^" default = 2 endparam param op3 caption = "operator 3" enum = "/""*""-""+""^" default = 4 endparam param group caption = "grouping" default = 0 enum = "1""2""3""4" endparam func fn1 Caption = "function 1" default = conj () endfunc func fn2 Caption = "function 2" default = flip () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc } ********************************************************************************************* CoolBrewJulia { ; Toby Marshall, May 2002 ; Parameters can be incremented to change ; the shapes of the fractal elements. Bailout ; values are quite critical with this formula ; so experiment with them. The switch function ; carries all parameter and function values ; back to "Cool Brew". init: z = 2*pixel complex frog = @frog*(0.0,1.0) loop: aa = fn1(@seed^@exp5 + @maid) bb = fn2(real(fn3(z^@exp1) + @eye)) cc = fn4(imag (@fn5(z^@exp2) + frog)) dd = @fn6(@seed^@exp4 +@hen) gg = @fn7(z^@exp3 + @bat) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / cc / dd / gg ELSEIF (@op1 == 1) z = aa^(bb) * cc / dd / gg ELSEIF (@op1 == 2) z = aa^(bb) - cc / dd / gg ELSEIF (@op1 == 3) z = aa^(bb) + cc / dd / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc / dd / gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / cc * dd / gg ELSEIF (@op1 == 1) z = aa^(bb) * cc * dd / gg ELSEIF (@op1 == 2) z = aa^(bb) - cc * dd / gg ELSEIF (@op1 == 3) z = aa^(bb) + cc * dd / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc * dd / gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / cc - dd / gg ELSEIF (@op1 == 1) z = aa^(bb) * cc - dd / gg ELSEIF (@op1 == 2) z = aa^(bb) - cc - dd / gg ELSEIF (@op1 == 3) z = aa^(bb) + cc - dd / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc - dd / gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / cc + dd / gg ELSEIF (@op1 == 1) z = aa^(bb) * cc + dd / gg ELSEIF (@op1 == 2) z = aa^(bb) - cc + dd / gg ELSEIF (@op1 == 3) z = aa^(bb) + cc + dd / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc + dd / gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / cc ^ dd / gg ELSEIF (@op1 == 1) z = aa^(bb) * cc ^ dd / gg ELSEIF (@op1 == 2) z = aa^(bb) - cc ^ dd / gg ELSEIF (@op1 == 3) z = aa^(bb) + cc ^ dd / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc ^ dd / gg ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / cc / dd * gg ELSEIF (@op1 == 1) z = aa^(bb) * cc / dd * gg ELSEIF (@op1 == 2) z = aa^(bb) - cc / dd * gg ELSEIF (@op1 == 3) z = aa^(bb) + cc / dd * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc / dd * gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / cc * dd * gg ELSEIF (@op1 == 1) z = aa^(bb) * cc * dd * gg ELSEIF (@op1 == 2) z = aa^(bb) - cc * dd * gg ELSEIF (@op1 == 3) z = aa^(bb) + cc * dd * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc * dd * gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / cc - dd * gg ELSEIF (@op1 == 1) z = aa^(bb) * cc - dd * gg ELSEIF (@op1 == 2) z = aa^(bb) - cc - dd * gg ELSEIF (@op1 == 3) z = aa^(bb) + cc - dd * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc - dd * gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / cc + dd * gg ELSEIF (@op1 == 1) z = aa^(bb) * cc + dd * gg ELSEIF (@op1 == 2) z = aa^(bb) - cc + dd * gg ELSEIF (@op1 == 3) z = aa^(bb) + cc + dd * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc + dd * gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / cc ^ dd * gg ELSEIF (@op1 == 1) z = aa^(bb) * cc ^ dd * gg ELSEIF (@op1 == 2) z = aa^(bb) - cc ^ dd * gg ELSEIF (@op1 == 3) z = aa^(bb) + cc ^ dd * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc ^ dd * gg ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / cc / dd - gg ELSEIF (@op1 == 1) z = aa^(bb) * cc / dd - gg ELSEIF (@op1 == 2) z = aa^(bb) - cc / dd - gg ELSEIF (@op1 == 3) z = aa^(bb) + cc / dd - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc / dd - gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / cc * dd - gg ELSEIF (@op1 == 1) z = aa^(bb) * cc * dd - gg ELSEIF (@op1 == 2) z = aa^(bb) - cc * dd - gg ELSEIF (@op1 == 3) z = aa^(bb) + cc * dd - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc * dd - gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / cc - dd - gg ELSEIF (@op1 == 1) z = aa^(bb) * cc - dd - gg ELSEIF (@op1 == 2) z = aa^(bb) - cc - dd - gg ELSEIF (@op1 == 3) z = aa^(bb) + cc - dd - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc - dd - gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / cc + dd - gg ELSEIF (@op1 == 1) z = aa^(bb) * cc + dd - gg ELSEIF (@op1 == 2) z = aa^(bb) - cc + dd - gg ELSEIF (@op1 == 3) z = aa^(bb) + cc + dd - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc + dd - gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / cc ^ dd - gg ELSEIF (@op1 == 1) z = aa^(bb) * cc ^ dd - gg ELSEIF (@op1 == 2) z = aa^(bb) - cc ^ dd - gg ELSEIF (@op1 == 3) z = aa^(bb) + cc ^ dd - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc ^ dd - gg ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / cc / dd + gg ELSEIF (@op1 == 1) z = aa^(bb) * cc / dd + gg ELSEIF (@op1 == 2) z = aa^(bb) - cc / dd + gg ELSEIF (@op1 == 3) z = aa^(bb) + cc / dd + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc / dd + gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / cc * dd + gg ELSEIF (@op1 == 1) z = aa^(bb) * cc * dd + gg ELSEIF (@op1 == 2) z = aa^(bb) - cc * dd + gg ELSEIF (@op1 == 3) z = aa^(bb) + cc * dd + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc * dd + gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / cc - dd + gg ELSEIF (@op1 == 1) z = aa^(bb) * cc - dd + gg ELSEIF (@op1 == 2) z = aa^(bb) - cc - dd + gg ELSEIF (@op1 == 3) z = aa^(bb) + cc - dd + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc - dd + gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / cc + dd + gg ELSEIF (@op1 == 1) z = aa^(bb) * cc + dd + gg ELSEIF (@op1 == 2) z = aa^(bb) - cc + dd + gg ELSEIF (@op1 == 3) z = aa^(bb) + cc + dd + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc + dd + gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / cc ^ dd + gg ELSEIF (@op1 == 1) z = aa^(bb) * cc ^ dd + gg ELSEIF (@op1 == 2) z = aa^(bb) - cc ^ dd + gg ELSEIF (@op1 == 3) z = aa^(bb) + cc ^ dd + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc ^ dd + gg ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / cc / dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * cc / dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - cc / dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + cc / dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc / dd ^ gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / cc * dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * cc * dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - cc * dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + cc * dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc * dd ^ gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / cc - dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * cc - dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - cc - dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + cc - dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc - dd ^ gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / cc + dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * cc + dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - cc + dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + cc + dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc + dd ^ gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / cc ^ dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * cc ^ dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - cc ^ dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + cc ^ dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ cc ^ dd ^ gg ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb / cc) / dd / gg ELSEIF (@op1 == 1) z = aa^(bb * cc) / dd / gg ELSEIF (@op1 == 2) z = aa^(bb - cc) / dd / gg ELSEIF (@op1 == 3) z = aa^(bb + cc) / dd / gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) / dd / gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb / cc) * dd / gg ELSEIF (@op1 == 1) z = aa^(bb * cc) * dd / gg ELSEIF (@op1 == 2) z = aa^(bb - cc) * dd / gg ELSEIF (@op1 == 3) z = aa^(bb + cc) * dd / gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) * dd / gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb / cc) - dd / gg ELSEIF (@op1 == 1) z = aa^(bb * cc) - dd / gg ELSEIF (@op1 == 2) z = aa^(bb - cc) - dd / gg ELSEIF (@op1 == 3) z = aa^(bb + cc) - dd / gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) - dd / gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb / cc) + dd / gg ELSEIF (@op1 == 1) z = aa^(bb * cc) + dd / gg ELSEIF (@op1 == 2) z = aa^(bb - cc) + dd / gg ELSEIF (@op1 == 3) z = aa^(bb + cc) + dd / gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) + dd / gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb / cc) ^ dd / gg ELSEIF (@op1 == 1) z = aa^(bb * cc) ^ dd / gg ELSEIF (@op1 == 2) z = aa^(bb - cc) ^ dd / gg ELSEIF (@op1 == 3) z = aa^(bb + cc) ^ dd / gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) ^ dd / gg ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb / cc) / dd * gg ELSEIF (@op1 == 1) z = aa^(bb * cc) / dd * gg ELSEIF (@op1 == 2) z = aa^(bb - cc) / dd * gg ELSEIF (@op1 == 3) z = aa^(bb + cc) / dd * gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) / dd * gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb / cc) * dd * gg ELSEIF (@op1 == 1) z = aa^(bb * cc) * dd * gg ELSEIF (@op1 == 2) z = aa^(bb - cc) * dd * gg ELSEIF (@op1 == 3) z = aa^(bb + cc) * dd * gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) * dd * gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb / cc) - dd * gg ELSEIF (@op1 == 1) z = aa^(bb * cc) - dd * gg ELSEIF (@op1 == 2) z = aa^(bb - cc) - dd * gg ELSEIF (@op1 == 3) z = aa^(bb + cc) - dd * gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) - dd * gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb / cc) + dd * gg ELSEIF (@op1 == 1) z = aa^(bb * cc) + dd * gg ELSEIF (@op1 == 2) z = aa^(bb - cc) + dd * gg ELSEIF (@op1 == 3) z = aa^(bb + cc) + dd * gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) + dd * gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb / cc) ^ dd * gg ELSEIF (@op1 == 1) z = aa^(bb * cc) ^ dd * gg ELSEIF (@op1 == 2) z = aa^(bb - cc) ^ dd * gg ELSEIF (@op1 == 3) z = aa^(bb + cc) ^ dd * gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) ^ dd * gg ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb / cc) / dd - gg ELSEIF (@op1 == 1) z = aa^(bb * cc) / dd - gg ELSEIF (@op1 == 2) z = aa^(bb - cc) / dd - gg ELSEIF (@op1 == 3) z = aa^(bb + cc) / dd - gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) / dd - gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb / cc) * dd - gg ELSEIF (@op1 == 1) z = aa^(bb * cc) * dd - gg ELSEIF (@op1 == 2) z = aa^(bb - cc) * dd - gg ELSEIF (@op1 == 3) z = aa^(bb + cc) * dd - gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) * dd - gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb / cc) - dd - gg ELSEIF (@op1 == 1) z = aa^(bb * cc) - dd - gg ELSEIF (@op1 == 2) z = aa^(bb - cc) - dd - gg ELSEIF (@op1 == 3) z = aa^(bb + cc) - dd - gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) - dd - gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb / cc) + dd - gg ELSEIF (@op1 == 1) z = aa^(bb * cc) + dd - gg ELSEIF (@op1 == 2) z = aa^(bb - cc) + dd - gg ELSEIF (@op1 == 3) z = aa^(bb + cc) + dd - gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) + dd - gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb / cc) ^ dd - gg ELSEIF (@op1 == 1) z = aa^(bb * cc) ^ dd - gg ELSEIF (@op1 == 2) z = aa^(bb - cc) ^ dd - gg ELSEIF (@op1 == 3) z = aa^(bb + cc) ^ dd - gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) ^ dd - gg ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb / cc) / dd + gg ELSEIF (@op1 == 1) z = aa^(bb * cc) / dd + gg ELSEIF (@op1 == 2) z = aa^(bb - cc) / dd + gg ELSEIF (@op1 == 3) z = aa^(bb + cc) / dd + gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) / dd + gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb / cc) * dd + gg ELSEIF (@op1 == 1) z = aa^(bb * cc) * dd + gg ELSEIF (@op1 == 2) z = aa^(bb - cc) * dd + gg ELSEIF (@op1 == 3) z = aa^(bb + cc) * dd + gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) * dd + gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb / cc) - dd + gg ELSEIF (@op1 == 1) z = aa^(bb * cc) - dd + gg ELSEIF (@op1 == 2) z = aa^(bb - cc) - dd + gg ELSEIF (@op1 == 3) z = aa^(bb + cc) - dd + gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) - dd + gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb / cc) + dd + gg ELSEIF (@op1 == 1) z = aa^(bb * cc) + dd + gg ELSEIF (@op1 == 2) z = aa^(bb - cc) + dd + gg ELSEIF (@op1 == 3) z = aa^(bb + cc) + dd + gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) + dd + gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb / cc) ^ dd + gg ELSEIF (@op1 == 1) z = aa^(bb * cc) ^ dd + gg ELSEIF (@op1 == 2) z = aa^(bb - cc) ^ dd + gg ELSEIF (@op1 == 3) z = aa^(bb + cc) ^ dd + gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) ^ dd + gg ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb / cc) / dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb * cc) / dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb - cc) / dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb + cc) / dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) / dd ^ gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb / cc) * dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb * cc) * dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb - cc) * dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb + cc) * dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) * dd ^ gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb / cc) - dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb * cc) - dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb - cc) - dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb + cc) - dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) - dd ^ gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb / cc) + dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb * cc) + dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb - cc) + dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb + cc) + dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) + dd ^ gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb / cc) ^ dd ^ gg ELSEIF (@op1 == 1) z = aa^(bb * cc) ^ dd ^ gg ELSEIF (@op1 == 2) z = aa^(bb - cc) ^ dd ^ gg ELSEIF (@op1 == 3) z = aa^(bb + cc) ^ dd ^ gg ELSEIF (@op1 == 4) z = aa^(bb ^ cc) ^ dd ^ gg ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd) / gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd) / gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd) / gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd) / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd) / gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd) / gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd) / gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd) / gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd) / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd) / gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd) / gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd) / gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd) / gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd) / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd) / gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd) / gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd) / gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd) / gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd) / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd) / gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd) / gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd) / gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd) / gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd) / gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd) / gg ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd) * gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd) * gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd) * gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd) * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd) * gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd) * gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd) * gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd) * gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd) * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd) * gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd) * gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd) * gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd) * gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd) * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd) * gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd) * gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd) * gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd) * gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd) * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd) * gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd) * gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd) * gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd) * gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd) * gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd) * gg ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd) - gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd) - gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd) - gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd) - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd) - gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd) - gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd) - gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd) - gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd) - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd) - gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd) - gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd) - gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd) - gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd) - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd) - gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd) - gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd) - gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd) - gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd) - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd) - gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd) - gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd) - gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd) - gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd) - gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd) - gg ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd) + gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd) + gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd) + gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd) + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd) + gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd) + gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd) + gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd) + gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd) + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd) + gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd) + gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd) + gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd) + gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd) + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd) + gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd) + gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd) + gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd) + gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd) + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd) + gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd) + gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd) + gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd) + gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd) + gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd) + gg ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd) ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd) ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd) ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd) ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd) ^ gg ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd) ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd) ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd) ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd) ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd) ^ gg ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd) ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd) ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd) ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd) ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd) ^ gg ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd) ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd) ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd) ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd) ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd) ^ gg ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd) ^ gg ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd) ^ gg ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd) ^ gg ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd) ^ gg ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd) ^ gg ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd / gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd / gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd / gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd / gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd / gg) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd / gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd / gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd / gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd / gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd / gg) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd / gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd / gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd / gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd / gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd / gg) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd / gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd / gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd / gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd / gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd / gg) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd / gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd / gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd / gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd / gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd / gg) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd * gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd * gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd * gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd * gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd * gg) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd * gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd * gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd * gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd * gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd * gg) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd * gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd * gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd * gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd * gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd * gg) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd * gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd * gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd * gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd * gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd * gg) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd * gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd * gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd * gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd * gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd * gg) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd - gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd - gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd - gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd - gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd - gg) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd - gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd - gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd - gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd - gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd - gg) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd - gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd - gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd - gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd - gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd - gg) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd - gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd - gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd - gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd - gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd - gg) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd - gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd - gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd - gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd - gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd - gg) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd + gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd + gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd + gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd + gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd + gg) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd + gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd + gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd + gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd + gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd + gg) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd + gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd + gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd + gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd + gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd + gg) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd + gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd + gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd + gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd + gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd + gg) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd + gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd + gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd + gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd + gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd + gg) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(bb) / (cc / dd ^ gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc / dd ^ gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc / dd ^ gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc / dd ^ gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc / dd ^ gg) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(bb) / (cc * dd ^ gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc * dd ^ gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc * dd ^ gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc * dd ^ gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc * dd ^ gg) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(bb) / (cc - dd ^ gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc - dd ^ gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc - dd ^ gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc - dd ^ gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc - dd ^ gg) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(bb) / (cc + dd ^ gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc + dd ^ gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc + dd ^ gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc + dd ^ gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc + dd ^ gg) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(bb) / (cc ^ dd ^ gg) ELSEIF (@op1 == 1) z = aa^(bb) * (cc ^ dd ^ gg) ELSEIF (@op1 == 2) z = aa^(bb) - (cc ^ dd ^ gg) ELSEIF (@op1 == 3) z = aa^(bb) + (cc ^ dd ^ gg) ELSEIF (@op1 == 4) z = aa^(bb) ^ (cc ^ dd ^ gg) ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "CoolBrew" bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 eye = @eye frog = @frog hen = @hen maid = @maid op1 = @op1 op2 = @op2 op3 = @op3 start = @start group = @group exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 default: title = "Cool Brew Julia" maxiter = 1000 periodicity = 0 center = (-0.875, -0.9375) magn = .8 param seed default = (1.625,-0.286) endparam param bailout caption = "bailout" default = 5.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param eye caption = "eye of newt" default = -1.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (-.5,0) endparam param bat caption = "bat wings" default = (0,0) endparam param maid caption = "maiden's tears" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param exp5 caption = "exponent 5" default = (1,0) endparam param op1 caption = "operator 1" enum = "/""*""-""+""^" default = 2 endparam param op2 caption = "operator 2" enum = "/""*""-""+""^" default = 2 endparam param op3 caption = "operator 3" enum = "/""*""-""+""^" default = 4 endparam param group caption = "grouping" default = 0 enum = "1""2""3""4" endparam func fn1 Caption = "function 1" default = conj () endfunc func fn2 Caption = "function 2" default = flip () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc } ============================================================================== NewBrew { ; Toby Marshall May 2002 ;Yet another variation on "Strange Brew". init: z = @start complex frog = @frog*(0.0,1.0) loop: aa = fn1(z/#pixel) bb = fn1(z*#pixel) cc = fn1(z-#pixel) dd = fn1(z+#pixel) hh = fn1(z^#pixel) qq = (fn2(real(fn3(z^@exp1) + @eye))) ww = fn4(imag (@fn5(z^@exp2) + frog)) vv = @fn6(#pixel^@exp4 +@hen) ^ @fn7(z^@exp3 + @bat) IF (@group == 0); first IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/qq / ww + vv ELSEIF (@op1 == 1) z = aa/qq * ww + vv ELSEIF (@op1 == 2) z = aa/qq - ww + vv ELSEIF (@op1 == 3) z = aa/qq + ww + vv ELSEIF (@op1 == 4) z = aa/qq ^ ww + vv ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb/qq / ww + vv ELSEIF (@op1 == 1) z = bb/qq * ww + vv ELSEIF (@op1 == 2) z = bb/qq - ww + vv ELSEIF (@op1 == 3) z = bb/qq + ww + vv ELSEIF (@op1 == 4) z = bb/qq ^ ww + vv ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc/qq / ww + vv ELSEIF (@op1 == 1) z = cc/qq * ww + vv ELSEIF (@op1 == 2) z = cc/qq - ww + vv ELSEIF (@op1 == 3) z = cc/qq + ww + vv ELSEIF (@op1 == 4) z = cc/qq ^ ww + vv ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd/qq / ww + vv ELSEIF (@op1 == 1) z = dd/qq * ww + vv ELSEIF (@op1 == 2) z = dd/qq - ww + vv ELSEIF (@op1 == 3) z = dd/qq + ww + vv ELSEIF (@op1 == 4) z = dd/qq ^ ww + vv ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh/qq / ww + vv ELSEIF (@op1 == 1) z = hh/qq * ww + vv ELSEIF (@op1 == 2) z = hh/qq - ww + vv ELSEIF (@op1 == 3) z = hh/qq + ww + vv ELSEIF (@op1 == 4) z = hh/qq ^ ww + vv ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa*qq / ww + vv ELSEIF (@op1 == 1) z = aa*qq * ww + vv ELSEIF (@op1 == 2) z = aa*qq - ww + vv ELSEIF (@op1 == 3) z = aa*qq + ww + vv ELSEIF (@op1 == 4) z = aa*qq ^ ww + vv ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb*qq / ww + vv ELSEIF (@op1 == 1) z = bb*qq * ww + vv ELSEIF (@op1 == 2) z = bb*qq - ww + vv ELSEIF (@op1 == 3) z = bb*qq + ww + vv ELSEIF (@op1 == 4) z = bb*qq ^ ww + vv ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc*qq / ww + vv ELSEIF (@op1 == 1) z = cc*qq * ww + vv ELSEIF (@op1 == 2) z = cc*qq - ww + vv ELSEIF (@op1 == 3) z = cc*qq + ww + vv ELSEIF (@op1 == 4) z = cc*qq ^ ww + vv ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd*qq / ww + vv ELSEIF (@op1 == 1) z = dd*qq * ww + vv ELSEIF (@op1 == 2) z = dd*qq - ww + vv ELSEIF (@op1 == 3) z = dd*qq + ww + vv ELSEIF (@op1 == 4) z = dd*qq ^ ww + vv ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh*qq / ww + vv ELSEIF (@op1 == 1) z = hh*qq * ww + vv ELSEIF (@op1 == 2) z = hh*qq - ww + vv ELSEIF (@op1 == 3) z = hh*qq + ww + vv ELSEIF (@op1 == 4) z = hh*qq ^ ww + vv ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa-qq / ww + vv ELSEIF (@op1 == 1) z = aa-qq * ww + vv ELSEIF (@op1 == 2) z = aa-qq - ww + vv ELSEIF (@op1 == 3) z = aa-qq + ww + vv ELSEIF (@op1 == 4) z = aa-qq ^ ww + vv ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb-qq / ww + vv ELSEIF (@op1 == 1) z = bb-qq * ww + vv ELSEIF (@op1 == 2) z = bb-qq - ww + vv ELSEIF (@op1 == 3) z = bb-qq + ww + vv ELSEIF (@op1 == 4) z = bb-qq ^ ww + vv ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc-qq / ww + vv ELSEIF (@op1 == 1) z = cc-qq * ww + vv ELSEIF (@op1 == 2) z = cc-qq - ww + vv ELSEIF (@op1 == 3) z = cc-qq + ww + vv ELSEIF (@op1 == 4) z = cc-qq ^ ww + vv ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd-qq / ww + vv ELSEIF (@op1 == 1) z = dd-qq * ww + vv ELSEIF (@op1 == 2) z = dd-qq - ww + vv ELSEIF (@op1 == 3) z = dd-qq + ww + vv ELSEIF (@op1 == 4) z = dd-qq ^ ww + vv ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh-qq / ww + vv ELSEIF (@op1 == 1) z = hh-qq * ww + vv ELSEIF (@op1 == 2) z = hh-qq - ww + vv ELSEIF (@op1 == 3) z = hh-qq + ww + vv ELSEIF (@op1 == 4) z = hh-qq ^ ww + vv ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+qq / ww + vv ELSEIF (@op1 == 1) z = aa+qq * ww + vv ELSEIF (@op1 == 2) z = aa+qq - ww + vv ELSEIF (@op1 == 3) z = aa+qq + ww + vv ELSEIF (@op1 == 4) z = aa+qq ^ ww + vv ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb+qq / ww + vv ELSEIF (@op1 == 1) z = bb+qq * ww + vv ELSEIF (@op1 == 2) z = bb+qq - ww + vv ELSEIF (@op1 == 3) z = bb+qq + ww + vv ELSEIF (@op1 == 4) z = bb+qq ^ ww + vv ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc+qq / ww + vv ELSEIF (@op1 == 1) z = cc+qq * ww + vv ELSEIF (@op1 == 2) z = cc+qq - ww + vv ELSEIF (@op1 == 3) z = cc+qq + ww + vv ELSEIF (@op1 == 4) z = cc+qq ^ ww + vv ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd+qq / ww + vv ELSEIF (@op1 == 1) z = dd+qq * ww + vv ELSEIF (@op1 == 2) z = dd+qq - ww + vv ELSEIF (@op1 == 3) z = dd+qq + ww + vv ELSEIF (@op1 == 4) z = dd+qq ^ ww + vv ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh+qq / ww + vv ELSEIF (@op1 == 1) z = hh+qq * ww + vv ELSEIF (@op1 == 2) z = hh+qq - ww + vv ELSEIF (@op1 == 3) z = hh+qq + ww + vv ELSEIF (@op1 == 4) z = hh+qq ^ ww + vv ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa^qq / ww + vv ELSEIF (@op1 == 1) z = aa^qq * ww + vv ELSEIF (@op1 == 2) z = aa^qq - ww + vv ELSEIF (@op1 == 3) z = aa^qq + ww + vv ELSEIF (@op1 == 4) z = aa^qq ^ ww + vv ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb^qq / ww + vv ELSEIF (@op1 == 1) z = bb^qq * ww + vv ELSEIF (@op1 == 2) z = bb^qq - ww + vv ELSEIF (@op1 == 3) z = bb^qq + ww + vv ELSEIF (@op1 == 4) z = bb^qq ^ ww + vv ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc^qq / ww + vv ELSEIF (@op1 == 1) z = cc^qq * ww + vv ELSEIF (@op1 == 2) z = cc^qq - ww + vv ELSEIF (@op1 == 3) z = cc^qq + ww + vv ELSEIF (@op1 == 4) z = cc^qq ^ ww + vv ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd^qq / ww + vv ELSEIF (@op1 == 1) z = dd^qq * ww + vv ELSEIF (@op1 == 2) z = dd^qq - ww + vv ELSEIF (@op1 == 3) z = dd^qq + ww + vv ELSEIF (@op1 == 4) z = dd^qq ^ ww + vv ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh^qq / ww + vv ELSEIF (@op1 == 1) z = hh^qq * ww + vv ELSEIF (@op1 == 2) z = hh^qq - ww + vv ELSEIF (@op1 == 3) z = hh^qq + ww + vv ELSEIF (@op1 == 4) z = hh^qq ^ ww + vv ENDIF ENDIF ENDIF ELSEIF (@group == 1); second IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/qq / (ww + vv) ELSEIF (@op1 == 1) z = aa/qq * (ww + vv) ELSEIF (@op1 == 2) z = aa/qq - (ww + vv) ELSEIF (@op1 == 3) z = aa/qq + (ww + vv) ELSEIF (@op1 == 4) z = aa/qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb/qq / (ww + vv) ELSEIF (@op1 == 1) z = bb/qq * (ww + vv) ELSEIF (@op1 == 2) z = bb/qq - (ww + vv) ELSEIF (@op1 == 3) z = bb/qq + (ww + vv) ELSEIF (@op1 == 4) z = bb/qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc/qq / (ww + vv) ELSEIF (@op1 == 1) z = cc/qq * (ww + vv) ELSEIF (@op1 == 2) z = cc/qq - (ww + vv) ELSEIF (@op1 == 3) z = cc/qq + (ww + vv) ELSEIF (@op1 == 4) z = cc/qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd/qq / (ww + vv) ELSEIF (@op1 == 1) z = dd/qq * (ww + vv) ELSEIF (@op1 == 2) z = dd/qq - (ww + vv) ELSEIF (@op1 == 3) z = dd/qq + (ww + vv) ELSEIF (@op1 == 4) z = dd/qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh/qq / (ww + vv) ELSEIF (@op1 == 1) z = hh/qq * (ww + vv) ELSEIF (@op1 == 2) z = hh/qq - (ww + vv) ELSEIF (@op1 == 3) z = hh/qq + (ww + vv) ELSEIF (@op1 == 4) z = hh/qq ^ (ww + vv) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa*qq / (ww + vv) ELSEIF (@op1 == 1) z = aa*qq * (ww + vv) ELSEIF (@op1 == 2) z = aa*qq - (ww + vv) ELSEIF (@op1 == 3) z = aa*qq + (ww + vv) ELSEIF (@op1 == 4) z = aa*qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb*qq / (ww + vv) ELSEIF (@op1 == 1) z = bb*qq * (ww + vv) ELSEIF (@op1 == 2) z = bb*qq - (ww + vv) ELSEIF (@op1 == 3) z = bb*qq + (ww + vv) ELSEIF (@op1 == 4) z = bb*qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc*qq / (ww + vv) ELSEIF (@op1 == 1) z = cc*qq * (ww + vv) ELSEIF (@op1 == 2) z = cc*qq - (ww + vv) ELSEIF (@op1 == 3) z = cc*qq + (ww + vv) ELSEIF (@op1 == 4) z = cc*qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd*qq / (ww + vv) ELSEIF (@op1 == 1) z = dd*qq * (ww + vv) ELSEIF (@op1 == 2) z = dd*qq - (ww + vv) ELSEIF (@op1 == 3) z = dd*qq + (ww + vv) ELSEIF (@op1 == 4) z = dd*qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh*qq / (ww + vv) ELSEIF (@op1 == 1) z = hh*qq * (ww + vv) ELSEIF (@op1 == 2) z = hh*qq - (ww + vv) ELSEIF (@op1 == 3) z = hh*qq + (ww + vv) ELSEIF (@op1 == 4) z = hh*qq ^ (ww + vv) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa-qq / (ww + vv) ELSEIF (@op1 == 1) z = aa-qq * (ww + vv) ELSEIF (@op1 == 2) z = aa-qq - (ww + vv) ELSEIF (@op1 == 3) z = aa-qq + (ww + vv) ELSEIF (@op1 == 4) z = aa-qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb-qq / (ww + vv) ELSEIF (@op1 == 1) z = bb-qq * (ww + vv) ELSEIF (@op1 == 2) z = bb-qq - (ww + vv) ELSEIF (@op1 == 3) z = bb-qq + (ww + vv) ELSEIF (@op1 == 4) z = bb-qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc-qq / (ww + vv) ELSEIF (@op1 == 1) z = cc-qq * (ww + vv) ELSEIF (@op1 == 2) z = cc-qq - (ww + vv) ELSEIF (@op1 == 3) z = cc-qq + (ww + vv) ELSEIF (@op1 == 4) z = cc-qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd-qq / (ww + vv) ELSEIF (@op1 == 1) z = dd-qq * (ww + vv) ELSEIF (@op1 == 2) z = dd-qq - (ww + vv) ELSEIF (@op1 == 3) z = dd-qq + (ww + vv) ELSEIF (@op1 == 4) z = dd-qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh-qq / (ww + vv) ELSEIF (@op1 == 1) z = hh-qq * (ww + vv) ELSEIF (@op1 == 2) z = hh-qq - (ww + vv) ELSEIF (@op1 == 3) z = hh-qq + (ww + vv) ELSEIF (@op1 == 4) z = hh-qq ^ (ww + vv) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+qq / (ww + vv) ELSEIF (@op1 == 1) z = aa+qq * (ww + vv) ELSEIF (@op1 == 2) z = aa+qq - (ww + vv) ELSEIF (@op1 == 3) z = aa+qq + (ww + vv) ELSEIF (@op1 == 4) z = aa+qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb+qq / (ww + vv) ELSEIF (@op1 == 1) z = bb+qq * (ww + vv) ELSEIF (@op1 == 2) z = bb+qq - (ww + vv) ELSEIF (@op1 == 3) z = bb+qq + (ww + vv) ELSEIF (@op1 == 4) z = bb+qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc+qq / (ww + vv) ELSEIF (@op1 == 1) z = cc+qq * (ww + vv) ELSEIF (@op1 == 2) z = cc+qq - (ww + vv) ELSEIF (@op1 == 3) z = cc+qq + (ww + vv) ELSEIF (@op1 == 4) z = cc+qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd+qq / (ww + vv) ELSEIF (@op1 == 1) z = dd+qq * (ww + vv) ELSEIF (@op1 == 2) z = dd+qq - (ww + vv) ELSEIF (@op1 == 3) z = dd+qq + (ww + vv) ELSEIF (@op1 == 4) z = dd+qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh+qq / (ww + vv) ELSEIF (@op1 == 1) z = hh+qq * (ww + vv) ELSEIF (@op1 == 2) z = hh+qq - (ww + vv) ELSEIF (@op1 == 3) z = hh+qq + (ww + vv) ELSEIF (@op1 == 4) z = hh+qq ^ (ww + vv) ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa^qq / (ww + vv) ELSEIF (@op1 == 1) z = aa^qq * (ww + vv) ELSEIF (@op1 == 2) z = aa^qq - (ww + vv) ELSEIF (@op1 == 3) z = aa^qq + (ww + vv) ELSEIF (@op1 == 4) z = aa^qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb^qq / (ww + vv) ELSEIF (@op1 == 1) z = bb^qq * (ww + vv) ELSEIF (@op1 == 2) z = bb^qq - (ww + vv) ELSEIF (@op1 == 3) z = bb^qq + (ww + vv) ELSEIF (@op1 == 4) z = bb^qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc^qq / (ww + vv) ELSEIF (@op1 == 1) z = cc^qq * (ww + vv) ELSEIF (@op1 == 2) z = cc^qq - (ww + vv) ELSEIF (@op1 == 3) z = cc^qq + (ww + vv) ELSEIF (@op1 == 4) z = cc^qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd^qq / (ww + vv) ELSEIF (@op1 == 1) z = dd^qq * (ww + vv) ELSEIF (@op1 == 2) z = dd^qq - (ww + vv) ELSEIF (@op1 == 3) z = dd^qq + (ww + vv) ELSEIF (@op1 == 4) z = dd^qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh^qq / (ww + vv) ELSEIF (@op1 == 1) z = hh^qq * (ww + vv) ELSEIF (@op1 == 2) z = hh^qq - (ww + vv) ELSEIF (@op1 == 3) z = hh^qq + (ww + vv) ELSEIF (@op1 == 4) z = hh^qq ^ (ww + vv) ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "NewBrewJulia" seed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 eye = @eye frog = @frog hen = @hen op1 = @op1 op2 = @op2 op3 = @op3 group = @group default: title = "New Brew" maxiter = 100 periodicity = 0 center = (.65, .0125) magn = .6 param bailout default = 7.0 endparam param start caption = "init z" default = 2.0 endparam param eye caption = "eye of newt" default = -1.0 endparam param frog caption = "frog's breath" default = 1.0 endparam param hen caption = "henbane" default = (-.5,0) endparam param bat caption = "wing of bat" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param op1 caption = "operator 1" enum = "/""*""-""+""^" default = 1 endparam param op2 caption = "operator 2" enum = "/""*""-""+""^" default = 2 endparam param op3 caption = "operator 3" enum = "/""*""-""+""^" default = 2 endparam param group caption = "grouping" enum = "first""second" default = 0 endparam func fn1 Caption = "function 1" default = ident () endfunc func fn2 Caption = "function 2" default = ident () endfunc func fn3 Caption = "function 3" default = log () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc } NewBrewJulia { ;Toby Marshall May 2002 init: z = #pixel complex frog = @frog* (0.0,1.0) loop: aa = fn1(z/@seed) bb = fn1(z*@seed) cc = fn1(z-@seed) dd = fn1(z+@seed) hh = fn1(z^@seed) qq = (fn2(real(fn3(z^@exp1) + @eye))) ww = fn4(imag (@fn5(z^@exp2) + frog)) vv = @fn6(@seed^@exp4 +@hen) ^ @fn7(z^@exp3 + @bat) IF (@group == 0); first IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/qq / ww + vv ELSEIF (@op1 == 1) z = aa/qq * ww + vv ELSEIF (@op1 == 2) z = aa/qq - ww + vv ELSEIF (@op1 == 3) z = aa/qq + ww + vv ELSEIF (@op1 == 4) z = aa/qq ^ ww + vv ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb/qq / ww + vv ELSEIF (@op1 == 1) z = bb/qq * ww + vv ELSEIF (@op1 == 2) z = bb/qq - ww + vv ELSEIF (@op1 == 3) z = bb/qq + ww + vv ELSEIF (@op1 == 4) z = bb/qq ^ ww + vv ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc/qq / ww + vv ELSEIF (@op1 == 1) z = cc/qq * ww + vv ELSEIF (@op1 == 2) z = cc/qq - ww + vv ELSEIF (@op1 == 3) z = cc/qq + ww + vv ELSEIF (@op1 == 4) z = cc/qq ^ ww + vv ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd/qq / ww + vv ELSEIF (@op1 == 1) z = dd/qq * ww + vv ELSEIF (@op1 == 2) z = dd/qq - ww + vv ELSEIF (@op1 == 3) z = dd/qq + ww + vv ELSEIF (@op1 == 4) z = dd/qq ^ ww + vv ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh/qq / ww + vv ELSEIF (@op1 == 1) z = hh/qq * ww + vv ELSEIF (@op1 == 2) z = hh/qq - ww + vv ELSEIF (@op1 == 3) z = hh/qq + ww + vv ELSEIF (@op1 == 4) z = hh/qq ^ ww + vv ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa*qq / ww + vv ELSEIF (@op1 == 1) z = aa*qq * ww + vv ELSEIF (@op1 == 2) z = aa*qq - ww + vv ELSEIF (@op1 == 3) z = aa*qq + ww + vv ELSEIF (@op1 == 4) z = aa*qq ^ ww + vv ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb*qq / ww + vv ELSEIF (@op1 == 1) z = bb*qq * ww + vv ELSEIF (@op1 == 2) z = bb*qq - ww + vv ELSEIF (@op1 == 3) z = bb*qq + ww + vv ELSEIF (@op1 == 4) z = bb*qq ^ ww + vv ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc*qq / ww + vv ELSEIF (@op1 == 1) z = cc*qq * ww + vv ELSEIF (@op1 == 2) z = cc*qq - ww + vv ELSEIF (@op1 == 3) z = cc*qq + ww + vv ELSEIF (@op1 == 4) z = cc*qq ^ ww + vv ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd*qq / ww + vv ELSEIF (@op1 == 1) z = dd*qq * ww + vv ELSEIF (@op1 == 2) z = dd*qq - ww + vv ELSEIF (@op1 == 3) z = dd*qq + ww + vv ELSEIF (@op1 == 4) z = dd*qq ^ ww + vv ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh*qq / ww + vv ELSEIF (@op1 == 1) z = hh*qq * ww + vv ELSEIF (@op1 == 2) z = hh*qq - ww + vv ELSEIF (@op1 == 3) z = hh*qq + ww + vv ELSEIF (@op1 == 4) z = hh*qq ^ ww + vv ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa-qq / ww + vv ELSEIF (@op1 == 1) z = aa-qq * ww + vv ELSEIF (@op1 == 2) z = aa-qq - ww + vv ELSEIF (@op1 == 3) z = aa-qq + ww + vv ELSEIF (@op1 == 4) z = aa-qq ^ ww + vv ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb-qq / ww + vv ELSEIF (@op1 == 1) z = bb-qq * ww + vv ELSEIF (@op1 == 2) z = bb-qq - ww + vv ELSEIF (@op1 == 3) z = bb-qq + ww + vv ELSEIF (@op1 == 4) z = bb-qq ^ ww + vv ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc-qq / ww + vv ELSEIF (@op1 == 1) z = cc-qq * ww + vv ELSEIF (@op1 == 2) z = cc-qq - ww + vv ELSEIF (@op1 == 3) z = cc-qq + ww + vv ELSEIF (@op1 == 4) z = cc-qq ^ ww + vv ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd-qq / ww + vv ELSEIF (@op1 == 1) z = dd-qq * ww + vv ELSEIF (@op1 == 2) z = dd-qq - ww + vv ELSEIF (@op1 == 3) z = dd-qq + ww + vv ELSEIF (@op1 == 4) z = dd-qq ^ ww + vv ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh-qq / ww + vv ELSEIF (@op1 == 1) z = hh-qq * ww + vv ELSEIF (@op1 == 2) z = hh-qq - ww + vv ELSEIF (@op1 == 3) z = hh-qq + ww + vv ELSEIF (@op1 == 4) z = hh-qq ^ ww + vv ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+qq / ww + vv ELSEIF (@op1 == 1) z = aa+qq * ww + vv ELSEIF (@op1 == 2) z = aa+qq - ww + vv ELSEIF (@op1 == 3) z = aa+qq + ww + vv ELSEIF (@op1 == 4) z = aa+qq ^ ww + vv ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb+qq / ww + vv ELSEIF (@op1 == 1) z = bb+qq * ww + vv ELSEIF (@op1 == 2) z = bb+qq - ww + vv ELSEIF (@op1 == 3) z = bb+qq + ww + vv ELSEIF (@op1 == 4) z = bb+qq ^ ww + vv ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc+qq / ww + vv ELSEIF (@op1 == 1) z = cc+qq * ww + vv ELSEIF (@op1 == 2) z = cc+qq - ww + vv ELSEIF (@op1 == 3) z = cc+qq + ww + vv ELSEIF (@op1 == 4) z = cc+qq ^ ww + vv ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd+qq / ww + vv ELSEIF (@op1 == 1) z = dd+qq * ww + vv ELSEIF (@op1 == 2) z = dd+qq - ww + vv ELSEIF (@op1 == 3) z = dd+qq + ww + vv ELSEIF (@op1 == 4) z = dd+qq ^ ww + vv ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh+qq / ww + vv ELSEIF (@op1 == 1) z = hh+qq * ww + vv ELSEIF (@op1 == 2) z = hh+qq - ww + vv ELSEIF (@op1 == 3) z = hh+qq + ww + vv ELSEIF (@op1 == 4) z = hh+qq ^ ww + vv ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa^qq / ww + vv ELSEIF (@op1 == 1) z = aa^qq * ww + vv ELSEIF (@op1 == 2) z = aa^qq - ww + vv ELSEIF (@op1 == 3) z = aa^qq + ww + vv ELSEIF (@op1 == 4) z = aa^qq ^ ww + vv ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb^qq / ww + vv ELSEIF (@op1 == 1) z = bb^qq * ww + vv ELSEIF (@op1 == 2) z = bb^qq - ww + vv ELSEIF (@op1 == 3) z = bb^qq + ww + vv ELSEIF (@op1 == 4) z = bb^qq ^ ww + vv ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc^qq / ww + vv ELSEIF (@op1 == 1) z = cc^qq * ww + vv ELSEIF (@op1 == 2) z = cc^qq - ww + vv ELSEIF (@op1 == 3) z = cc^qq + ww + vv ELSEIF (@op1 == 4) z = cc^qq ^ ww + vv ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd^qq / ww + vv ELSEIF (@op1 == 1) z = dd^qq * ww + vv ELSEIF (@op1 == 2) z = dd^qq - ww + vv ELSEIF (@op1 == 3) z = dd^qq + ww + vv ELSEIF (@op1 == 4) z = dd^qq ^ ww + vv ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh^qq / ww + vv ELSEIF (@op1 == 1) z = hh^qq * ww + vv ELSEIF (@op1 == 2) z = hh^qq - ww + vv ELSEIF (@op1 == 3) z = hh^qq + ww + vv ELSEIF (@op1 == 4) z = hh^qq ^ ww + vv ENDIF ENDIF ENDIF ELSEIF (@group == 1); second IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/qq / (ww + vv) ELSEIF (@op1 == 1) z = aa/qq * (ww + vv) ELSEIF (@op1 == 2) z = aa/qq - (ww + vv) ELSEIF (@op1 == 3) z = aa/qq + (ww + vv) ELSEIF (@op1 == 4) z = aa/qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb/qq / (ww + vv) ELSEIF (@op1 == 1) z = bb/qq * (ww + vv) ELSEIF (@op1 == 2) z = bb/qq - (ww + vv) ELSEIF (@op1 == 3) z = bb/qq + (ww + vv) ELSEIF (@op1 == 4) z = bb/qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc/qq / (ww + vv) ELSEIF (@op1 == 1) z = cc/qq * (ww + vv) ELSEIF (@op1 == 2) z = cc/qq - (ww + vv) ELSEIF (@op1 == 3) z = cc/qq + (ww + vv) ELSEIF (@op1 == 4) z = cc/qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd/qq / (ww + vv) ELSEIF (@op1 == 1) z = dd/qq * (ww + vv) ELSEIF (@op1 == 2) z = dd/qq - (ww + vv) ELSEIF (@op1 == 3) z = dd/qq + (ww + vv) ELSEIF (@op1 == 4) z = dd/qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh/qq / (ww + vv) ELSEIF (@op1 == 1) z = hh/qq * (ww + vv) ELSEIF (@op1 == 2) z = hh/qq - (ww + vv) ELSEIF (@op1 == 3) z = hh/qq + (ww + vv) ELSEIF (@op1 == 4) z = hh/qq ^ (ww + vv) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa*qq / (ww + vv) ELSEIF (@op1 == 1) z = aa*qq * (ww + vv) ELSEIF (@op1 == 2) z = aa*qq - (ww + vv) ELSEIF (@op1 == 3) z = aa*qq + (ww + vv) ELSEIF (@op1 == 4) z = aa*qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb*qq / (ww + vv) ELSEIF (@op1 == 1) z = bb*qq * (ww + vv) ELSEIF (@op1 == 2) z = bb*qq - (ww + vv) ELSEIF (@op1 == 3) z = bb*qq + (ww + vv) ELSEIF (@op1 == 4) z = bb*qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc*qq / (ww + vv) ELSEIF (@op1 == 1) z = cc*qq * (ww + vv) ELSEIF (@op1 == 2) z = cc*qq - (ww + vv) ELSEIF (@op1 == 3) z = cc*qq + (ww + vv) ELSEIF (@op1 == 4) z = cc*qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd*qq / (ww + vv) ELSEIF (@op1 == 1) z = dd*qq * (ww + vv) ELSEIF (@op1 == 2) z = dd*qq - (ww + vv) ELSEIF (@op1 == 3) z = dd*qq + (ww + vv) ELSEIF (@op1 == 4) z = dd*qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh*qq / (ww + vv) ELSEIF (@op1 == 1) z = hh*qq * (ww + vv) ELSEIF (@op1 == 2) z = hh*qq - (ww + vv) ELSEIF (@op1 == 3) z = hh*qq + (ww + vv) ELSEIF (@op1 == 4) z = hh*qq ^ (ww + vv) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa-qq / (ww + vv) ELSEIF (@op1 == 1) z = aa-qq * (ww + vv) ELSEIF (@op1 == 2) z = aa-qq - (ww + vv) ELSEIF (@op1 == 3) z = aa-qq + (ww + vv) ELSEIF (@op1 == 4) z = aa-qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb-qq / (ww + vv) ELSEIF (@op1 == 1) z = bb-qq * (ww + vv) ELSEIF (@op1 == 2) z = bb-qq - (ww + vv) ELSEIF (@op1 == 3) z = bb-qq + (ww + vv) ELSEIF (@op1 == 4) z = bb-qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc-qq / (ww + vv) ELSEIF (@op1 == 1) z = cc-qq * (ww + vv) ELSEIF (@op1 == 2) z = cc-qq - (ww + vv) ELSEIF (@op1 == 3) z = cc-qq + (ww + vv) ELSEIF (@op1 == 4) z = cc-qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd-qq / (ww + vv) ELSEIF (@op1 == 1) z = dd-qq * (ww + vv) ELSEIF (@op1 == 2) z = dd-qq - (ww + vv) ELSEIF (@op1 == 3) z = dd-qq + (ww + vv) ELSEIF (@op1 == 4) z = dd-qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh-qq / (ww + vv) ELSEIF (@op1 == 1) z = hh-qq * (ww + vv) ELSEIF (@op1 == 2) z = hh-qq - (ww + vv) ELSEIF (@op1 == 3) z = hh-qq + (ww + vv) ELSEIF (@op1 == 4) z = hh-qq ^ (ww + vv) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+qq / (ww + vv) ELSEIF (@op1 == 1) z = aa+qq * (ww + vv) ELSEIF (@op1 == 2) z = aa+qq - (ww + vv) ELSEIF (@op1 == 3) z = aa+qq + (ww + vv) ELSEIF (@op1 == 4) z = aa+qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb+qq / (ww + vv) ELSEIF (@op1 == 1) z = bb+qq * (ww + vv) ELSEIF (@op1 == 2) z = bb+qq - (ww + vv) ELSEIF (@op1 == 3) z = bb+qq + (ww + vv) ELSEIF (@op1 == 4) z = bb+qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc+qq / (ww + vv) ELSEIF (@op1 == 1) z = cc+qq * (ww + vv) ELSEIF (@op1 == 2) z = cc+qq - (ww + vv) ELSEIF (@op1 == 3) z = cc+qq + (ww + vv) ELSEIF (@op1 == 4) z = cc+qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd+qq / (ww + vv) ELSEIF (@op1 == 1) z = dd+qq * (ww + vv) ELSEIF (@op1 == 2) z = dd+qq - (ww + vv) ELSEIF (@op1 == 3) z = dd+qq + (ww + vv) ELSEIF (@op1 == 4) z = dd+qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh+qq / (ww + vv) ELSEIF (@op1 == 1) z = hh+qq * (ww + vv) ELSEIF (@op1 == 2) z = hh+qq - (ww + vv) ELSEIF (@op1 == 3) z = hh+qq + (ww + vv) ELSEIF (@op1 == 4) z = hh+qq ^ (ww + vv) ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa^qq / (ww + vv) ELSEIF (@op1 == 1) z = aa^qq * (ww + vv) ELSEIF (@op1 == 2) z = aa^qq - (ww + vv) ELSEIF (@op1 == 3) z = aa^qq + (ww + vv) ELSEIF (@op1 == 4) z = aa^qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = bb^qq / (ww + vv) ELSEIF (@op1 == 1) z = bb^qq * (ww + vv) ELSEIF (@op1 == 2) z = bb^qq - (ww + vv) ELSEIF (@op1 == 3) z = bb^qq + (ww + vv) ELSEIF (@op1 == 4) z = bb^qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = cc^qq / (ww + vv) ELSEIF (@op1 == 1) z = cc^qq * (ww + vv) ELSEIF (@op1 == 2) z = cc^qq - (ww + vv) ELSEIF (@op1 == 3) z = cc^qq + (ww + vv) ELSEIF (@op1 == 4) z = cc^qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = dd^qq / (ww + vv) ELSEIF (@op1 == 1) z = dd^qq * (ww + vv) ELSEIF (@op1 == 2) z = dd^qq - (ww + vv) ELSEIF (@op1 == 3) z = dd^qq + (ww + vv) ELSEIF (@op1 == 4) z = dd^qq ^ (ww + vv) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = hh^qq / (ww + vv) ELSEIF (@op1 == 1) z = hh^qq * (ww + vv) ELSEIF (@op1 == 2) z = hh^qq - (ww + vv) ELSEIF (@op1 == 3) z = hh^qq + (ww + vv) ELSEIF (@op1 == 4) z = hh^qq ^ (ww + vv) ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "NewBrew" bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 eye = @eye frog = @frog hen = @hen op1 = @op1 op2 = @op2 op3 = @op3 group = @group default: title = "New Brew Julia" maxiter = 500 periodicity = 0 center = (2.54, -0.3) magn = .7 param bailout default = 7.0 endparam param seed caption = "seed" default = (1.4625, -0.7125) endparam param eye caption = "eye of newt" default = -1.0 endparam param frog caption = "frog's breath" default = 1.0 endparam param hen caption = "henbane" default = (-.5,0) endparam param bat caption = "wing of bat" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param op1 caption = "operator 1" enum = "/""*""-""+""^" default = 1 endparam param op2 caption = "operator 2" enum = "/""*""-""+""^" default = 2 endparam param op3 caption = "operator 3" enum = "/""*""-""+""^" default = 2 endparam param group caption = "grouping" enum = "first""second" default = 0 endparam func fn1 Caption = "function 1" default = ident () endfunc func fn2 Caption = "function 2" default = ident () endfunc func fn3 Caption = "function 3" default = log () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc } ********************************************************************* Brew102 { ; Toby Marshall, Jun. 2002 ; Nov. 2003--added some params and cleaned up. ; Thanks to Frederik Slijkerman for permission to ; use his bailout tests. ; ; Use with the Julia switch. All functions ; and parameters can be varied to explore ; different Julia sets. Functions 1-6 ; especially can be varied to change the ; nature of the spirals found with the switch. ; Some parameter combinations give black M sets, ; but they too sometimes yield interesting ; results with the switch. init: z = @start complex frog = @frog*(0.0,1.0) loop: IF @invert == true z = 1/z ELSE z = z ENDIF aa = fn1(#pixel^@exp5 + @maid) qq = fn2(real(fn3(z^@exp1)+ @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(#pixel^@exp4 +@hen) yy = @fn7(z^@exp3 + @bat) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / vv / ww / yy ELSEIF (@op1 == 1) z = aa^(qq) * vv / ww / yy ELSEIF (@op1 == 2) z = aa^(qq) - vv / ww / yy ELSEIF (@op1 == 3) z = aa^(qq) + vv / ww / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv / ww / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / vv * ww / yy ELSEIF (@op1 == 1) z = aa^(qq) * vv * ww / yy ELSEIF (@op1 == 2) z = aa^(qq) - vv * ww / yy ELSEIF (@op1 == 3) z = aa^(qq) + vv * ww / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv * ww / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / vv - ww / yy ELSEIF (@op1 == 1) z = aa^(qq) * vv - ww / yy ELSEIF (@op1 == 2) z = aa^(qq) - vv - ww / yy ELSEIF (@op1 == 3) z = aa^(qq) + vv - ww / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv - ww / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / vv + ww / yy ELSEIF (@op1 == 1) z = aa^(qq) * vv + ww / yy ELSEIF (@op1 == 2) z = aa^(qq) - vv + ww / yy ELSEIF (@op1 == 3) z = aa^(qq) + vv + ww / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv + ww / yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / vv ^ ww / yy ELSEIF (@op1 == 1) z = aa^(qq) * vv ^ ww / yy ELSEIF (@op1 == 2) z = aa^(qq) - vv ^ ww / yy ELSEIF (@op1 == 3) z = aa^(qq) + vv ^ ww / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv ^ ww / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / vv / ww * yy ELSEIF (@op1 == 1) z = aa^(qq) * vv / ww * yy ELSEIF (@op1 == 2) z = aa^(qq) - vv / ww * yy ELSEIF (@op1 == 3) z = aa^(qq) + vv / ww * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv / ww * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / vv * ww * yy ELSEIF (@op1 == 1) z = aa^(qq) * vv * ww * yy ELSEIF (@op1 == 2) z = aa^(qq) - vv * ww * yy ELSEIF (@op1 == 3) z = aa^(qq) + vv * ww * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv * ww * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / vv - ww * yy ELSEIF (@op1 == 1) z = aa^(qq) * vv - ww * yy ELSEIF (@op1 == 2) z = aa^(qq) - vv - ww * yy ELSEIF (@op1 == 3) z = aa^(qq) + vv - ww * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv - ww * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / vv + ww * yy ELSEIF (@op1 == 1) z = aa^(qq) * vv + ww * yy ELSEIF (@op1 == 2) z = aa^(qq) - vv + ww * yy ELSEIF (@op1 == 3) z = aa^(qq) + vv + ww * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv + ww * yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / vv ^ ww * yy ELSEIF (@op1 == 1) z = aa^(qq) * vv ^ ww * yy ELSEIF (@op1 == 2) z = aa^(qq) - vv ^ ww * yy ELSEIF (@op1 == 3) z = aa^(qq) + vv ^ ww * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv ^ ww * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / vv / ww - yy ELSEIF (@op1 == 1) z = aa^(qq) * vv / ww - yy ELSEIF (@op1 == 2) z = aa^(qq) - vv / ww - yy ELSEIF (@op1 == 3) z = aa^(qq) + vv / ww - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv / ww - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / vv * ww - yy ELSEIF (@op1 == 1) z = aa^(qq) * vv * ww - yy ELSEIF (@op1 == 2) z = aa^(qq) - vv * ww - yy ELSEIF (@op1 == 3) z = aa^(qq) + vv * ww - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv * ww - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / vv - ww - yy ELSEIF (@op1 == 1) z = aa^(qq) * vv - ww - yy ELSEIF (@op1 == 2) z = aa^(qq) - vv - ww - yy ELSEIF (@op1 == 3) z = aa^(qq) + vv - ww - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv - ww - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / vv + ww - yy ELSEIF (@op1 == 1) z = aa^(qq) * vv + ww - yy ELSEIF (@op1 == 2) z = aa^(qq) - vv + ww - yy ELSEIF (@op1 == 3) z = aa^(qq) + vv + ww - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv + ww - yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / vv ^ ww - yy ELSEIF (@op1 == 1) z = aa^(qq) * vv ^ ww - yy ELSEIF (@op1 == 2) z = aa^(qq) - vv ^ ww - yy ELSEIF (@op1 == 3) z = aa^(qq) + vv ^ ww - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv ^ ww - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / vv / ww + yy ELSEIF (@op1 == 1) z = aa^(qq) * vv / ww + yy ELSEIF (@op1 == 2) z = aa^(qq) - vv / ww + yy ELSEIF (@op1 == 3) z = aa^(qq) + vv / ww + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv / ww + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / vv * ww + yy ELSEIF (@op1 == 1) z = aa^(qq) * vv * ww + yy ELSEIF (@op1 == 2) z = aa^(qq) - vv * ww + yy ELSEIF (@op1 == 3) z = aa^(qq) + vv * ww + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv * ww + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / vv - ww + yy ELSEIF (@op1 == 1) z = aa^(qq) * vv - ww + yy ELSEIF (@op1 == 2) z = aa^(qq) - vv - ww + yy ELSEIF (@op1 == 3) z = aa^(qq) + vv - ww + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv - ww + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / vv + ww + yy ELSEIF (@op1 == 1) z = aa^(qq) * vv + ww + yy ELSEIF (@op1 == 2) z = aa^(qq) - vv + ww + yy ELSEIF (@op1 == 3) z = aa^(qq) + vv + ww + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv + ww + yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / vv ^ ww + yy ELSEIF (@op1 == 1) z = aa^(qq) * vv ^ ww + yy ELSEIF (@op1 == 2) z = aa^(qq) - vv ^ ww + yy ELSEIF (@op1 == 3) z = aa^(qq) + vv ^ ww + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv ^ ww + yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / vv / ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * vv / ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - vv / ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + vv / ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv / ww ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / vv * ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * vv * ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - vv * ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + vv * ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv * ww ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / vv - ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * vv - ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - vv - ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + vv - ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv - ww ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / vv + ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * vv + ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - vv + ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + vv + ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv + ww ^ yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / vv ^ ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * vv ^ ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - vv ^ ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + vv ^ ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv ^ ww ^ yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq / vv) / ww / yy ELSEIF (@op1 == 1) z = aa^(qq * vv) / ww / yy ELSEIF (@op1 == 2) z = aa^(qq - vv) / ww / yy ELSEIF (@op1 == 3) z = aa^(qq + vv) / ww / yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) / ww / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq / vv) * ww / yy ELSEIF (@op1 == 1) z = aa^(qq * vv) * ww / yy ELSEIF (@op1 == 2) z = aa^(qq - vv) * ww / yy ELSEIF (@op1 == 3) z = aa^(qq + vv) * ww / yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) * ww / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq / vv) - ww / yy ELSEIF (@op1 == 1) z = aa^(qq * vv) - ww / yy ELSEIF (@op1 == 2) z = aa^(qq - vv) - ww / yy ELSEIF (@op1 == 3) z = aa^(qq + vv) - ww / yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) - ww / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq / vv) + ww / yy ELSEIF (@op1 == 1) z = aa^(qq * vv) + ww / yy ELSEIF (@op1 == 2) z = aa^(qq - vv) + ww / yy ELSEIF (@op1 == 3) z = aa^(qq + vv) + ww / yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) + ww / yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq / vv) ^ ww / yy ELSEIF (@op1 == 1) z = aa^(qq * vv) ^ ww / yy ELSEIF (@op1 == 2) z = aa^(qq - vv) ^ ww / yy ELSEIF (@op1 == 3) z = aa^(qq + vv) ^ ww / yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) ^ ww / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq / vv) / ww * yy ELSEIF (@op1 == 1) z = aa^(qq * vv) / ww * yy ELSEIF (@op1 == 2) z = aa^(qq - vv) / ww * yy ELSEIF (@op1 == 3) z = aa^(qq + vv) / ww * yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) / ww * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq / vv) * ww * yy ELSEIF (@op1 == 1) z = aa^(qq * vv) * ww * yy ELSEIF (@op1 == 2) z = aa^(qq - vv) * ww * yy ELSEIF (@op1 == 3) z = aa^(qq + vv) * ww * yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) * ww * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq / vv) - ww * yy ELSEIF (@op1 == 1) z = aa^(qq * vv) - ww * yy ELSEIF (@op1 == 2) z = aa^(qq - vv) - ww * yy ELSEIF (@op1 == 3) z = aa^(qq + vv) - ww * yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) - ww * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq / vv) + ww * yy ELSEIF (@op1 == 1) z = aa^(qq * vv) + ww * yy ELSEIF (@op1 == 2) z = aa^(qq - vv) + ww * yy ELSEIF (@op1 == 3) z = aa^(qq + vv) + ww * yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) + ww * yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq / vv) ^ ww * yy ELSEIF (@op1 == 1) z = aa^(qq * vv) ^ ww * yy ELSEIF (@op1 == 2) z = aa^(qq - vv) ^ ww * yy ELSEIF (@op1 == 3) z = aa^(qq + vv) ^ ww * yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) ^ ww * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq / vv) / ww - yy ELSEIF (@op1 == 1) z = aa^(qq * vv) / ww - yy ELSEIF (@op1 == 2) z = aa^(qq - vv) / ww - yy ELSEIF (@op1 == 3) z = aa^(qq + vv) / ww - yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) / ww - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq / vv) * ww - yy ELSEIF (@op1 == 1) z = aa^(qq * vv) * ww - yy ELSEIF (@op1 == 2) z = aa^(qq - vv) * ww - yy ELSEIF (@op1 == 3) z = aa^(qq + vv) * ww - yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) * ww - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq / vv) - ww - yy ELSEIF (@op1 == 1) z = aa^(qq * vv) - ww - yy ELSEIF (@op1 == 2) z = aa^(qq - vv) - ww - yy ELSEIF (@op1 == 3) z = aa^(qq + vv) - ww - yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) - ww - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq / vv) + ww - yy ELSEIF (@op1 == 1) z = aa^(qq * vv) + ww - yy ELSEIF (@op1 == 2) z = aa^(qq - vv) + ww - yy ELSEIF (@op1 == 3) z = aa^(qq + vv) + ww - yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) + ww - yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq / vv) ^ ww - yy ELSEIF (@op1 == 1) z = aa^(qq * vv) ^ ww - yy ELSEIF (@op1 == 2) z = aa^(qq - vv) ^ ww - yy ELSEIF (@op1 == 3) z = aa^(qq + vv) ^ ww - yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) ^ ww - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq / vv) / ww + yy ELSEIF (@op1 == 1) z = aa^(qq * vv) / ww + yy ELSEIF (@op1 == 2) z = aa^(qq - vv) / ww + yy ELSEIF (@op1 == 3) z = aa^(qq + vv) / ww + yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) / ww + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq / vv) * ww + yy ELSEIF (@op1 == 1) z = aa^(qq * vv) * ww + yy ELSEIF (@op1 == 2) z = aa^(qq - vv) * ww + yy ELSEIF (@op1 == 3) z = aa^(qq + vv) * ww + yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) * ww + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq / vv) - ww + yy ELSEIF (@op1 == 1) z = aa^(qq * vv) - ww + yy ELSEIF (@op1 == 2) z = aa^(qq - vv) - ww + yy ELSEIF (@op1 == 3) z = aa^(qq + vv) - ww + yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) - ww + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq / vv) + ww + yy ELSEIF (@op1 == 1) z = aa^(qq * vv) + ww + yy ELSEIF (@op1 == 2) z = aa^(qq - vv) + ww + yy ELSEIF (@op1 == 3) z = aa^(qq + vv) + ww + yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) + ww + yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq / vv) ^ ww + yy ELSEIF (@op1 == 1) z = aa^(qq * vv) ^ ww + yy ELSEIF (@op1 == 2) z = aa^(qq - vv) ^ ww + yy ELSEIF (@op1 == 3) z = aa^(qq + vv) ^ ww + yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) ^ ww + yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq / vv) / ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq * vv) / ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq - vv) / ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq + vv) / ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) / ww ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq / vv) * ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq * vv) * ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq - vv) * ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq + vv) * ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) * ww ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq / vv) - ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq * vv) - ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq - vv) - ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq + vv) - ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) - ww ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq / vv) + ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq * vv) + ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq - vv) + ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq + vv) + ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) + ww ^ yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq / vv) ^ ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq * vv) ^ ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq - vv) ^ ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq + vv) ^ ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) ^ ww ^ yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww) / yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww) / yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww) / yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww) / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww) / yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww) / yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww) / yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww) / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww) / yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww) / yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww) / yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww) / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww) / yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww) / yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww) / yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww) / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww) / yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww) / yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww) / yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww) / yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww) / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww) * yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww) * yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww) * yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww) * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww) * yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww) * yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww) * yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww) * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww) * yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww) * yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww) * yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww) * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww) * yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww) * yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww) * yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww) * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww) * yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww) * yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww) * yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww) * yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww) * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww) - yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww) - yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww) - yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww) - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww) - yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww) - yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww) - yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww) - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww) - yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww) - yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww) - yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww) - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww) - yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww) - yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww) - yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww) - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww) - yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww) - yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww) - yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww) - yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww) - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww) + yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww) + yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww) + yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww) + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww) + yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww) + yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww) + yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww) + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww) + yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww) + yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww) + yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww) + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww) + yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww) + yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww) + yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww) + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww) + yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww) + yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww) + yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww) + yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww) + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww) + yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww) ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww) ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww) ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww) ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww) ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww) ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww) ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww) ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww) ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww) ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww) ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww) ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww) ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww) ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww) ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww) ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww) ^ yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww) ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww) ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww) ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww) ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww) ^ yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww / yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww / yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww / yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww / yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww / yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww / yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww / yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww / yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww / yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww / yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww / yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww / yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww / yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww / yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww / yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww / yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww / yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww / yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww / yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww / yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww / yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww / yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww * yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww * yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww * yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww * yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww * yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww * yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww * yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww * yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww * yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww * yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww * yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww * yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww * yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww * yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww * yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww * yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww * yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww * yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww * yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww * yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww * yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww * yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww - yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww - yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww - yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww - yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww - yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww - yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww - yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww - yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww - yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww - yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww - yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww - yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww - yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww - yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww - yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww - yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww - yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww - yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww - yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww - yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww - yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww - yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww + yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww + yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww + yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww + yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww + yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww + yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww + yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww + yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww + yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww + yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww + yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww + yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww + yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww + yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww + yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww + yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww + yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww + yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww + yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww + yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww + yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww + yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww ^ yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww ^ yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww ^ yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww ^ yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww ^ yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww ^ yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww ^ yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww ^ yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww ^ yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww ^ yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww ^ yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww ^ yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww ^ yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww ^ yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww ^ yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww ^ yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww ^ yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww ^ yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww ^ yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww ^ yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww ^ yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww ^ yy) ENDIF ENDIF ENDIF ENDIF bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) switch: type = "Brew102Julia" seed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 eye = @eye frog = @frog hen = @hen maid = @maid op1 = @op1 op2 = @op2 op3 = @op3 start = @start group = @group exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 test = @test bailfunc = @bailfunc invert = @invert default: title = "Brew 102" maxiter = 250 method = guessing periodicity = 0 magn = 0.45 center = (1.37,-0.3585) heading caption = "Bailout" endheading param bailout caption = "Bailout" default = 20.0 endparam param test caption = "Bailout Test" default = 0 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc heading caption = "Parameters" endheading param start caption = "Init Z" default = 1.0 endparam param eye caption = "Eye of Newt" default = -1.0 endparam param frog caption = "Frog's Breath" default = 0.0 endparam complex param hen caption = "Henbane" default = (-.5,0) endparam complex param bat caption = "Bat Wings" default = (0,0) endparam complex param maid caption = "Maiden's Tears" default = (0,0) endparam complex param exp1 caption = "Exponent 1" default = (1,0) endparam complex param exp2 caption = "Exponent 2" default = (1,0) endparam complex param exp3 caption = "Exponent 3" default = (1,0) endparam complex param exp4 caption = "Exponent 4" default = (1,0) endparam complex param exp5 caption = "Exponent 5" default = (1,0) endparam param op1 caption = "Operator 1" enum = "/""*""-""+""^" default = 2 endparam param op2 caption = "Operator 2" enum = "/""*""-""+""^" default = 3 endparam param op3 caption = "Operator 3" enum = "/""*""-""+""^" default = 3 endparam param group caption = "Grouping" default = 3 enum = "1""2""3""4" endparam param invert caption = "Invert Z" default = false endparam heading caption = "Functions" endheading func fn1 Caption = "Function 1" default = cos () endfunc func fn2 Caption = "Function 2" default = flip () endfunc func fn3 Caption = "Function 3" default = ident () endfunc func fn4 Caption = "Function 4" default = ident () endfunc func fn5 Caption = "Function 5" default = ident () endfunc func fn6 Caption = "Function 6" default = ident () endfunc func fn7 Caption = "Function 7" default = ident () endfunc } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Brew102Julia { ; Toby Marshall, Jun. 2002 ; Nov. 2003--added some params and cleaned up. ; Thanks to Frederik Slijkerman for permission to ; use his bailout tests. ; ; Functions and parameters can be changed ; to change the shapes and relations of ; the fractal elements. init: z = 2*pixel complex frog = @frog*(0.0,1.0) loop: IF @invert == true z = 1/z ELSE z = z ENDIF aa = fn1(@seed^@exp5 + @maid) qq = fn2(real(fn3(z^@exp1)+ @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(@seed^@exp4 +@hen) yy = @fn7(z^@exp3 + @bat) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / vv / ww / yy ELSEIF (@op1 == 1) z = aa^(qq) * vv / ww / yy ELSEIF (@op1 == 2) z = aa^(qq) - vv / ww / yy ELSEIF (@op1 == 3) z = aa^(qq) + vv / ww / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv / ww / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / vv * ww / yy ELSEIF (@op1 == 1) z = aa^(qq) * vv * ww / yy ELSEIF (@op1 == 2) z = aa^(qq) - vv * ww / yy ELSEIF (@op1 == 3) z = aa^(qq) + vv * ww / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv * ww / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / vv - ww / yy ELSEIF (@op1 == 1) z = aa^(qq) * vv - ww / yy ELSEIF (@op1 == 2) z = aa^(qq) - vv - ww / yy ELSEIF (@op1 == 3) z = aa^(qq) + vv - ww / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv - ww / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / vv + ww / yy ELSEIF (@op1 == 1) z = aa^(qq) * vv + ww / yy ELSEIF (@op1 == 2) z = aa^(qq) - vv + ww / yy ELSEIF (@op1 == 3) z = aa^(qq) + vv + ww / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv + ww / yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / vv ^ ww / yy ELSEIF (@op1 == 1) z = aa^(qq) * vv ^ ww / yy ELSEIF (@op1 == 2) z = aa^(qq) - vv ^ ww / yy ELSEIF (@op1 == 3) z = aa^(qq) + vv ^ ww / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv ^ ww / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / vv / ww * yy ELSEIF (@op1 == 1) z = aa^(qq) * vv / ww * yy ELSEIF (@op1 == 2) z = aa^(qq) - vv / ww * yy ELSEIF (@op1 == 3) z = aa^(qq) + vv / ww * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv / ww * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / vv * ww * yy ELSEIF (@op1 == 1) z = aa^(qq) * vv * ww * yy ELSEIF (@op1 == 2) z = aa^(qq) - vv * ww * yy ELSEIF (@op1 == 3) z = aa^(qq) + vv * ww * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv * ww * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / vv - ww * yy ELSEIF (@op1 == 1) z = aa^(qq) * vv - ww * yy ELSEIF (@op1 == 2) z = aa^(qq) - vv - ww * yy ELSEIF (@op1 == 3) z = aa^(qq) + vv - ww * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv - ww * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / vv + ww * yy ELSEIF (@op1 == 1) z = aa^(qq) * vv + ww * yy ELSEIF (@op1 == 2) z = aa^(qq) - vv + ww * yy ELSEIF (@op1 == 3) z = aa^(qq) + vv + ww * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv + ww * yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / vv ^ ww * yy ELSEIF (@op1 == 1) z = aa^(qq) * vv ^ ww * yy ELSEIF (@op1 == 2) z = aa^(qq) - vv ^ ww * yy ELSEIF (@op1 == 3) z = aa^(qq) + vv ^ ww * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv ^ ww * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / vv / ww - yy ELSEIF (@op1 == 1) z = aa^(qq) * vv / ww - yy ELSEIF (@op1 == 2) z = aa^(qq) - vv / ww - yy ELSEIF (@op1 == 3) z = aa^(qq) + vv / ww - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv / ww - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / vv * ww - yy ELSEIF (@op1 == 1) z = aa^(qq) * vv * ww - yy ELSEIF (@op1 == 2) z = aa^(qq) - vv * ww - yy ELSEIF (@op1 == 3) z = aa^(qq) + vv * ww - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv * ww - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / vv - ww - yy ELSEIF (@op1 == 1) z = aa^(qq) * vv - ww - yy ELSEIF (@op1 == 2) z = aa^(qq) - vv - ww - yy ELSEIF (@op1 == 3) z = aa^(qq) + vv - ww - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv - ww - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / vv + ww - yy ELSEIF (@op1 == 1) z = aa^(qq) * vv + ww - yy ELSEIF (@op1 == 2) z = aa^(qq) - vv + ww - yy ELSEIF (@op1 == 3) z = aa^(qq) + vv + ww - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv + ww - yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / vv ^ ww - yy ELSEIF (@op1 == 1) z = aa^(qq) * vv ^ ww - yy ELSEIF (@op1 == 2) z = aa^(qq) - vv ^ ww - yy ELSEIF (@op1 == 3) z = aa^(qq) + vv ^ ww - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv ^ ww - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / vv / ww + yy ELSEIF (@op1 == 1) z = aa^(qq) * vv / ww + yy ELSEIF (@op1 == 2) z = aa^(qq) - vv / ww + yy ELSEIF (@op1 == 3) z = aa^(qq) + vv / ww + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv / ww + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / vv * ww + yy ELSEIF (@op1 == 1) z = aa^(qq) * vv * ww + yy ELSEIF (@op1 == 2) z = aa^(qq) - vv * ww + yy ELSEIF (@op1 == 3) z = aa^(qq) + vv * ww + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv * ww + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / vv - ww + yy ELSEIF (@op1 == 1) z = aa^(qq) * vv - ww + yy ELSEIF (@op1 == 2) z = aa^(qq) - vv - ww + yy ELSEIF (@op1 == 3) z = aa^(qq) + vv - ww + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv - ww + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / vv + ww + yy ELSEIF (@op1 == 1) z = aa^(qq) * vv + ww + yy ELSEIF (@op1 == 2) z = aa^(qq) - vv + ww + yy ELSEIF (@op1 == 3) z = aa^(qq) + vv + ww + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv + ww + yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / vv ^ ww + yy ELSEIF (@op1 == 1) z = aa^(qq) * vv ^ ww + yy ELSEIF (@op1 == 2) z = aa^(qq) - vv ^ ww + yy ELSEIF (@op1 == 3) z = aa^(qq) + vv ^ ww + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv ^ ww + yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / vv / ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * vv / ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - vv / ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + vv / ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv / ww ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / vv * ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * vv * ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - vv * ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + vv * ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv * ww ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / vv - ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * vv - ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - vv - ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + vv - ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv - ww ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / vv + ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * vv + ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - vv + ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + vv + ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv + ww ^ yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / vv ^ ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * vv ^ ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - vv ^ ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + vv ^ ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ vv ^ ww ^ yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq / vv) / ww / yy ELSEIF (@op1 == 1) z = aa^(qq * vv) / ww / yy ELSEIF (@op1 == 2) z = aa^(qq - vv) / ww / yy ELSEIF (@op1 == 3) z = aa^(qq + vv) / ww / yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) / ww / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq / vv) * ww / yy ELSEIF (@op1 == 1) z = aa^(qq * vv) * ww / yy ELSEIF (@op1 == 2) z = aa^(qq - vv) * ww / yy ELSEIF (@op1 == 3) z = aa^(qq + vv) * ww / yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) * ww / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq / vv) - ww / yy ELSEIF (@op1 == 1) z = aa^(qq * vv) - ww / yy ELSEIF (@op1 == 2) z = aa^(qq - vv) - ww / yy ELSEIF (@op1 == 3) z = aa^(qq + vv) - ww / yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) - ww / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq / vv) + ww / yy ELSEIF (@op1 == 1) z = aa^(qq * vv) + ww / yy ELSEIF (@op1 == 2) z = aa^(qq - vv) + ww / yy ELSEIF (@op1 == 3) z = aa^(qq + vv) + ww / yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) + ww / yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq / vv) ^ ww / yy ELSEIF (@op1 == 1) z = aa^(qq * vv) ^ ww / yy ELSEIF (@op1 == 2) z = aa^(qq - vv) ^ ww / yy ELSEIF (@op1 == 3) z = aa^(qq + vv) ^ ww / yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) ^ ww / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq / vv) / ww * yy ELSEIF (@op1 == 1) z = aa^(qq * vv) / ww * yy ELSEIF (@op1 == 2) z = aa^(qq - vv) / ww * yy ELSEIF (@op1 == 3) z = aa^(qq + vv) / ww * yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) / ww * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq / vv) * ww * yy ELSEIF (@op1 == 1) z = aa^(qq * vv) * ww * yy ELSEIF (@op1 == 2) z = aa^(qq - vv) * ww * yy ELSEIF (@op1 == 3) z = aa^(qq + vv) * ww * yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) * ww * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq / vv) - ww * yy ELSEIF (@op1 == 1) z = aa^(qq * vv) - ww * yy ELSEIF (@op1 == 2) z = aa^(qq - vv) - ww * yy ELSEIF (@op1 == 3) z = aa^(qq + vv) - ww * yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) - ww * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq / vv) + ww * yy ELSEIF (@op1 == 1) z = aa^(qq * vv) + ww * yy ELSEIF (@op1 == 2) z = aa^(qq - vv) + ww * yy ELSEIF (@op1 == 3) z = aa^(qq + vv) + ww * yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) + ww * yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq / vv) ^ ww * yy ELSEIF (@op1 == 1) z = aa^(qq * vv) ^ ww * yy ELSEIF (@op1 == 2) z = aa^(qq - vv) ^ ww * yy ELSEIF (@op1 == 3) z = aa^(qq + vv) ^ ww * yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) ^ ww * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq / vv) / ww - yy ELSEIF (@op1 == 1) z = aa^(qq * vv) / ww - yy ELSEIF (@op1 == 2) z = aa^(qq - vv) / ww - yy ELSEIF (@op1 == 3) z = aa^(qq + vv) / ww - yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) / ww - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq / vv) * ww - yy ELSEIF (@op1 == 1) z = aa^(qq * vv) * ww - yy ELSEIF (@op1 == 2) z = aa^(qq - vv) * ww - yy ELSEIF (@op1 == 3) z = aa^(qq + vv) * ww - yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) * ww - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq / vv) - ww - yy ELSEIF (@op1 == 1) z = aa^(qq * vv) - ww - yy ELSEIF (@op1 == 2) z = aa^(qq - vv) - ww - yy ELSEIF (@op1 == 3) z = aa^(qq + vv) - ww - yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) - ww - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq / vv) + ww - yy ELSEIF (@op1 == 1) z = aa^(qq * vv) + ww - yy ELSEIF (@op1 == 2) z = aa^(qq - vv) + ww - yy ELSEIF (@op1 == 3) z = aa^(qq + vv) + ww - yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) + ww - yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq / vv) ^ ww - yy ELSEIF (@op1 == 1) z = aa^(qq * vv) ^ ww - yy ELSEIF (@op1 == 2) z = aa^(qq - vv) ^ ww - yy ELSEIF (@op1 == 3) z = aa^(qq + vv) ^ ww - yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) ^ ww - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq / vv) / ww + yy ELSEIF (@op1 == 1) z = aa^(qq * vv) / ww + yy ELSEIF (@op1 == 2) z = aa^(qq - vv) / ww + yy ELSEIF (@op1 == 3) z = aa^(qq + vv) / ww + yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) / ww + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq / vv) * ww + yy ELSEIF (@op1 == 1) z = aa^(qq * vv) * ww + yy ELSEIF (@op1 == 2) z = aa^(qq - vv) * ww + yy ELSEIF (@op1 == 3) z = aa^(qq + vv) * ww + yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) * ww + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq / vv) - ww + yy ELSEIF (@op1 == 1) z = aa^(qq * vv) - ww + yy ELSEIF (@op1 == 2) z = aa^(qq - vv) - ww + yy ELSEIF (@op1 == 3) z = aa^(qq + vv) - ww + yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) - ww + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq / vv) + ww + yy ELSEIF (@op1 == 1) z = aa^(qq * vv) + ww + yy ELSEIF (@op1 == 2) z = aa^(qq - vv) + ww + yy ELSEIF (@op1 == 3) z = aa^(qq + vv) + ww + yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) + ww + yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq / vv) ^ ww + yy ELSEIF (@op1 == 1) z = aa^(qq * vv) ^ ww + yy ELSEIF (@op1 == 2) z = aa^(qq - vv) ^ ww + yy ELSEIF (@op1 == 3) z = aa^(qq + vv) ^ ww + yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) ^ ww + yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq / vv) / ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq * vv) / ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq - vv) / ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq + vv) / ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) / ww ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq / vv) * ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq * vv) * ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq - vv) * ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq + vv) * ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) * ww ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq / vv) - ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq * vv) - ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq - vv) - ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq + vv) - ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) - ww ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq / vv) + ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq * vv) + ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq - vv) + ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq + vv) + ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) + ww ^ yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq / vv) ^ ww ^ yy ELSEIF (@op1 == 1) z = aa^(qq * vv) ^ ww ^ yy ELSEIF (@op1 == 2) z = aa^(qq - vv) ^ ww ^ yy ELSEIF (@op1 == 3) z = aa^(qq + vv) ^ ww ^ yy ELSEIF (@op1 == 4) z = aa^(qq ^ vv) ^ ww ^ yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww) / yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww) / yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww) / yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww) / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww) / yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww) / yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww) / yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww) / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww) / yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww) / yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww) / yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww) / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww) / yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww) / yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww) / yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww) / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww) / yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww) / yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww) / yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww) / yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww) / yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww) * yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww) * yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww) * yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww) * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww) * yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww) * yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww) * yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww) * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww) * yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww) * yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww) * yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww) * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww) * yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww) * yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww) * yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww) * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww) * yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww) * yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww) * yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww) * yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww) * yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww) - yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww) - yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww) - yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww) - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww) - yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww) - yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww) - yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww) - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww) - yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww) - yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww) - yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww) - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww) - yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww) - yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww) - yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww) - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww) - yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww) - yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww) - yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww) - yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww) - yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww) + yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww) + yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww) + yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww) + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww) + yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww) + yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww) + yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww) + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww) + yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww) + yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww) + yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww) + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww) + yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww) + yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww) + yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww) + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww) + yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww) + yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww) + yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww) + yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww) + yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww) + yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww) ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww) ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww) ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww) ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww) ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww) ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww) ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww) ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww) ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww) ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww) ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww) ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww) ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww) ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww) ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww) ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww) ^ yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww) ^ yy ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww) ^ yy ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww) ^ yy ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww) ^ yy ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww) ^ yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww / yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww / yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww / yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww / yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww / yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww / yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww / yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww / yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww / yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww / yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww / yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww / yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww / yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww / yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww / yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww / yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww / yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww / yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww / yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww / yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww / yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww / yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww * yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww * yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww * yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww * yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww * yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww * yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww * yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww * yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww * yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww * yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww * yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww * yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww * yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww * yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww * yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww * yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww * yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww * yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww * yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww * yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww * yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww * yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww - yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww - yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww - yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww - yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww - yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww - yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww - yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww - yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww - yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww - yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww - yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww - yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww - yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww - yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww - yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww - yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww - yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww - yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww - yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww - yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww - yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww - yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww + yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww + yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww + yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww + yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww + yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww + yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww + yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww + yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww + yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww + yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww + yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww + yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww + yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww + yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww + yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww + yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww + yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww + yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww + yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww + yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww + yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww + yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa^(qq) / (vv / ww ^ yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv / ww ^ yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv / ww ^ yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv / ww ^ yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv / ww ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa^(qq) / (vv * ww ^ yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv * ww ^ yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv * ww ^ yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv * ww ^ yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv * ww ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa^(qq) / (vv - ww ^ yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv - ww ^ yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv - ww ^ yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv - ww ^ yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv - ww ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa^(qq) / (vv + ww ^ yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv + ww ^ yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv + ww ^ yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv + ww ^ yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv + ww ^ yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa^(qq) / (vv ^ ww ^ yy) ELSEIF (@op1 == 1) z = aa^(qq) * (vv ^ ww ^ yy) ELSEIF (@op1 == 2) z = aa^(qq) - (vv ^ ww ^ yy) ELSEIF (@op1 == 3) z = aa^(qq) + (vv ^ ww ^ yy) ELSEIF (@op1 == 4) z = aa^(qq) ^ (vv ^ ww ^ yy) ENDIF ENDIF ENDIF ENDIF bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) switch: type = "Brew102" bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 eye = @eye frog = @frog hen = @hen maid = @maid op1 = @op1 op2 = @op2 op3 = @op3 group = @group exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 test = @test bailfunc = @bailfunc invert = @invert default: title = "Brew 102 Julia" maxiter = 250 method = guessing periodicity = 0 center = (-0.125, 0.275) magn = 1.10345 heading caption = "Bailout" endheading param bailout caption = "Bailout" default = 20.0 endparam param test caption = "Bailout Test" default = 0 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc heading caption = "Parameters" endheading param seed default = (-0.2665,-1.4115) caption = "Seed" endparam param eye caption = "Eye of Newt" default = -1.0 endparam param frog caption = "Frog's Breath" default = 0.0 endparam complex param hen caption = "Henbane" default = (-.5,0) endparam complex param bat caption = "Bat Wings" default = (0,0) endparam complex param maid caption = "Maiden's Tears" default = (0,0) endparam complex param exp1 caption = "Exponent 1" default = (1,0) endparam complex param exp2 caption = "Exponent 2" default = (1,0) endparam complex param exp3 caption = "Exponent 3" default = (1,0) endparam complex param exp4 caption = "Exponent 4" default = (1,0) endparam complex param exp5 caption = "Exponent 5" default = (1,0) endparam param op1 caption = "Operator 1" enum = "/""*""-""+""^" default = 2 endparam param op2 caption = "Operator 2" enum = "/""*""-""+""^" default = 3 endparam param op3 caption = "Operator 3" enum = "/""*""-""+""^" default = 3 endparam param group caption = "Grouping" default = 3 enum = "1""2""3""4" endparam param invert caption = "Invert Z" default = false endparam heading caption = "Functions" endheading func fn1 Caption = "Function 1" default = cos () endfunc func fn2 Caption = "Function 2" default = flip () endfunc func fn3 Caption = "Function 3" default = ident () endfunc func fn4 Caption = "Function 4" default = ident () endfunc func fn5 Caption = "Function 5" default = ident () endfunc func fn6 Caption = "Function 6" default = ident () endfunc func fn7 Caption = "Function 7" default = ident () endfunc } ***************************************************************************** Witch'sBrew { ; Toby Marshall, Jun. 2002 ; Use with the Julia switch. All functions ; and parameters can be varied to explore ; different Julia sets. Some parameter ; combinations give black M sets, but they ; too sometimes yield interesting results ; with the switch. init: z = @start complex frog = @frog*(0.0,1.0) loop: aa = fn1((#pixel^@exp5-@dew)^@fn8(z^@exp6-@t)) qq = fn2(real(fn3(z^@exp1) + @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(#pixel^@exp4 +@hen) xx = @fn7(z^@exp3 + @bat) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * vv / ww / xx ELSEIF (@op1 == 1) z = aa* (qq) - vv / ww / xx ELSEIF (@op1 == 2) z = aa* (qq) + vv / ww / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * vv * ww / xx ELSEIF (@op1 == 1) z = aa* (qq) - vv * ww / xx ELSEIF (@op1 == 2) z = aa* (qq) + vv * ww / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * vv - ww / xx ELSEIF (@op1 == 1) z = aa* (qq) - vv - ww / xx ELSEIF (@op1 == 2) z = aa* (qq) + vv - ww / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * vv + ww / xx ELSEIF (@op1 == 1) z = aa* (qq) - vv + ww / xx ELSEIF (@op1 == 2) z = aa* (qq) + vv + ww / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv + ww / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * vv ^ ww / xx ELSEIF (@op1 == 1) z = aa* (qq) - vv ^ ww / xx ELSEIF (@op1 == 2) z = aa* (qq) + vv ^ ww / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv ^ ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * vv / ww * xx ELSEIF (@op1 == 1) z = aa* (qq) - vv / ww * xx ELSEIF (@op1 == 2) z = aa* (qq) + vv / ww * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * vv * ww * xx ELSEIF (@op1 == 1) z = aa* (qq) - vv * ww * xx ELSEIF (@op1 == 2) z = aa* (qq) + vv * ww * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * vv - ww * xx ELSEIF (@op1 == 1) z = aa* (qq) - vv - ww * xx ELSEIF (@op1 == 2) z = aa* (qq) + vv - ww * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * vv + ww * xx ELSEIF (@op1 == 1) z = aa* (qq) - vv + ww * xx ELSEIF (@op1 == 2) z = aa* (qq) + vv + ww * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv + ww * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * vv ^ ww * xx ELSEIF (@op1 == 1) z = aa* (qq) - vv ^ ww * xx ELSEIF (@op1 == 2) z = aa* (qq) + vv ^ ww * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv ^ ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * vv / ww - xx ELSEIF (@op1 == 1) z = aa* (qq) - vv / ww - xx ELSEIF (@op1 == 2) z = aa* (qq) + vv / ww - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * vv * ww - xx ELSEIF (@op1 == 1) z = aa* (qq) - vv * ww - xx ELSEIF (@op1 == 2) z = aa* (qq) + vv * ww - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * vv - ww - xx ELSEIF (@op1 == 1) z = aa* (qq) - vv - ww - xx ELSEIF (@op1 == 2) z = aa* (qq) + vv - ww - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * vv + ww - xx ELSEIF (@op1 == 1) z = aa* (qq) - vv + ww - xx ELSEIF (@op1 == 2) z = aa* (qq) + vv + ww - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv + ww - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * vv ^ ww - xx ELSEIF (@op1 == 1) z = aa* (qq) - vv ^ ww - xx ELSEIF (@op1 == 2) z = aa* (qq) + vv ^ ww - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv ^ ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * vv / ww + xx ELSEIF (@op1 == 1) z = aa* (qq) - vv / ww + xx ELSEIF (@op1 == 2) z = aa* (qq) + vv / ww + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * vv * ww + xx ELSEIF (@op1 == 1) z = aa* (qq) - vv * ww + xx ELSEIF (@op1 == 2) z = aa* (qq) + vv * ww + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * vv - ww + xx ELSEIF (@op1 == 1) z = aa* (qq) - vv - ww + xx ELSEIF (@op1 == 2) z = aa* (qq) + vv - ww + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * vv + ww + xx ELSEIF (@op1 == 1) z = aa* (qq) - vv + ww + xx ELSEIF (@op1 == 2) z = aa* (qq) + vv + ww + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv + ww + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * vv ^ ww + xx ELSEIF (@op1 == 1) z = aa* (qq) - vv ^ ww + xx ELSEIF (@op1 == 2) z = aa* (qq) + vv ^ ww + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv ^ ww + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * vv / ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - vv / ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + vv / ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv / ww ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * vv * ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - vv * ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + vv * ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv * ww ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * vv - ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - vv - ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + vv - ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv - ww ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * vv + ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - vv + ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + vv + ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv + ww ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * vv ^ ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - vv ^ ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + vv ^ ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv ^ ww ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww / xx ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww / xx ELSEIF (@op1 == 2) z = aa* (qq + vv) / ww / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww / xx ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww / xx ELSEIF (@op1 == 2) z = aa* (qq + vv) * ww / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww / xx ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww / xx ELSEIF (@op1 == 2) z = aa* (qq + vv) - ww / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww / xx ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww / xx ELSEIF (@op1 == 2) z = aa* (qq + vv) + ww / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) + ww / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv) ^ ww / xx ELSEIF (@op1 == 1) z = aa* (qq - vv) ^ ww / xx ELSEIF (@op1 == 2) z = aa* (qq + vv) ^ ww / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) ^ ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww * xx ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww * xx ELSEIF (@op1 == 2) z = aa* (qq + vv) / ww * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww * xx ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww * xx ELSEIF (@op1 == 2) z = aa* (qq + vv) * ww * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww * xx ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww * xx ELSEIF (@op1 == 2) z = aa* (qq + vv) - ww * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww * xx ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww * xx ELSEIF (@op1 == 2) z = aa* (qq + vv) + ww * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) + ww * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv) ^ ww * xx ELSEIF (@op1 == 1) z = aa* (qq - vv) ^ ww * xx ELSEIF (@op1 == 2) z = aa* (qq + vv) ^ ww * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) ^ ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww - xx ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww - xx ELSEIF (@op1 == 2) z = aa* (qq + vv) / ww - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww - xx ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww - xx ELSEIF (@op1 == 2) z = aa* (qq + vv) * ww - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww - xx ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww - xx ELSEIF (@op1 == 2) z = aa* (qq + vv) - ww - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww - xx ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww - xx ELSEIF (@op1 == 2) z = aa* (qq + vv) + ww - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) + ww - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv) ^ ww - xx ELSEIF (@op1 == 1) z = aa* (qq - vv) ^ ww - xx ELSEIF (@op1 == 2) z = aa* (qq + vv) ^ ww - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) ^ ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww + xx ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww + xx ELSEIF (@op1 == 2) z = aa* (qq + vv) / ww + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww + xx ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww + xx ELSEIF (@op1 == 2) z = aa* (qq + vv) * ww + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww + xx ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww + xx ELSEIF (@op1 == 2) z = aa* (qq + vv) - ww + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww + xx ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww + xx ELSEIF (@op1 == 2) z = aa* (qq + vv) + ww + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) + ww + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv) ^ ww + xx ELSEIF (@op1 == 1) z = aa* (qq - vv) ^ ww + xx ELSEIF (@op1 == 2) z = aa* (qq + vv) ^ ww + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) ^ ww + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv) / ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) / ww ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv) * ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) * ww ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv) - ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) - ww ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv) + ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) + ww ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv) ^ ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv) ^ ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv) ^ ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) ^ ww ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww) / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww) * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww) - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww) + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww) + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww) ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww) ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww) ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww) ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww) ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww / xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww / xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww / xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww / xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww / xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww / xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww / xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww / xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww / xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww / xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww / xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww / xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww / xx) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww / xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww / xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww / xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww * xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww * xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww * xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww * xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww * xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww * xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww * xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww * xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww * xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww * xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww * xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww * xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww * xx) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww * xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww * xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww * xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww - xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww - xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww - xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww - xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww - xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww - xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww - xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww - xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww - xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww - xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww - xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww - xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww - xx) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww - xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww - xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww - xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww + xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww + xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww + xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww + xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww + xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww + xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww + xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww + xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww + xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww + xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww + xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww + xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww + xx) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww + xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww + xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww + xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww + xx) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww ^ xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww ^ xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww ^ xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww ^ xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww ^ xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww ^ xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww ^ xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww ^ xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww ^ xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww ^ xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww ^ xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww ^ xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww ^ xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww ^ xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww ^ xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww ^ xx) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww ^ xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww ^ xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww ^ xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww ^ xx) ENDIF ENDIF ENDIF ELSEIF (@group == 4); outer IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) / xx ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) / xx ELSEIF (@op1 == 2) z = aa* (qq + vv / ww) / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) / xx ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) / xx ELSEIF (@op1 == 2) z = aa* (qq + vv * ww) / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) / xx ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) / xx ELSEIF (@op1 == 2) z = aa* (qq + vv - ww) / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) / xx ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) / xx ELSEIF (@op1 == 2) z = aa* (qq + vv + ww) / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv + ww) / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv ^ ww) / xx ELSEIF (@op1 == 1) z = aa* (qq - vv ^ ww) / xx ELSEIF (@op1 == 2) z = aa* (qq + vv ^ ww) / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv ^ ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) * xx ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) * xx ELSEIF (@op1 == 2) z = aa* (qq + vv / ww) * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) * xx ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) * xx ELSEIF (@op1 == 2) z = aa* (qq + vv * ww) * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) * xx ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) * xx ELSEIF (@op1 == 2) z = aa* (qq + vv - ww) * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) * xx ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) * xx ELSEIF (@op1 == 2) z = aa* (qq + vv + ww) * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv + ww) * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv ^ ww) * xx ELSEIF (@op1 == 1) z = aa* (qq - vv ^ ww) * xx ELSEIF (@op1 == 2) z = aa* (qq + vv ^ ww) * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv ^ ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) - xx ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) - xx ELSEIF (@op1 == 2) z = aa* (qq + vv / ww) - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) - xx ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) - xx ELSEIF (@op1 == 2) z = aa* (qq + vv * ww) - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) - xx ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) - xx ELSEIF (@op1 == 2) z = aa* (qq + vv - ww) - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) - xx ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) - xx ELSEIF (@op1 == 2) z = aa* (qq + vv + ww) - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv + ww) - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv ^ ww) - xx ELSEIF (@op1 == 1) z = aa* (qq - vv ^ ww) - xx ELSEIF (@op1 == 2) z = aa* (qq + vv ^ ww) - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv ^ ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) + xx ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) + xx ELSEIF (@op1 == 2) z = aa* (qq + vv / ww) + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) + xx ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) + xx ELSEIF (@op1 == 2) z = aa* (qq + vv * ww) + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) + xx ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) + xx ELSEIF (@op1 == 2) z = aa* (qq + vv - ww) + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) + xx ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) + xx ELSEIF (@op1 == 2) z = aa* (qq + vv + ww) + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv + ww) + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv ^ ww) + xx ELSEIF (@op1 == 1) z = aa* (qq - vv ^ ww) + xx ELSEIF (@op1 == 2) z = aa* (qq + vv ^ ww) + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv ^ ww) + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv / ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv / ww) ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv * ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv * ww) ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv - ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv - ww) ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv + ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv + ww) ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv ^ ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv ^ ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv ^ ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv ^ ww) ^ xx ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "Witch'sBrewJulia" seed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 eye = @eye frog = @frog t = @t dew = @dew hen = @hen bat = @bat op1 = @op1 op2 = @op2 op3 = @op3 exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 exp6 = @exp6 start = @start group = @group default: title = "Witch's Brew" maxiter = 100 periodicity = 0 center = (1.41, 0) param bailout caption = "bailout" default = 5.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param start caption = "init z" hint = "Try changing this value if you run across a black M set" default = 1.0 endparam param eye caption = "eye of newt" default = -1.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (-.5,0) endparam param bat caption = "bat wings" default = (0,0) endparam param t caption = "toadstools" default = (0,0) endparam param dew caption = "dewdrops" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param exp5 caption = "exponent 5" default = (1,0) endparam param exp6 caption = "exponent 6" default = (1,0) endparam param op1 caption = "operator 1" enum = "*""-""+""^" default = 0 endparam param op2 caption = "operator 2" enum = "/""*""-""+""^" default = 3 endparam param op3 caption = "operator 3" enum = "/""*""-""+""^" default = 2 endparam param group caption = "grouping" default = 4 enum = "1""2""3""4""5" endparam func fn1 Caption = "function 1" default = log () endfunc func fn2 Caption = "function 2" default = ident () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc func fn8 Caption = "function 8" default = ident () endfunc } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Witch'sBrewJulia { ; Toby Marshall, Jun. 2002 ; Parameter values can be changed ; to change the shapes and relations of ; the fractal elements. Try scrolling ; through function 2-8 for interesting ; spiral variations. init: z = 2*pixel complex frog = @frog*(0.0,1.0) loop: aa = fn1((@seed^@exp5 - @dew)^@fn8(z^@exp6 - @t)) qq = fn2(real(fn3(z^@exp1) + @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(@seed^@exp4 + @hen) xx = @fn7(z^@exp3 + @bat) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * vv / ww / xx ELSEIF (@op1 == 1) z = aa* (qq) - vv / ww / xx ELSEIF (@op1 == 2) z = aa* (qq) + vv / ww / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * vv * ww / xx ELSEIF (@op1 == 1) z = aa* (qq) - vv * ww / xx ELSEIF (@op1 == 2) z = aa* (qq) + vv * ww / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * vv - ww / xx ELSEIF (@op1 == 1) z = aa* (qq) - vv - ww / xx ELSEIF (@op1 == 2) z = aa* (qq) + vv - ww / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * vv + ww / xx ELSEIF (@op1 == 1) z = aa* (qq) - vv + ww / xx ELSEIF (@op1 == 2) z = aa* (qq) + vv + ww / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv + ww / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * vv ^ ww / xx ELSEIF (@op1 == 1) z = aa* (qq) - vv ^ ww / xx ELSEIF (@op1 == 2) z = aa* (qq) + vv ^ ww / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv ^ ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * vv / ww * xx ELSEIF (@op1 == 1) z = aa* (qq) - vv / ww * xx ELSEIF (@op1 == 2) z = aa* (qq) + vv / ww * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * vv * ww * xx ELSEIF (@op1 == 1) z = aa* (qq) - vv * ww * xx ELSEIF (@op1 == 2) z = aa* (qq) + vv * ww * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * vv - ww * xx ELSEIF (@op1 == 1) z = aa* (qq) - vv - ww * xx ELSEIF (@op1 == 2) z = aa* (qq) + vv - ww * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * vv + ww * xx ELSEIF (@op1 == 1) z = aa* (qq) - vv + ww * xx ELSEIF (@op1 == 2) z = aa* (qq) + vv + ww * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv + ww * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * vv ^ ww * xx ELSEIF (@op1 == 1) z = aa* (qq) - vv ^ ww * xx ELSEIF (@op1 == 2) z = aa* (qq) + vv ^ ww * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv ^ ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * vv / ww - xx ELSEIF (@op1 == 1) z = aa* (qq) - vv / ww - xx ELSEIF (@op1 == 2) z = aa* (qq) + vv / ww - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * vv * ww - xx ELSEIF (@op1 == 1) z = aa* (qq) - vv * ww - xx ELSEIF (@op1 == 2) z = aa* (qq) + vv * ww - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * vv - ww - xx ELSEIF (@op1 == 1) z = aa* (qq) - vv - ww - xx ELSEIF (@op1 == 2) z = aa* (qq) + vv - ww - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * vv + ww - xx ELSEIF (@op1 == 1) z = aa* (qq) - vv + ww - xx ELSEIF (@op1 == 2) z = aa* (qq) + vv + ww - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv + ww - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * vv ^ ww - xx ELSEIF (@op1 == 1) z = aa* (qq) - vv ^ ww - xx ELSEIF (@op1 == 2) z = aa* (qq) + vv ^ ww - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv ^ ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * vv / ww + xx ELSEIF (@op1 == 1) z = aa* (qq) - vv / ww + xx ELSEIF (@op1 == 2) z = aa* (qq) + vv / ww + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * vv * ww + xx ELSEIF (@op1 == 1) z = aa* (qq) - vv * ww + xx ELSEIF (@op1 == 2) z = aa* (qq) + vv * ww + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * vv - ww + xx ELSEIF (@op1 == 1) z = aa* (qq) - vv - ww + xx ELSEIF (@op1 == 2) z = aa* (qq) + vv - ww + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * vv + ww + xx ELSEIF (@op1 == 1) z = aa* (qq) - vv + ww + xx ELSEIF (@op1 == 2) z = aa* (qq) + vv + ww + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv + ww + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * vv ^ ww + xx ELSEIF (@op1 == 1) z = aa* (qq) - vv ^ ww + xx ELSEIF (@op1 == 2) z = aa* (qq) + vv ^ ww + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv ^ ww + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * vv / ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - vv / ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + vv / ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv / ww ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * vv * ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - vv * ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + vv * ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv * ww ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * vv - ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - vv - ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + vv - ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv - ww ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * vv + ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - vv + ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + vv + ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv + ww ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * vv ^ ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - vv ^ ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + vv ^ ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ vv ^ ww ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww / xx ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww / xx ELSEIF (@op1 == 2) z = aa* (qq + vv) / ww / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww / xx ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww / xx ELSEIF (@op1 == 2) z = aa* (qq + vv) * ww / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww / xx ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww / xx ELSEIF (@op1 == 2) z = aa* (qq + vv) - ww / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww / xx ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww / xx ELSEIF (@op1 == 2) z = aa* (qq + vv) + ww / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) + ww / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv) ^ ww / xx ELSEIF (@op1 == 1) z = aa* (qq - vv) ^ ww / xx ELSEIF (@op1 == 2) z = aa* (qq + vv) ^ ww / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) ^ ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww * xx ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww * xx ELSEIF (@op1 == 2) z = aa* (qq + vv) / ww * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww * xx ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww * xx ELSEIF (@op1 == 2) z = aa* (qq + vv) * ww * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww * xx ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww * xx ELSEIF (@op1 == 2) z = aa* (qq + vv) - ww * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww * xx ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww * xx ELSEIF (@op1 == 2) z = aa* (qq + vv) + ww * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) + ww * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv) ^ ww * xx ELSEIF (@op1 == 1) z = aa* (qq - vv) ^ ww * xx ELSEIF (@op1 == 2) z = aa* (qq + vv) ^ ww * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) ^ ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww - xx ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww - xx ELSEIF (@op1 == 2) z = aa* (qq + vv) / ww - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww - xx ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww - xx ELSEIF (@op1 == 2) z = aa* (qq + vv) * ww - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww - xx ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww - xx ELSEIF (@op1 == 2) z = aa* (qq + vv) - ww - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww - xx ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww - xx ELSEIF (@op1 == 2) z = aa* (qq + vv) + ww - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) + ww - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv) ^ ww - xx ELSEIF (@op1 == 1) z = aa* (qq - vv) ^ ww - xx ELSEIF (@op1 == 2) z = aa* (qq + vv) ^ ww - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) ^ ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww + xx ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww + xx ELSEIF (@op1 == 2) z = aa* (qq + vv) / ww + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww + xx ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww + xx ELSEIF (@op1 == 2) z = aa* (qq + vv) * ww + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww + xx ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww + xx ELSEIF (@op1 == 2) z = aa* (qq + vv) - ww + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww + xx ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww + xx ELSEIF (@op1 == 2) z = aa* (qq + vv) + ww + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) + ww + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv) ^ ww + xx ELSEIF (@op1 == 1) z = aa* (qq - vv) ^ ww + xx ELSEIF (@op1 == 2) z = aa* (qq + vv) ^ ww + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) ^ ww + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv) / ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) / ww ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv) * ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) * ww ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv) - ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) - ww ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv) + ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) + ww ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv) ^ ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv) ^ ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv) ^ ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv) ^ ww ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww) / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww) * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww) - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww) + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww) + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww) ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww) ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww) ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww) ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww) ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww / xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww / xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww / xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww / xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww / xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww / xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww / xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww / xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww / xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww / xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww / xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww / xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww / xx) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww / xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww / xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww / xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww * xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww * xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww * xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww * xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww * xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww * xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww * xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww * xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww * xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww * xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww * xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww * xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww * xx) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww * xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww * xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww * xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww - xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww - xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww - xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww - xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww - xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww - xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww - xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww - xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww - xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww - xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww - xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww - xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww - xx) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww - xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww - xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww - xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww + xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww + xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww + xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww + xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww + xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww + xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww + xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww + xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww + xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww + xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww + xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww + xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww + xx) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww + xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww + xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww + xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww + xx) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) * (vv / ww ^ xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv / ww ^ xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv / ww ^ xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv / ww ^ xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) * (vv * ww ^ xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv * ww ^ xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv * ww ^ xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv * ww ^ xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) * (vv - ww ^ xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv - ww ^ xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv - ww ^ xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv - ww ^ xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) * (vv + ww ^ xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv + ww ^ xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv + ww ^ xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv + ww ^ xx) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) * (vv ^ ww ^ xx) ELSEIF (@op1 == 1) z = aa* (qq) - (vv ^ ww ^ xx) ELSEIF (@op1 == 2) z = aa* (qq) + (vv ^ ww ^ xx) ELSEIF (@op1 == 3) z = aa* (qq) ^ (vv ^ ww ^ xx) ENDIF ENDIF ENDIF ELSEIF (@group == 4); outer IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) / xx ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) / xx ELSEIF (@op1 == 2) z = aa* (qq + vv / ww) / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) / xx ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) / xx ELSEIF (@op1 == 2) z = aa* (qq + vv * ww) / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) / xx ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) / xx ELSEIF (@op1 == 2) z = aa* (qq + vv - ww) / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) / xx ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) / xx ELSEIF (@op1 == 2) z = aa* (qq + vv + ww) / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv + ww) / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv ^ ww) / xx ELSEIF (@op1 == 1) z = aa* (qq - vv ^ ww) / xx ELSEIF (@op1 == 2) z = aa* (qq + vv ^ ww) / xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv ^ ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) * xx ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) * xx ELSEIF (@op1 == 2) z = aa* (qq + vv / ww) * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) * xx ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) * xx ELSEIF (@op1 == 2) z = aa* (qq + vv * ww) * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) * xx ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) * xx ELSEIF (@op1 == 2) z = aa* (qq + vv - ww) * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) * xx ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) * xx ELSEIF (@op1 == 2) z = aa* (qq + vv + ww) * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv + ww) * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv ^ ww) * xx ELSEIF (@op1 == 1) z = aa* (qq - vv ^ ww) * xx ELSEIF (@op1 == 2) z = aa* (qq + vv ^ ww) * xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv ^ ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) - xx ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) - xx ELSEIF (@op1 == 2) z = aa* (qq + vv / ww) - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) - xx ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) - xx ELSEIF (@op1 == 2) z = aa* (qq + vv * ww) - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) - xx ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) - xx ELSEIF (@op1 == 2) z = aa* (qq + vv - ww) - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) - xx ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) - xx ELSEIF (@op1 == 2) z = aa* (qq + vv + ww) - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv + ww) - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv ^ ww) - xx ELSEIF (@op1 == 1) z = aa* (qq - vv ^ ww) - xx ELSEIF (@op1 == 2) z = aa* (qq + vv ^ ww) - xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv ^ ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) + xx ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) + xx ELSEIF (@op1 == 2) z = aa* (qq + vv / ww) + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) + xx ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) + xx ELSEIF (@op1 == 2) z = aa* (qq + vv * ww) + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) + xx ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) + xx ELSEIF (@op1 == 2) z = aa* (qq + vv - ww) + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) + xx ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) + xx ELSEIF (@op1 == 2) z = aa* (qq + vv + ww) + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv + ww) + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv ^ ww) + xx ELSEIF (@op1 == 1) z = aa* (qq - vv ^ ww) + xx ELSEIF (@op1 == 2) z = aa* (qq + vv ^ ww) + xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv ^ ww) + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv / ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv / ww) ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv * ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv * ww) ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv - ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv - ww) ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv + ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv + ww) ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq * vv ^ ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq - vv ^ ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq + vv ^ ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq ^ vv ^ ww) ^ xx ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "Witch'sBrew" bailout = @bailout bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 eye = @eye frog = @frog hen = @hen bat = @bat dew = @dew t = @t op1 = @op1 op2 = @op2 op3 = @op3 exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 exp6 = @exp6 start = @start group = @group default: title = "Witch's Brew Julia" maxiter = 250 periodicity = 0 magn = 2.3333 center = (.009,-.0178) param seed default = (1.0125,-0.215) endparam param bailout caption = "bailout" default = 5.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param eye caption = "eye of newt" default = -1.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (-.5,0) endparam param bat caption = "bat wings" default = (0,0) endparam param t caption = "toadstools" default = (0,0) endparam param dew caption = "dewdrops" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param exp5 caption = "exponent 5" default = (1,0) endparam param exp6 caption = "exponent 6" default = (1,0) endparam param op1 caption = "operator 1" enum = "*""-""+""^" default = 0 endparam param op2 caption = "operator 2" enum = "/""*""-""+""^" default = 3 endparam param op3 caption = "operator 3" enum = "/""*""-""+""^" default = 2 endparam param group caption = "grouping" default = 4 enum = "1""2""3""4""5" endparam func fn1 Caption = "function 1" default = log () endfunc func fn2 Caption = "function 2" default = ident () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc func fn8 Caption = "function 8" default = ident () endfunc } ************************************************************************ SecretBrew { ; Toby Marshall, Jun. 2002 ; Use with the Julia switch. All functions ; and parameters can be varied to explore ; different Julia sets. Try operator 4 ; at "^" for discontinuous spiral elements init: z = @start complex frog = @frog*(0.0,1.0) loop: aa = fn1(#pixel^@exp5 + @maid) qq = fn2(real(fn3(z^@exp1) + @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(#pixel^@exp4 +@hen) xx = @fn7(z^@exp3 + @bat) yy = @fn8(#pixel+@t) IF (@op4 == 0) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww / xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww / xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww / xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww / xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww / xx/yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww * xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww * xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww * xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww * xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww * xx/yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww - xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww - xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww - xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww - xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww - xx/yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww + xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww + xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww + xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww + xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww + xx/yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww ^ xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww ^ xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww ^ xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww ^ xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww ^ xx/yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww / xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww / xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww / xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww / xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww / xx/yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww * xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww * xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww * xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww * xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww * xx/yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww - xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww - xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww - xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww - xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww - xx/yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww + xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww + xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww + xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww + xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww + xx/yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww ^ xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww ^ xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww ^ xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww ^ xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww ^ xx/yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) / xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) / xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) / xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) / xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) / xx/yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) * xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) * xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) * xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) * xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) * xx/yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) - xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) - xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) - xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) - xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) - xx/yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) + xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) + xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) + xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) + xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) + xx/yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) ^ xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) ^ xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) ^ xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) ^ xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) ^ xx/yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww / xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww / xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww / xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww / xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww / xx/yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww / xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww / xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww / xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww / xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww / xx/yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww / xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww / xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww / xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww / xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww / xx/yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww / xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww / xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww / xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww / xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww / xx/yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww / xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww / xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww / xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww / xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww / xx/yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww * xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww * xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww * xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww * xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww * xx/yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww * xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww * xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww * xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww * xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww * xx/yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww * xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww * xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww * xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww * xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww * xx/yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww * xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww * xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww * xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww * xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww * xx/yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww * xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww * xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww * xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww * xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww * xx/yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww - xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww - xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww - xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww - xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww - xx/yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww - xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww - xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww - xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww - xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww - xx/yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww - xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww - xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww - xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww - xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww - xx/yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww - xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww - xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww - xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww - xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww - xx/yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww - xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww - xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww - xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww - xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww - xx/yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww + xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww + xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww + xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww + xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww + xx/yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww + xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww + xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww + xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww + xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww + xx/yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww + xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww + xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww + xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww + xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww + xx/yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww + xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww + xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww + xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww + xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww + xx/yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww + xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww + xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww + xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww + xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww + xx/yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww ^ xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww ^ xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww ^ xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww ^ xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww ^ xx/yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww ^ xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww ^ xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww ^ xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww ^ xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww ^ xx/yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww ^ xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww ^ xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww ^ xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww ^ xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww ^ xx/yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww ^ xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww ^ xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww ^ xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww ^ xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww ^ xx/yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww ^ xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww ^ xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww ^ xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww ^ xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww ^ xx/yy) ENDIF ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww / xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww / xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww / xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww / xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww / xx*yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww * xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww * xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww * xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww * xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww * xx*yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww - xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww - xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww - xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww - xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww - xx*yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww + xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww + xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww + xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww + xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww + xx*yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww ^ xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww ^ xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww ^ xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww ^ xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww ^ xx*yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww / xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww / xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww / xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww / xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww / xx*yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww * xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww * xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww * xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww * xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww * xx*yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww - xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww - xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww - xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww - xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww - xx*yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww + xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww + xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww + xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww + xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww + xx*yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww ^ xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww ^ xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww ^ xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww ^ xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww ^ xx*yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) / xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) / xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) / xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) / xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) / xx*yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) * xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) * xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) * xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) * xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) * xx*yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) - xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) - xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) - xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) - xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) - xx*yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) + xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) + xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) + xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) + xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) + xx*yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) ^ xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) ^ xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) ^ xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) ^ xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) ^ xx*yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww / xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww / xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww / xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww / xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww / xx*yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww / xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww / xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww / xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww / xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww / xx*yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww / xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww / xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww / xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww / xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww / xx*yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww / xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww / xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww / xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww / xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww / xx*yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww / xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww / xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww / xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww / xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww / xx*yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww * xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww * xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww * xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww * xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww * xx*yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww * xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww * xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww * xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww * xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww * xx*yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww * xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww * xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww * xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww * xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww * xx*yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww * xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww * xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww * xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww * xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww * xx*yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww * xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww * xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww * xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww * xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww * xx*yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww - xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww - xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww - xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww - xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww - xx*yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww - xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww - xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww - xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww - xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww - xx*yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww - xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww - xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww - xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww - xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww - xx*yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww - xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww - xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww - xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww - xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww - xx*yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww - xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww - xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww - xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww - xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww - xx*yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww + xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww + xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww + xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww + xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww + xx*yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww + xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww + xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww + xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww + xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww + xx*yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww + xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww + xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww + xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww + xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww + xx*yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww + xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww + xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww + xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww + xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww + xx*yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww + xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww + xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww + xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww + xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww + xx*yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww ^ xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww ^ xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww ^ xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww ^ xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww ^ xx*yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww ^ xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww ^ xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww ^ xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww ^ xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww ^ xx*yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww ^ xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww ^ xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww ^ xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww ^ xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww ^ xx*yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww ^ xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww ^ xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww ^ xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww ^ xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww ^ xx*yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww ^ xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww ^ xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww ^ xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww ^ xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww ^ xx*yy) ENDIF ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww / xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww / xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww / xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww / xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww / xx-yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww * xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww * xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww * xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww * xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww * xx-yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww - xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww - xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww - xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww - xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww - xx-yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww + xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww + xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww + xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww + xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww + xx-yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww ^ xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww ^ xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww ^ xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww ^ xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww ^ xx-yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww / xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww / xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww / xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww / xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww / xx-yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww * xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww * xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww * xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww * xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww * xx-yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww - xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww - xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww - xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww - xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww - xx-yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww + xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww + xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww + xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww + xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww + xx-yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww ^ xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww ^ xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww ^ xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww ^ xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww ^ xx-yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) / xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) / xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) / xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) / xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) / xx-yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) * xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) * xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) * xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) * xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) * xx-yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) - xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) - xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) - xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) - xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) - xx-yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) + xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) + xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) + xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) + xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) + xx-yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) ^ xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) ^ xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) ^ xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) ^ xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) ^ xx-yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww / xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww / xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww / xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww / xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww / xx-yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww / xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww / xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww / xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww / xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww / xx-yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww / xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww / xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww / xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww / xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww / xx-yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww / xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww / xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww / xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww / xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww / xx-yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww / xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww / xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww / xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww / xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww / xx-yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww * xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww * xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww * xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww * xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww * xx-yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww * xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww * xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww * xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww * xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww * xx-yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww * xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww * xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww * xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww * xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww * xx-yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww * xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww * xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww * xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww * xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww * xx-yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww * xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww * xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww * xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww * xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww * xx-yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww - xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww - xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww - xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww - xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww - xx-yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww - xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww - xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww - xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww - xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww - xx-yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww - xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww - xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww - xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww - xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww - xx-yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww - xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww - xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww - xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww - xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww - xx-yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww - xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww - xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww - xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww - xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww - xx-yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww + xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww + xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww + xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww + xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww + xx-yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww + xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww + xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww + xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww + xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww + xx-yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww + xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww + xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww + xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww + xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww + xx-yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww + xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww + xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww + xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww + xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww + xx-yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww + xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww + xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww + xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww + xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww + xx-yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww ^ xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww ^ xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww ^ xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww ^ xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww ^ xx-yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww ^ xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww ^ xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww ^ xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww ^ xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww ^ xx-yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww ^ xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww ^ xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww ^ xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww ^ xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww ^ xx-yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww ^ xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww ^ xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww ^ xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww ^ xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww ^ xx-yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww ^ xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww ^ xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww ^ xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww ^ xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww ^ xx-yy) ENDIF ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww / xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww / xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww / xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww / xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww / xx+yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww * xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww * xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww * xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww * xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww * xx+yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww - xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww - xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww - xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww - xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww - xx+yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww + xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww + xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww + xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww + xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww + xx+yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww ^ xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww ^ xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww ^ xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww ^ xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww ^ xx+yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww / xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww / xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww / xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww / xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww / xx+yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww * xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww * xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww * xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww * xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww * xx+yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww - xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww - xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww - xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww - xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww - xx+yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww + xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww + xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww + xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww + xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww + xx+yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww ^ xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww ^ xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww ^ xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww ^ xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww ^ xx+yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) / xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) / xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) / xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) / xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) / xx+yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) * xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) * xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) * xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) * xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) * xx+yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) - xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) - xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) - xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) - xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) - xx+yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) + xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) + xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) + xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) + xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) + xx+yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) ^ xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) ^ xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) ^ xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) ^ xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) ^ xx+yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww / xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww / xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww / xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww / xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww / xx+yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww / xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww / xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww / xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww / xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww / xx+yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww / xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww / xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww / xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww / xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww / xx+yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww / xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww / xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww / xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww / xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww / xx+yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww / xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww / xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww / xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww / xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww / xx+yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww * xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww * xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww * xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww * xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww * xx+yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww * xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww * xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww * xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww * xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww * xx+yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww * xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww * xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww * xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww * xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww * xx+yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww * xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww * xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww * xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww * xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww * xx+yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww * xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww * xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww * xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww * xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww * xx+yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww - xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww - xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww - xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww - xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww - xx+yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww - xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww - xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww - xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww - xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww - xx+yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww - xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww - xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww - xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww - xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww - xx+yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww - xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww - xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww - xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww - xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww - xx+yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww - xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww - xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww - xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww - xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww - xx+yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww + xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww + xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww + xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww + xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww + xx+yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww + xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww + xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww + xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww + xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww + xx+yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww + xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww + xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww + xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww + xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww + xx+yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww + xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww + xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww + xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww + xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww + xx+yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww + xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww + xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww + xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww + xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww + xx+yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww ^ xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww ^ xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww ^ xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww ^ xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww ^ xx+yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww ^ xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww ^ xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww ^ xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww ^ xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww ^ xx+yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww ^ xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww ^ xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww ^ xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww ^ xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww ^ xx+yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww ^ xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww ^ xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww ^ xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww ^ xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww ^ xx+yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww ^ xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww ^ xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww ^ xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww ^ xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww ^ xx+yy) ENDIF ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww / xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww / xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww / xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww / xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww / xx^yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww * xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww * xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww * xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww * xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww * xx^yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww - xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww - xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww - xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww - xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww - xx^yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww + xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww + xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww + xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww + xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww + xx^yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww ^ xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww ^ xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww ^ xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww ^ xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww ^ xx^yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww / xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww / xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww / xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww / xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww / xx^yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww * xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww * xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww * xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww * xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww * xx^yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww - xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww - xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww - xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww - xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww - xx^yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww + xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww + xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww + xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww + xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww + xx^yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww ^ xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww ^ xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww ^ xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww ^ xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww ^ xx^yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) / xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) / xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) / xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) / xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) / xx^yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) * xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) * xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) * xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) * xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) * xx^yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) - xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) - xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) - xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) - xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) - xx^yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) + xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) + xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) + xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) + xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) + xx^yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) ^ xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) ^ xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) ^ xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) ^ xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) ^ xx^yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww / xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww / xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww / xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww / xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww / xx^yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww / xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww / xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww / xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww / xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww / xx^yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww / xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww / xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww / xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww / xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww / xx^yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww / xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww / xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww / xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww / xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww / xx^yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww / xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww / xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww / xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww / xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww / xx^yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww * xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww * xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww * xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww * xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww * xx^yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww * xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww * xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww * xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww * xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww * xx^yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww * xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww * xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww * xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww * xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww * xx^yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww * xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww * xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww * xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww * xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww * xx^yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww * xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww * xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww * xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww * xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww * xx^yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww - xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww - xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww - xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww - xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww - xx^yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww - xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww - xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww - xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww - xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww - xx^yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww - xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww - xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww - xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww - xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww - xx^yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww - xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww - xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww - xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww - xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww - xx^yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww - xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww - xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww - xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww - xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww - xx^yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww + xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww + xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww + xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww + xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww + xx^yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww + xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww + xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww + xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww + xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww + xx^yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww + xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww + xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww + xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww + xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww + xx^yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww + xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww + xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww + xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww + xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww + xx^yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww + xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww + xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww + xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww + xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww + xx^yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww ^ xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww ^ xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww ^ xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww ^ xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww ^ xx^yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww ^ xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww ^ xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww ^ xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww ^ xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww ^ xx^yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww ^ xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww ^ xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww ^ xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww ^ xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww ^ xx^yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww ^ xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww ^ xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww ^ xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww ^ xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww ^ xx^yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww ^ xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww ^ xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww ^ xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww ^ xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww ^ xx^yy) ENDIF ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "SecretBrewJulia" seed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 eye = @eye frog = @frog hen = @hen maid = @maid bat = @bat t = @t op1 = @op1 op2 = @op2 op3 = @op3 op4 = @op4 start = @start group = @group exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 default: title = "Secret Brew" maxiter = 250 periodicity = 0 magn = 0.344 center = (1.475,-0.03) angle = 270 param bailout caption = "bailout" default = 20.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param start caption = "init z" default = 2.0 endparam param eye caption = "eye of newt" default = -1.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (-.5,0) endparam param bat caption = "bat wings" default = (0,0) endparam param maid caption = "maiden's tears" default = (0,0) endparam param t caption = "thistledown" default = (0.0,0.0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param exp5 caption = "exponent 5" default = (1,0) endparam param op1 caption = "operator 1" enum = "/""*""-""+""^" default = 2 endparam param op2 caption = "operator 2" enum = "/""*""-""+""^" default = 3 endparam param op3 caption = "operator 3" enum = "/""*""-""+""^" default = 1 endparam param op4 caption = "operator 4" enum = "/""*""-""+""^" default = 3 endparam param group caption = "grouping" default = 0 enum = "1""2""3""4" endparam func fn1 Caption = "function 1" default = exp () endfunc func fn2 Caption = "function 2" default = flip () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = tanh () endfunc func fn7 Caption = "function 7" default = ident () endfunc func fn8 Caption = "function 8" default = ident () endfunc } SecretBrewJulia { ; Toby Marshall, Jun. 2002 ; Parameters can be changed to ; change the shapes and relations of ; the fractal elements. Changing some ; functions will also alter the spirals ; interestingly in this Julia formula init: z = 2*pixel complex frog = @frog*(0.0,1.0) loop: aa = fn1(@seed^@exp5 + @maid) qq = fn2(real(fn3(z^@exp1) + @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(@seed^@exp4 +@hen) xx = @fn7(z^@exp3 + @bat) yy = @fn8(@seed+@t) IF (@op4 == 0) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww / xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww / xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww / xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww / xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww / xx/yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww * xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww * xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww * xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww * xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww * xx/yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww - xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww - xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww - xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww - xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww - xx/yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww + xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww + xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww + xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww + xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww + xx/yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww ^ xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww ^ xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww ^ xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww ^ xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww ^ xx/yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww / xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww / xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww / xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww / xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww / xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww / xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww / xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww / xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww / xx/yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww * xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww * xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww * xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww * xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww * xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww * xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww * xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww * xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww * xx/yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww - xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww - xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww - xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww - xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww - xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww - xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww - xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww - xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww - xx/yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww + xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww + xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww + xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww + xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww + xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww + xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww + xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww + xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww + xx/yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww ^ xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww ^ xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww ^ xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww ^ xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww ^ xx/yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) / xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) / xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) / xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) / xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) / xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) / xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) / xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) / xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) / xx/yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) * xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) * xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) * xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) * xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) * xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) * xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) * xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) * xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) * xx/yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) - xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) - xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) - xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) - xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) - xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) - xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) - xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) - xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) - xx/yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) + xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) + xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) + xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) + xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) + xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) + xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) + xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) + xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) + xx/yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) ^ xx/yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) ^ xx/yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) ^ xx/yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) ^ xx/yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) ^ xx/yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) ^ xx/yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) ^ xx/yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) ^ xx/yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) ^ xx/yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww / xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww / xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww / xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww / xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww / xx/yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww / xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww / xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww / xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww / xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww / xx/yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww / xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww / xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww / xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww / xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww / xx/yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww / xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww / xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww / xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww / xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww / xx/yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww / xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww / xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww / xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww / xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww / xx/yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww * xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww * xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww * xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww * xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww * xx/yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww * xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww * xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww * xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww * xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww * xx/yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww * xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww * xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww * xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww * xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww * xx/yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww * xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww * xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww * xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww * xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww * xx/yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww * xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww * xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww * xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww * xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww * xx/yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww - xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww - xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww - xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww - xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww - xx/yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww - xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww - xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww - xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww - xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww - xx/yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww - xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww - xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww - xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww - xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww - xx/yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww - xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww - xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww - xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww - xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww - xx/yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww - xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww - xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww - xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww - xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww - xx/yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww + xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww + xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww + xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww + xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww + xx/yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww + xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww + xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww + xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww + xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww + xx/yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww + xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww + xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww + xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww + xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww + xx/yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww + xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww + xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww + xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww + xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww + xx/yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww + xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww + xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww + xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww + xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww + xx/yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww ^ xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww ^ xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww ^ xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww ^ xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww ^ xx/yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww ^ xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww ^ xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww ^ xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww ^ xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww ^ xx/yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww ^ xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww ^ xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww ^ xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww ^ xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww ^ xx/yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww ^ xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww ^ xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww ^ xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww ^ xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww ^ xx/yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww ^ xx/yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww ^ xx/yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww ^ xx/yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww ^ xx/yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww ^ xx/yy) ENDIF ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww / xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww / xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww / xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww / xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww / xx*yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww * xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww * xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww * xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww * xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww * xx*yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww - xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww - xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww - xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww - xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww - xx*yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww + xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww + xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww + xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww + xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww + xx*yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww ^ xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww ^ xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww ^ xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww ^ xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww ^ xx*yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww / xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww / xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww / xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww / xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww / xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww / xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww / xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww / xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww / xx*yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww * xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww * xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww * xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww * xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww * xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww * xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww * xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww * xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww * xx*yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww - xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww - xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww - xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww - xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww - xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww - xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww - xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww - xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww - xx*yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww + xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww + xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww + xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww + xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww + xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww + xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww + xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww + xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww + xx*yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww ^ xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww ^ xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww ^ xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww ^ xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww ^ xx*yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) / xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) / xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) / xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) / xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) / xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) / xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) / xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) / xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) / xx*yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) * xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) * xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) * xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) * xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) * xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) * xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) * xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) * xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) * xx*yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) - xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) - xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) - xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) - xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) - xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) - xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) - xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) - xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) - xx*yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) + xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) + xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) + xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) + xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) + xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) + xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) + xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) + xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) + xx*yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) ^ xx*yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) ^ xx*yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) ^ xx*yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) ^ xx*yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) ^ xx*yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) ^ xx*yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) ^ xx*yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) ^ xx*yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) ^ xx*yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww / xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww / xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww / xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww / xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww / xx*yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww / xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww / xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww / xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww / xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww / xx*yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww / xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww / xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww / xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww / xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww / xx*yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww / xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww / xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww / xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww / xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww / xx*yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww / xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww / xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww / xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww / xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww / xx*yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww * xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww * xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww * xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww * xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww * xx*yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww * xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww * xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww * xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww * xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww * xx*yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww * xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww * xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww * xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww * xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww * xx*yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww * xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww * xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww * xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww * xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww * xx*yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww * xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww * xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww * xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww * xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww * xx*yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww - xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww - xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww - xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww - xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww - xx*yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww - xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww - xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww - xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww - xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww - xx*yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww - xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww - xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww - xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww - xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww - xx*yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww - xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww - xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww - xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww - xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww - xx*yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww - xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww - xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww - xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww - xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww - xx*yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww + xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww + xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww + xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww + xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww + xx*yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww + xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww + xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww + xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww + xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww + xx*yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww + xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww + xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww + xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww + xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww + xx*yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww + xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww + xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww + xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww + xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww + xx*yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww + xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww + xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww + xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww + xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww + xx*yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww ^ xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww ^ xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww ^ xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww ^ xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww ^ xx*yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww ^ xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww ^ xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww ^ xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww ^ xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww ^ xx*yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww ^ xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww ^ xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww ^ xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww ^ xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww ^ xx*yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww ^ xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww ^ xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww ^ xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww ^ xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww ^ xx*yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww ^ xx*yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww ^ xx*yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww ^ xx*yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww ^ xx*yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww ^ xx*yy) ENDIF ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww / xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww / xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww / xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww / xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww / xx-yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww * xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww * xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww * xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww * xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww * xx-yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww - xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww - xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww - xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww - xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww - xx-yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww + xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww + xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww + xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww + xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww + xx-yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww ^ xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww ^ xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww ^ xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww ^ xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww ^ xx-yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww / xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww / xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww / xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww / xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww / xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww / xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww / xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww / xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww / xx-yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww * xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww * xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww * xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww * xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww * xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww * xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww * xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww * xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww * xx-yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww - xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww - xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww - xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww - xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww - xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww - xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww - xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww - xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww - xx-yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww + xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww + xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww + xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww + xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww + xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww + xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww + xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww + xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww + xx-yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww ^ xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww ^ xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww ^ xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww ^ xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww ^ xx-yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) / xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) / xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) / xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) / xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) / xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) / xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) / xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) / xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) / xx-yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) * xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) * xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) * xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) * xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) * xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) * xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) * xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) * xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) * xx-yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) - xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) - xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) - xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) - xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) - xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) - xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) - xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) - xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) - xx-yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) + xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) + xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) + xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) + xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) + xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) + xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) + xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) + xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) + xx-yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) ^ xx-yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) ^ xx-yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) ^ xx-yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) ^ xx-yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) ^ xx-yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) ^ xx-yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) ^ xx-yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) ^ xx-yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) ^ xx-yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww / xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww / xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww / xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww / xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww / xx-yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww / xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww / xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww / xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww / xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww / xx-yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww / xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww / xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww / xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww / xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww / xx-yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww / xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww / xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww / xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww / xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww / xx-yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww / xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww / xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww / xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww / xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww / xx-yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww * xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww * xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww * xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww * xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww * xx-yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww * xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww * xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww * xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww * xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww * xx-yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww * xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww * xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww * xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww * xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww * xx-yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww * xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww * xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww * xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww * xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww * xx-yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww * xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww * xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww * xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww * xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww * xx-yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww - xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww - xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww - xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww - xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww - xx-yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww - xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww - xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww - xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww - xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww - xx-yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww - xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww - xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww - xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww - xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww - xx-yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww - xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww - xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww - xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww - xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww - xx-yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww - xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww - xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww - xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww - xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww - xx-yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww + xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww + xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww + xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww + xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww + xx-yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww + xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww + xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww + xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww + xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww + xx-yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww + xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww + xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww + xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww + xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww + xx-yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww + xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww + xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww + xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww + xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww + xx-yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww + xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww + xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww + xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww + xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww + xx-yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww ^ xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww ^ xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww ^ xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww ^ xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww ^ xx-yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww ^ xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww ^ xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww ^ xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww ^ xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww ^ xx-yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww ^ xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww ^ xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww ^ xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww ^ xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww ^ xx-yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww ^ xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww ^ xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww ^ xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww ^ xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww ^ xx-yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww ^ xx-yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww ^ xx-yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww ^ xx-yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww ^ xx-yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww ^ xx-yy) ENDIF ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww / xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww / xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww / xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww / xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww / xx+yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww * xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww * xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww * xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww * xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww * xx+yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww - xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww - xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww - xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww - xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww - xx+yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww + xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww + xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww + xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww + xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww + xx+yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww ^ xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww ^ xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww ^ xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww ^ xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww ^ xx+yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww / xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww / xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww / xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww / xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww / xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww / xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww / xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww / xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww / xx+yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww * xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww * xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww * xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww * xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww * xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww * xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww * xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww * xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww * xx+yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww - xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww - xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww - xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww - xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww - xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww - xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww - xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww - xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww - xx+yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww + xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww + xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww + xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww + xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww + xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww + xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww + xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww + xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww + xx+yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww ^ xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww ^ xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww ^ xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww ^ xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww ^ xx+yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) / xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) / xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) / xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) / xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) / xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) / xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) / xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) / xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) / xx+yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) * xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) * xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) * xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) * xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) * xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) * xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) * xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) * xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) * xx+yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) - xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) - xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) - xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) - xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) - xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) - xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) - xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) - xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) - xx+yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) + xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) + xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) + xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) + xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) + xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) + xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) + xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) + xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) + xx+yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) ^ xx+yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) ^ xx+yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) ^ xx+yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) ^ xx+yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) ^ xx+yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) ^ xx+yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) ^ xx+yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) ^ xx+yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) ^ xx+yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww / xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww / xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww / xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww / xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww / xx+yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww / xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww / xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww / xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww / xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww / xx+yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww / xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww / xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww / xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww / xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww / xx+yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww / xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww / xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww / xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww / xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww / xx+yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww / xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww / xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww / xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww / xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww / xx+yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww * xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww * xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww * xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww * xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww * xx+yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww * xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww * xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww * xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww * xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww * xx+yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww * xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww * xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww * xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww * xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww * xx+yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww * xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww * xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww * xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww * xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww * xx+yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww * xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww * xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww * xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww * xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww * xx+yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww - xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww - xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww - xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww - xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww - xx+yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww - xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww - xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww - xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww - xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww - xx+yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww - xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww - xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww - xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww - xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww - xx+yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww - xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww - xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww - xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww - xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww - xx+yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww - xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww - xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww - xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww - xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww - xx+yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww + xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww + xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww + xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww + xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww + xx+yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww + xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww + xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww + xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww + xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww + xx+yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww + xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww + xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww + xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww + xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww + xx+yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww + xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww + xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww + xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww + xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww + xx+yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww + xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww + xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww + xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww + xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww + xx+yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww ^ xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww ^ xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww ^ xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww ^ xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww ^ xx+yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww ^ xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww ^ xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww ^ xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww ^ xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww ^ xx+yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww ^ xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww ^ xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww ^ xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww ^ xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww ^ xx+yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww ^ xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww ^ xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww ^ xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww ^ xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww ^ xx+yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww ^ xx+yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww ^ xx+yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww ^ xx+yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww ^ xx+yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww ^ xx+yy) ENDIF ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww / xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww / xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww / xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww / xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww / xx^yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww * xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww * xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww * xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww * xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww * xx^yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww - xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww - xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww - xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww - xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww - xx^yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww + xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww + xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww + xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww + xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww + xx^yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / vv / ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv / ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv / ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv / ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv / ww ^ xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / vv * ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv * ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv * ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv * ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv * ww ^ xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / vv - ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv - ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv - ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv - ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv - ww ^ xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / vv + ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv + ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv + ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv + ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv + ww ^ xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / vv ^ ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * vv ^ ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - vv ^ ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + vv ^ ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ vv ^ ww ^ xx^yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww / xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww / xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww / xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww / xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww / xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww / xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww / xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww / xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww / xx^yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww * xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww * xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww * xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww * xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww * xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww * xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww * xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww * xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww * xx^yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww - xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww - xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww - xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww - xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww - xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww - xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww - xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww - xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww - xx^yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww + xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww + xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww + xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww + xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww + xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww + xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww + xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww + xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww + xx^yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq / vv) / ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) / ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) / ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) / ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) / ww ^ xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq / vv) * ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) * ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) * ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) * ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) * ww ^ xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq / vv) - ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) - ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) - ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) - ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) - ww ^ xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq / vv) + ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) + ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) + ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) + ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) + ww ^ xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq / vv) ^ ww ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq * vv) ^ ww ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq - vv) ^ ww ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq + vv) ^ ww ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq ^ vv) ^ ww ^ xx^yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) / xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) / xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) / xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) / xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) / xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) / xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) / xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) / xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) / xx^yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) * xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) * xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) * xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) * xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) * xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) * xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) * xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) * xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) * xx^yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) - xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) - xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) - xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) - xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) - xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) - xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) - xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) - xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) - xx^yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) + xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) + xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) + xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) + xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) + xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) + xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) + xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) + xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) + xx^yy ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww) ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww) ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww) ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww) ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww) ^ xx^yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww) ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww) ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww) ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww) ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww) ^ xx^yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww) ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww) ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww) ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww) ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww) ^ xx^yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww) ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww) ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww) ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww) ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww) ^ xx^yy ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww) ^ xx^yy ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww) ^ xx^yy ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww) ^ xx^yy ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww) ^ xx^yy ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww) ^ xx^yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww / xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww / xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww / xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww / xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww / xx^yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww / xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww / xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww / xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww / xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww / xx^yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww / xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww / xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww / xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww / xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww / xx^yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww / xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww / xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww / xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww / xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww / xx^yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww / xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww / xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww / xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww / xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww / xx^yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww * xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww * xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww * xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww * xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww * xx^yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww * xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww * xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww * xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww * xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww * xx^yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww * xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww * xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww * xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww * xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww * xx^yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww * xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww * xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww * xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww * xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww * xx^yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww * xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww * xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww * xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww * xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww * xx^yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww - xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww - xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww - xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww - xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww - xx^yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww - xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww - xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww - xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww - xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww - xx^yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww - xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww - xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww - xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww - xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww - xx^yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww - xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww - xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww - xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww - xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww - xx^yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww - xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww - xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww - xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww - xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww - xx^yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww + xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww + xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww + xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww + xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww + xx^yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww + xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww + xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww + xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww + xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww + xx^yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww + xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww + xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww + xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww + xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww + xx^yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww + xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww + xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww + xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww + xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww + xx^yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww + xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww + xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww + xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww + xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww + xx^yy) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa+(qq) / (vv / ww ^ xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv / ww ^ xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv / ww ^ xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv / ww ^ xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv / ww ^ xx^yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+(qq) / (vv * ww ^ xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv * ww ^ xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv * ww ^ xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv * ww ^ xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv * ww ^ xx^yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+(qq) / (vv - ww ^ xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv - ww ^ xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv - ww ^ xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv - ww ^ xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv - ww ^ xx^yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+(qq) / (vv + ww ^ xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv + ww ^ xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv + ww ^ xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv + ww ^ xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv + ww ^ xx^yy) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa+(qq) / (vv ^ ww ^ xx^yy) ELSEIF (@op1 == 1) z = aa+(qq) * (vv ^ ww ^ xx^yy) ELSEIF (@op1 == 2) z = aa+(qq) - (vv ^ ww ^ xx^yy) ELSEIF (@op1 == 3) z = aa+(qq) + (vv ^ ww ^ xx^yy) ELSEIF (@op1 == 4) z = aa+(qq) ^ (vv ^ ww ^ xx^yy) ENDIF ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "SecretBrew" bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 eye = @eye frog = @frog hen = @hen maid = @maid t = @t bat = @bat op1 = @op1 op2 = @op2 op3 = @op3 op4 = @op4 group = @group exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 default: title = "Secret Brew Julia" maxiter = 250 periodicity = 0 center = (.54, .116) magn = .536 param seed default = (.370, -.2182) endparam param bailout caption = "bailout" default = 44.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param eye caption = "eye of newt" default = -1.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (-.5,0) endparam param bat caption = "bat wings" default = (0,0) endparam param maid caption = "maiden's tears" default = (0,0) endparam param t caption = "thistledown" default = (0.0, 0.0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param exp5 caption = "exponent 5" default = (1,0) endparam param op1 caption = "operator 1" enum = "/""*""-""+""^" default = 2 endparam param op2 caption = "operator 2" enum = "/""*""-""+""^" default = 2 endparam param op3 caption = "operator 3" enum = "/""*""-""+""^" default = 1 endparam param op4 caption = "operator 4" enum = "/""*""-""+""^" default = 4 endparam param group caption = "grouping" default = 0 enum = "1""2""3""4" endparam func fn1 Caption = "function 1" default = exp () endfunc func fn2 Caption = "function 2" default = flip () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = tanh () endfunc func fn7 Caption = "function 7" default = ident () endfunc func fn8 Caption = "function 8" default = ident () endfunc } *********************************************************************** BigBrew { ; Toby Marshall, Jun. 2002 ; Use with the Julia switch. All functions ; and parameters can be varied to explore ; different Julia sets. Please see tma.txt ; for some suggested parameter sets. init: z = @start complex frog = @frog*(0.0,1.0) loop: aa = fn1((z-@t)*@fn8(#pixel-@dew)) qq = fn2(real(fn3(z^@exp1) + @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(#pixel^@exp4 +@hen) xx = @fn7(z^@exp3 + @bat) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / vv / ww / xx ELSEIF (@op1 == 1) z = aa* (qq) * vv / ww / xx ELSEIF (@op1 == 2) z = aa* (qq) - vv / ww / xx ELSEIF (@op1 == 3) z = aa* (qq) + vv / ww / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / vv * ww / xx ELSEIF (@op1 == 1) z = aa* (qq) * vv * ww / xx ELSEIF (@op1 == 2) z = aa* (qq) - vv * ww / xx ELSEIF (@op1 == 3) z = aa* (qq) + vv * ww / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / vv - ww / xx ELSEIF (@op1 == 1) z = aa* (qq) * vv - ww / xx ELSEIF (@op1 == 2) z = aa* (qq) - vv - ww / xx ELSEIF (@op1 == 3) z = aa* (qq) + vv - ww / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / vv + ww / xx ELSEIF (@op1 == 1) z = aa* (qq) * vv + ww / xx ELSEIF (@op1 == 2) z = aa* (qq) - vv + ww / xx ELSEIF (@op1 == 3) z = aa* (qq) + vv + ww / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv + ww / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / vv ^ ww / xx ELSEIF (@op1 == 1) z = aa* (qq) * vv ^ ww / xx ELSEIF (@op1 == 2) z = aa* (qq) - vv ^ ww / xx ELSEIF (@op1 == 3) z = aa* (qq) + vv ^ ww / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv ^ ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / vv / ww * xx ELSEIF (@op1 == 1) z = aa* (qq) * vv / ww * xx ELSEIF (@op1 == 2) z = aa* (qq) - vv / ww * xx ELSEIF (@op1 == 3) z = aa* (qq) + vv / ww * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / vv * ww * xx ELSEIF (@op1 == 1) z = aa* (qq) * vv * ww * xx ELSEIF (@op1 == 2) z = aa* (qq) - vv * ww * xx ELSEIF (@op1 == 3) z = aa* (qq) + vv * ww * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / vv - ww * xx ELSEIF (@op1 == 1) z = aa* (qq) * vv - ww * xx ELSEIF (@op1 == 2) z = aa* (qq) - vv - ww * xx ELSEIF (@op1 == 3) z = aa* (qq) + vv - ww * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / vv + ww * xx ELSEIF (@op1 == 1) z = aa* (qq) * vv + ww * xx ELSEIF (@op1 == 2) z = aa* (qq) - vv + ww * xx ELSEIF (@op1 == 3) z = aa* (qq) + vv + ww * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv + ww * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / vv ^ ww * xx ELSEIF (@op1 == 1) z = aa* (qq) * vv ^ ww * xx ELSEIF (@op1 == 2) z = aa* (qq) - vv ^ ww * xx ELSEIF (@op1 == 3) z = aa* (qq) + vv ^ ww * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv ^ ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / vv / ww - xx ELSEIF (@op1 == 1) z = aa* (qq) * vv / ww - xx ELSEIF (@op1 == 2) z = aa* (qq) - vv / ww - xx ELSEIF (@op1 == 3) z = aa* (qq) + vv / ww - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / vv * ww - xx ELSEIF (@op1 == 1) z = aa* (qq) * vv * ww - xx ELSEIF (@op1 == 2) z = aa* (qq) - vv * ww - xx ELSEIF (@op1 == 3) z = aa* (qq) + vv * ww - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / vv - ww - xx ELSEIF (@op1 == 1) z = aa* (qq) * vv - ww - xx ELSEIF (@op1 == 2) z = aa* (qq) - vv - ww - xx ELSEIF (@op1 == 3) z = aa* (qq) + vv - ww - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / vv + ww - xx ELSEIF (@op1 == 1) z = aa* (qq) * vv + ww - xx ELSEIF (@op1 == 2) z = aa* (qq) - vv + ww - xx ELSEIF (@op1 == 3) z = aa* (qq) + vv + ww - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv + ww - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / vv ^ ww - xx ELSEIF (@op1 == 1) z = aa* (qq) * vv ^ ww - xx ELSEIF (@op1 == 2) z = aa* (qq) - vv ^ ww - xx ELSEIF (@op1 == 3) z = aa* (qq) + vv ^ ww - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv ^ ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / vv / ww + xx ELSEIF (@op1 == 1) z = aa* (qq) * vv / ww + xx ELSEIF (@op1 == 2) z = aa* (qq) - vv / ww + xx ELSEIF (@op1 == 3) z = aa* (qq) + vv / ww + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / vv * ww + xx ELSEIF (@op1 == 1) z = aa* (qq) * vv * ww + xx ELSEIF (@op1 == 2) z = aa* (qq) - vv * ww + xx ELSEIF (@op1 == 3) z = aa* (qq) + vv * ww + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / vv - ww + xx ELSEIF (@op1 == 1) z = aa* (qq) * vv - ww + xx ELSEIF (@op1 == 2) z = aa* (qq) - vv - ww + xx ELSEIF (@op1 == 3) z = aa* (qq) + vv - ww + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / vv + ww + xx ELSEIF (@op1 == 1) z = aa* (qq) * vv + ww + xx ELSEIF (@op1 == 2) z = aa* (qq) - vv + ww + xx ELSEIF (@op1 == 3) z = aa* (qq) + vv + ww + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv + ww + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / vv ^ ww + xx ELSEIF (@op1 == 1) z = aa* (qq) * vv ^ ww + xx ELSEIF (@op1 == 2) z = aa* (qq) - vv ^ ww + xx ELSEIF (@op1 == 3) z = aa* (qq) + vv ^ ww + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv ^ ww + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / vv / ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * vv / ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - vv / ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + vv / ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv / ww ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / vv * ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * vv * ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - vv * ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + vv * ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv * ww ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / vv - ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * vv - ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - vv - ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + vv - ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv - ww ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / vv + ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * vv + ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - vv + ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + vv + ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv + ww ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / vv ^ ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * vv ^ ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - vv ^ ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + vv ^ ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv ^ ww ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv) / ww / xx ELSEIF (@op1 == 1) z = aa* (qq * vv) / ww / xx ELSEIF (@op1 == 2) z = aa* (qq - vv) / ww / xx ELSEIF (@op1 == 3) z = aa* (qq + vv) / ww / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv) * ww / xx ELSEIF (@op1 == 1) z = aa* (qq * vv) * ww / xx ELSEIF (@op1 == 2) z = aa* (qq - vv) * ww / xx ELSEIF (@op1 == 3) z = aa* (qq + vv) * ww / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv) - ww / xx ELSEIF (@op1 == 1) z = aa* (qq * vv) - ww / xx ELSEIF (@op1 == 2) z = aa* (qq - vv) - ww / xx ELSEIF (@op1 == 3) z = aa* (qq + vv) - ww / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv) + ww / xx ELSEIF (@op1 == 1) z = aa* (qq * vv) + ww / xx ELSEIF (@op1 == 2) z = aa* (qq - vv) + ww / xx ELSEIF (@op1 == 3) z = aa* (qq + vv) + ww / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) + ww / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv) ^ ww / xx ELSEIF (@op1 == 1) z = aa* (qq * vv) ^ ww / xx ELSEIF (@op1 == 2) z = aa* (qq - vv) ^ ww / xx ELSEIF (@op1 == 3) z = aa* (qq + vv) ^ ww / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) ^ ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv) / ww * xx ELSEIF (@op1 == 1) z = aa* (qq * vv) / ww * xx ELSEIF (@op1 == 2) z = aa* (qq - vv) / ww * xx ELSEIF (@op1 == 3) z = aa* (qq + vv) / ww * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv) * ww * xx ELSEIF (@op1 == 1) z = aa* (qq * vv) * ww * xx ELSEIF (@op1 == 2) z = aa* (qq - vv) * ww * xx ELSEIF (@op1 == 3) z = aa* (qq + vv) * ww * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv) - ww * xx ELSEIF (@op1 == 1) z = aa* (qq * vv) - ww * xx ELSEIF (@op1 == 2) z = aa* (qq - vv) - ww * xx ELSEIF (@op1 == 3) z = aa* (qq + vv) - ww * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv) + ww * xx ELSEIF (@op1 == 1) z = aa* (qq * vv) + ww * xx ELSEIF (@op1 == 2) z = aa* (qq - vv) + ww * xx ELSEIF (@op1 == 3) z = aa* (qq + vv) + ww * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) + ww * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv) ^ ww * xx ELSEIF (@op1 == 1) z = aa* (qq * vv) ^ ww * xx ELSEIF (@op1 == 2) z = aa* (qq - vv) ^ ww * xx ELSEIF (@op1 == 3) z = aa* (qq + vv) ^ ww * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) ^ ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv) / ww - xx ELSEIF (@op1 == 1) z = aa* (qq * vv) / ww - xx ELSEIF (@op1 == 2) z = aa* (qq - vv) / ww - xx ELSEIF (@op1 == 3) z = aa* (qq + vv) / ww - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv) * ww - xx ELSEIF (@op1 == 1) z = aa* (qq * vv) * ww - xx ELSEIF (@op1 == 2) z = aa* (qq - vv) * ww - xx ELSEIF (@op1 == 3) z = aa* (qq + vv) * ww - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv) - ww - xx ELSEIF (@op1 == 1) z = aa* (qq * vv) - ww - xx ELSEIF (@op1 == 2) z = aa* (qq - vv) - ww - xx ELSEIF (@op1 == 3) z = aa* (qq + vv) - ww - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv) + ww - xx ELSEIF (@op1 == 1) z = aa* (qq * vv) + ww - xx ELSEIF (@op1 == 2) z = aa* (qq - vv) + ww - xx ELSEIF (@op1 == 3) z = aa* (qq + vv) + ww - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) + ww - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv) ^ ww - xx ELSEIF (@op1 == 1) z = aa* (qq * vv) ^ ww - xx ELSEIF (@op1 == 2) z = aa* (qq - vv) ^ ww - xx ELSEIF (@op1 == 3) z = aa* (qq + vv) ^ ww - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) ^ ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv) / ww + xx ELSEIF (@op1 == 1) z = aa* (qq * vv) / ww + xx ELSEIF (@op1 == 2) z = aa* (qq - vv) / ww + xx ELSEIF (@op1 == 3) z = aa* (qq + vv) / ww + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv) * ww + xx ELSEIF (@op1 == 1) z = aa* (qq * vv) * ww + xx ELSEIF (@op1 == 2) z = aa* (qq - vv) * ww + xx ELSEIF (@op1 == 3) z = aa* (qq + vv) * ww + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv) - ww + xx ELSEIF (@op1 == 1) z = aa* (qq * vv) - ww + xx ELSEIF (@op1 == 2) z = aa* (qq - vv) - ww + xx ELSEIF (@op1 == 3) z = aa* (qq + vv) - ww + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv) + ww + xx ELSEIF (@op1 == 1) z = aa* (qq * vv) + ww + xx ELSEIF (@op1 == 2) z = aa* (qq - vv) + ww + xx ELSEIF (@op1 == 3) z = aa* (qq + vv) + ww + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) + ww + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv) ^ ww + xx ELSEIF (@op1 == 1) z = aa* (qq * vv) ^ ww + xx ELSEIF (@op1 == 2) z = aa* (qq - vv) ^ ww + xx ELSEIF (@op1 == 3) z = aa* (qq + vv) ^ ww + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) ^ ww + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv) / ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv) / ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv) / ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv) / ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) / ww ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv) * ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv) * ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv) * ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv) * ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) * ww ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv) - ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv) - ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv) - ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv) - ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) - ww ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv) + ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv) + ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv) + ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv) + ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) + ww ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv) ^ ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv) ^ ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv) ^ ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv) ^ ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) ^ ww ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww) / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww) / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww) / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww) / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww) / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww) / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww) * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww) * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww) * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww) * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww) * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww) * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww) - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww) - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww) - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww) - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww) - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww) - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww) + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww) + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww) + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww) + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww) + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww) + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww) + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww) ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww) ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww) ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww) ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww) ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww / xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww / xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww / xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww / xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww / xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww / xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww / xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww / xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww / xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww / xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww / xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww / xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww / xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww / xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww / xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww / xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww / xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww / xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww / xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww / xx ) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww / xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww / xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww / xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww / xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww / xx ) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww * xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww * xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww * xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww * xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww * xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww * xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww * xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww * xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww * xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww * xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww * xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww * xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww * xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww * xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww * xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww * xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww * xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww * xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww * xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww * xx ) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww * xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww * xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww * xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww * xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww * xx ) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww - xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww - xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww - xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww - xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww - xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww - xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww - xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww - xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww - xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww - xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww - xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww - xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww - xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww - xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww - xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww - xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww - xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww - xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww - xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww - xx ) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww - xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww - xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww - xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww - xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww - xx ) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww + xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww + xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww + xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww + xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww + xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww + xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww + xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww + xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww + xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww + xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww + xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww + xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww + xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww + xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww + xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww + xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww + xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww + xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww + xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww + xx ) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww + xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww + xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww + xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww + xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww + xx ) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww ^ xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww ^ xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww ^ xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww ^ xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww ^ xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww ^ xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww ^ xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww ^ xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww ^ xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww ^ xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww ^ xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww ^ xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww ^ xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww ^ xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww ^ xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww ^ xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww ^ xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww ^ xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww ^ xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww ^ xx ) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww ^ xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww ^ xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww ^ xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww ^ xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww ^ xx ) ENDIF ENDIF ENDIF ELSEIF (@group == 4); outer IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv / ww) / xx ELSEIF (@op1 == 1) z = aa* (qq * vv / ww) / xx ELSEIF (@op1 == 2) z = aa* (qq - vv / ww) / xx ELSEIF (@op1 == 3) z = aa* (qq + vv / ww) / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv * ww) / xx ELSEIF (@op1 == 1) z = aa* (qq * vv * ww) / xx ELSEIF (@op1 == 2) z = aa* (qq - vv * ww) / xx ELSEIF (@op1 == 3) z = aa* (qq + vv * ww) / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv - ww) / xx ELSEIF (@op1 == 1) z = aa* (qq * vv - ww) / xx ELSEIF (@op1 == 2) z = aa* (qq - vv - ww) / xx ELSEIF (@op1 == 3) z = aa* (qq + vv - ww) / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv + ww) / xx ELSEIF (@op1 == 1) z = aa* (qq * vv + ww) / xx ELSEIF (@op1 == 2) z = aa* (qq - vv + ww) / xx ELSEIF (@op1 == 3) z = aa* (qq + vv + ww) / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv + ww) / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv ^ ww) / xx ELSEIF (@op1 == 1) z = aa* (qq * vv ^ ww) / xx ELSEIF (@op1 == 2) z = aa* (qq - vv ^ ww) / xx ELSEIF (@op1 == 3) z = aa* (qq + vv ^ ww) / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv ^ ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv / ww) * xx ELSEIF (@op1 == 1) z = aa* (qq * vv / ww) * xx ELSEIF (@op1 == 2) z = aa* (qq - vv / ww) * xx ELSEIF (@op1 == 3) z = aa* (qq + vv / ww) * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv * ww) * xx ELSEIF (@op1 == 1) z = aa* (qq * vv * ww) * xx ELSEIF (@op1 == 2) z = aa* (qq - vv * ww) * xx ELSEIF (@op1 == 3) z = aa* (qq + vv * ww) * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv - ww) * xx ELSEIF (@op1 == 1) z = aa* (qq * vv - ww) * xx ELSEIF (@op1 == 2) z = aa* (qq - vv - ww) * xx ELSEIF (@op1 == 3) z = aa* (qq + vv - ww) * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv + ww) * xx ELSEIF (@op1 == 1) z = aa* (qq * vv + ww) * xx ELSEIF (@op1 == 2) z = aa* (qq - vv + ww) * xx ELSEIF (@op1 == 3) z = aa* (qq + vv + ww) * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv + ww) * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv ^ ww) * xx ELSEIF (@op1 == 1) z = aa* (qq * vv ^ ww) * xx ELSEIF (@op1 == 2) z = aa* (qq - vv ^ ww) * xx ELSEIF (@op1 == 3) z = aa* (qq + vv ^ ww) * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv ^ ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv / ww) - xx ELSEIF (@op1 == 1) z = aa* (qq * vv / ww) - xx ELSEIF (@op1 == 2) z = aa* (qq - vv / ww) - xx ELSEIF (@op1 == 3) z = aa* (qq + vv / ww) - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv * ww) - xx ELSEIF (@op1 == 1) z = aa* (qq * vv * ww) - xx ELSEIF (@op1 == 2) z = aa* (qq - vv * ww) - xx ELSEIF (@op1 == 3) z = aa* (qq + vv * ww) - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv - ww) - xx ELSEIF (@op1 == 1) z = aa* (qq * vv - ww) - xx ELSEIF (@op1 == 2) z = aa* (qq - vv - ww) - xx ELSEIF (@op1 == 3) z = aa* (qq + vv - ww) - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv + ww) - xx ELSEIF (@op1 == 1) z = aa* (qq * vv + ww) - xx ELSEIF (@op1 == 2) z = aa* (qq - vv + ww) - xx ELSEIF (@op1 == 3) z = aa* (qq + vv + ww) - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv + ww) - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv ^ ww) - xx ELSEIF (@op1 == 1) z = aa* (qq * vv ^ ww) - xx ELSEIF (@op1 == 2) z = aa* (qq - vv ^ ww) - xx ELSEIF (@op1 == 3) z = aa* (qq + vv ^ ww) - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv ^ ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv / ww) + xx ELSEIF (@op1 == 1) z = aa* (qq * vv / ww) + xx ELSEIF (@op1 == 2) z = aa* (qq - vv / ww) + xx ELSEIF (@op1 == 3) z = aa* (qq + vv / ww) + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv * ww) + xx ELSEIF (@op1 == 1) z = aa* (qq * vv * ww) + xx ELSEIF (@op1 == 2) z = aa* (qq - vv * ww) + xx ELSEIF (@op1 == 3) z = aa* (qq + vv * ww) + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv - ww) + xx ELSEIF (@op1 == 1) z = aa* (qq * vv - ww) + xx ELSEIF (@op1 == 2) z = aa* (qq - vv - ww) + xx ELSEIF (@op1 == 3) z = aa* (qq + vv - ww) + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv + ww) + xx ELSEIF (@op1 == 1) z = aa* (qq * vv + ww) + xx ELSEIF (@op1 == 2) z = aa* (qq - vv + ww) + xx ELSEIF (@op1 == 3) z = aa* (qq + vv + ww) + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv + ww) + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv ^ ww) + xx ELSEIF (@op1 == 1) z = aa* (qq * vv ^ ww) + xx ELSEIF (@op1 == 2) z = aa* (qq - vv ^ ww) + xx ELSEIF (@op1 == 3) z = aa* (qq + vv ^ ww) + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv ^ ww) + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv / ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv / ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv / ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv / ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv / ww) ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv * ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv * ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv * ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv * ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv * ww) ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv - ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv - ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv - ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv - ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv - ww) ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv + ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv + ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv + ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv + ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv + ww) ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv ^ ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv ^ ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv ^ ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv ^ ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv ^ ww) ^ xx ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "BigBrewJulia" seed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 eye = @eye frog = @frog hen = @hen bat = @bat op1 = @op1 op2 = @op2 op3 = @op3 exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 t = @t dew = @dew start = @start group = @group default: title = "Big Brew" maxiter = 250 periodicity = 0 param bailout caption = "bailout" default = 20.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param start caption = "init z" default = 2.0 endparam param eye caption = "eye of newt" default = -1.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (-.5,0) endparam param bat caption = "bat wings" default = (0,0) endparam param t caption = "thistledown" default = (0,0) endparam param dew caption = "dewdrops" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param op1 caption = "operator 1" enum = "/""*""-""+""^" default = 2 endparam param op2 caption = "operator 2" enum = "/""*""-""+""^" default = 2 endparam param op3 caption = "operator 3" enum = "/""*""-""+""^" default = 0 endparam param group caption = "grouping" default = 4 enum = "1""2""3""4""5" endparam func fn1 Caption = "function 1" default = ident () endfunc func fn2 Caption = "function 2" default = flip () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc func fn8 Caption = "function 8" default = ident () endfunc } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ BigBrewJulia { ; Toby Marshall, Jun. 2002 ; Functions and parameters can be changed ; to change the shapes and relations of ; the fractal elements. You can use the switch ; to get back to the original formula and it ; will carry over all functions and parameters ; of the Julia. init: z = 2*pixel complex frog = @frog*(0.0,1.0) loop: aa = fn1((z-@t)*@fn8(@seed-@dew)) qq = fn2(real(fn3(z^@exp1) + @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(@seed^@exp4 +@hen) xx = @fn7(z^@exp3 + @bat) IF (@group == 0); inner IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / vv / ww / xx ELSEIF (@op1 == 1) z = aa* (qq) * vv / ww / xx ELSEIF (@op1 == 2) z = aa* (qq) - vv / ww / xx ELSEIF (@op1 == 3) z = aa* (qq) + vv / ww / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / vv * ww / xx ELSEIF (@op1 == 1) z = aa* (qq) * vv * ww / xx ELSEIF (@op1 == 2) z = aa* (qq) - vv * ww / xx ELSEIF (@op1 == 3) z = aa* (qq) + vv * ww / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / vv - ww / xx ELSEIF (@op1 == 1) z = aa* (qq) * vv - ww / xx ELSEIF (@op1 == 2) z = aa* (qq) - vv - ww / xx ELSEIF (@op1 == 3) z = aa* (qq) + vv - ww / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / vv + ww / xx ELSEIF (@op1 == 1) z = aa* (qq) * vv + ww / xx ELSEIF (@op1 == 2) z = aa* (qq) - vv + ww / xx ELSEIF (@op1 == 3) z = aa* (qq) + vv + ww / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv + ww / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / vv ^ ww / xx ELSEIF (@op1 == 1) z = aa* (qq) * vv ^ ww / xx ELSEIF (@op1 == 2) z = aa* (qq) - vv ^ ww / xx ELSEIF (@op1 == 3) z = aa* (qq) + vv ^ ww / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv ^ ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / vv / ww * xx ELSEIF (@op1 == 1) z = aa* (qq) * vv / ww * xx ELSEIF (@op1 == 2) z = aa* (qq) - vv / ww * xx ELSEIF (@op1 == 3) z = aa* (qq) + vv / ww * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / vv * ww * xx ELSEIF (@op1 == 1) z = aa* (qq) * vv * ww * xx ELSEIF (@op1 == 2) z = aa* (qq) - vv * ww * xx ELSEIF (@op1 == 3) z = aa* (qq) + vv * ww * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / vv - ww * xx ELSEIF (@op1 == 1) z = aa* (qq) * vv - ww * xx ELSEIF (@op1 == 2) z = aa* (qq) - vv - ww * xx ELSEIF (@op1 == 3) z = aa* (qq) + vv - ww * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / vv + ww * xx ELSEIF (@op1 == 1) z = aa* (qq) * vv + ww * xx ELSEIF (@op1 == 2) z = aa* (qq) - vv + ww * xx ELSEIF (@op1 == 3) z = aa* (qq) + vv + ww * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv + ww * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / vv ^ ww * xx ELSEIF (@op1 == 1) z = aa* (qq) * vv ^ ww * xx ELSEIF (@op1 == 2) z = aa* (qq) - vv ^ ww * xx ELSEIF (@op1 == 3) z = aa* (qq) + vv ^ ww * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv ^ ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / vv / ww - xx ELSEIF (@op1 == 1) z = aa* (qq) * vv / ww - xx ELSEIF (@op1 == 2) z = aa* (qq) - vv / ww - xx ELSEIF (@op1 == 3) z = aa* (qq) + vv / ww - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / vv * ww - xx ELSEIF (@op1 == 1) z = aa* (qq) * vv * ww - xx ELSEIF (@op1 == 2) z = aa* (qq) - vv * ww - xx ELSEIF (@op1 == 3) z = aa* (qq) + vv * ww - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / vv - ww - xx ELSEIF (@op1 == 1) z = aa* (qq) * vv - ww - xx ELSEIF (@op1 == 2) z = aa* (qq) - vv - ww - xx ELSEIF (@op1 == 3) z = aa* (qq) + vv - ww - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / vv + ww - xx ELSEIF (@op1 == 1) z = aa* (qq) * vv + ww - xx ELSEIF (@op1 == 2) z = aa* (qq) - vv + ww - xx ELSEIF (@op1 == 3) z = aa* (qq) + vv + ww - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv + ww - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / vv ^ ww - xx ELSEIF (@op1 == 1) z = aa* (qq) * vv ^ ww - xx ELSEIF (@op1 == 2) z = aa* (qq) - vv ^ ww - xx ELSEIF (@op1 == 3) z = aa* (qq) + vv ^ ww - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv ^ ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / vv / ww + xx ELSEIF (@op1 == 1) z = aa* (qq) * vv / ww + xx ELSEIF (@op1 == 2) z = aa* (qq) - vv / ww + xx ELSEIF (@op1 == 3) z = aa* (qq) + vv / ww + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / vv * ww + xx ELSEIF (@op1 == 1) z = aa* (qq) * vv * ww + xx ELSEIF (@op1 == 2) z = aa* (qq) - vv * ww + xx ELSEIF (@op1 == 3) z = aa* (qq) + vv * ww + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / vv - ww + xx ELSEIF (@op1 == 1) z = aa* (qq) * vv - ww + xx ELSEIF (@op1 == 2) z = aa* (qq) - vv - ww + xx ELSEIF (@op1 == 3) z = aa* (qq) + vv - ww + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / vv + ww + xx ELSEIF (@op1 == 1) z = aa* (qq) * vv + ww + xx ELSEIF (@op1 == 2) z = aa* (qq) - vv + ww + xx ELSEIF (@op1 == 3) z = aa* (qq) + vv + ww + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv + ww + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / vv ^ ww + xx ELSEIF (@op1 == 1) z = aa* (qq) * vv ^ ww + xx ELSEIF (@op1 == 2) z = aa* (qq) - vv ^ ww + xx ELSEIF (@op1 == 3) z = aa* (qq) + vv ^ ww + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv ^ ww + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / vv / ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * vv / ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - vv / ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + vv / ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv / ww ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / vv * ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * vv * ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - vv * ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + vv * ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv * ww ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / vv - ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * vv - ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - vv - ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + vv - ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv - ww ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / vv + ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * vv + ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - vv + ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + vv + ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv + ww ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / vv ^ ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * vv ^ ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - vv ^ ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + vv ^ ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ vv ^ ww ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv) / ww / xx ELSEIF (@op1 == 1) z = aa* (qq * vv) / ww / xx ELSEIF (@op1 == 2) z = aa* (qq - vv) / ww / xx ELSEIF (@op1 == 3) z = aa* (qq + vv) / ww / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv) * ww / xx ELSEIF (@op1 == 1) z = aa* (qq * vv) * ww / xx ELSEIF (@op1 == 2) z = aa* (qq - vv) * ww / xx ELSEIF (@op1 == 3) z = aa* (qq + vv) * ww / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv) - ww / xx ELSEIF (@op1 == 1) z = aa* (qq * vv) - ww / xx ELSEIF (@op1 == 2) z = aa* (qq - vv) - ww / xx ELSEIF (@op1 == 3) z = aa* (qq + vv) - ww / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv) + ww / xx ELSEIF (@op1 == 1) z = aa* (qq * vv) + ww / xx ELSEIF (@op1 == 2) z = aa* (qq - vv) + ww / xx ELSEIF (@op1 == 3) z = aa* (qq + vv) + ww / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) + ww / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv) ^ ww / xx ELSEIF (@op1 == 1) z = aa* (qq * vv) ^ ww / xx ELSEIF (@op1 == 2) z = aa* (qq - vv) ^ ww / xx ELSEIF (@op1 == 3) z = aa* (qq + vv) ^ ww / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) ^ ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv) / ww * xx ELSEIF (@op1 == 1) z = aa* (qq * vv) / ww * xx ELSEIF (@op1 == 2) z = aa* (qq - vv) / ww * xx ELSEIF (@op1 == 3) z = aa* (qq + vv) / ww * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv) * ww * xx ELSEIF (@op1 == 1) z = aa* (qq * vv) * ww * xx ELSEIF (@op1 == 2) z = aa* (qq - vv) * ww * xx ELSEIF (@op1 == 3) z = aa* (qq + vv) * ww * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv) - ww * xx ELSEIF (@op1 == 1) z = aa* (qq * vv) - ww * xx ELSEIF (@op1 == 2) z = aa* (qq - vv) - ww * xx ELSEIF (@op1 == 3) z = aa* (qq + vv) - ww * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv) + ww * xx ELSEIF (@op1 == 1) z = aa* (qq * vv) + ww * xx ELSEIF (@op1 == 2) z = aa* (qq - vv) + ww * xx ELSEIF (@op1 == 3) z = aa* (qq + vv) + ww * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) + ww * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv) ^ ww * xx ELSEIF (@op1 == 1) z = aa* (qq * vv) ^ ww * xx ELSEIF (@op1 == 2) z = aa* (qq - vv) ^ ww * xx ELSEIF (@op1 == 3) z = aa* (qq + vv) ^ ww * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) ^ ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv) / ww - xx ELSEIF (@op1 == 1) z = aa* (qq * vv) / ww - xx ELSEIF (@op1 == 2) z = aa* (qq - vv) / ww - xx ELSEIF (@op1 == 3) z = aa* (qq + vv) / ww - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv) * ww - xx ELSEIF (@op1 == 1) z = aa* (qq * vv) * ww - xx ELSEIF (@op1 == 2) z = aa* (qq - vv) * ww - xx ELSEIF (@op1 == 3) z = aa* (qq + vv) * ww - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv) - ww - xx ELSEIF (@op1 == 1) z = aa* (qq * vv) - ww - xx ELSEIF (@op1 == 2) z = aa* (qq - vv) - ww - xx ELSEIF (@op1 == 3) z = aa* (qq + vv) - ww - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv) + ww - xx ELSEIF (@op1 == 1) z = aa* (qq * vv) + ww - xx ELSEIF (@op1 == 2) z = aa* (qq - vv) + ww - xx ELSEIF (@op1 == 3) z = aa* (qq + vv) + ww - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) + ww - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv) ^ ww - xx ELSEIF (@op1 == 1) z = aa* (qq * vv) ^ ww - xx ELSEIF (@op1 == 2) z = aa* (qq - vv) ^ ww - xx ELSEIF (@op1 == 3) z = aa* (qq + vv) ^ ww - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) ^ ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv) / ww + xx ELSEIF (@op1 == 1) z = aa* (qq * vv) / ww + xx ELSEIF (@op1 == 2) z = aa* (qq - vv) / ww + xx ELSEIF (@op1 == 3) z = aa* (qq + vv) / ww + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv) * ww + xx ELSEIF (@op1 == 1) z = aa* (qq * vv) * ww + xx ELSEIF (@op1 == 2) z = aa* (qq - vv) * ww + xx ELSEIF (@op1 == 3) z = aa* (qq + vv) * ww + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv) - ww + xx ELSEIF (@op1 == 1) z = aa* (qq * vv) - ww + xx ELSEIF (@op1 == 2) z = aa* (qq - vv) - ww + xx ELSEIF (@op1 == 3) z = aa* (qq + vv) - ww + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv) + ww + xx ELSEIF (@op1 == 1) z = aa* (qq * vv) + ww + xx ELSEIF (@op1 == 2) z = aa* (qq - vv) + ww + xx ELSEIF (@op1 == 3) z = aa* (qq + vv) + ww + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) + ww + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv) ^ ww + xx ELSEIF (@op1 == 1) z = aa* (qq * vv) ^ ww + xx ELSEIF (@op1 == 2) z = aa* (qq - vv) ^ ww + xx ELSEIF (@op1 == 3) z = aa* (qq + vv) ^ ww + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) ^ ww + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv) / ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv) / ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv) / ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv) / ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) / ww ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv) * ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv) * ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv) * ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv) * ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) * ww ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv) - ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv) - ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv) - ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv) - ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) - ww ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv) + ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv) + ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv) + ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv) + ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) + ww ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv) ^ ww ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv) ^ ww ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv) ^ ww ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv) ^ ww ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv) ^ ww ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww) / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww) / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww) / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww) / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww) / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww) / xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww) / xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww) / xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww) / xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww) * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww) * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww) * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww) * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww) * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww) * xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww) * xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww) * xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww) * xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww) - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww) - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww) - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww) - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww) - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww) - xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww) - xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww) - xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww) - xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww) + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww) + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww) + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww) + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww) + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww) + xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww) + xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww) + xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww) + xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww) + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww) ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww) ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww) ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww) ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww) ^ xx ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww / xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww / xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww / xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww / xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww / xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww / xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww / xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww / xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww / xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww / xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww / xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww / xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww / xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww / xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww / xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww / xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww / xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww / xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww / xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww / xx ) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww / xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww / xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww / xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww / xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww / xx ) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww * xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww * xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww * xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww * xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww * xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww * xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww * xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww * xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww * xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww * xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww * xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww * xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww * xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww * xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww * xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww * xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww * xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww * xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww * xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww * xx ) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww * xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww * xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww * xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww * xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww * xx ) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww - xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww - xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww - xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww - xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww - xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww - xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww - xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww - xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww - xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww - xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww - xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww - xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww - xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww - xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww - xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww - xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww - xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww - xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww - xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww - xx ) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww - xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww - xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww - xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww - xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww - xx ) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww + xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww + xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww + xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww + xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww + xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww + xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww + xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww + xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww + xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww + xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww + xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww + xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww + xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww + xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww + xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww + xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww + xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww + xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww + xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww + xx ) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww + xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww + xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww + xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww + xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww + xx ) ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq) / (vv / ww ^ xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv / ww ^ xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv / ww ^ xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv / ww ^ xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv / ww ^ xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq) / (vv * ww ^ xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv * ww ^ xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv * ww ^ xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv * ww ^ xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv * ww ^ xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq) / (vv - ww ^ xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv - ww ^ xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv - ww ^ xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv - ww ^ xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv - ww ^ xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq) / (vv + ww ^ xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv + ww ^ xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv + ww ^ xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv + ww ^ xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv + ww ^ xx ) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq) / (vv ^ ww ^ xx ) ELSEIF (@op1 == 1) z = aa* (qq) * (vv ^ ww ^ xx ) ELSEIF (@op1 == 2) z = aa* (qq) - (vv ^ ww ^ xx ) ELSEIF (@op1 == 3) z = aa* (qq) + (vv ^ ww ^ xx ) ELSEIF (@op1 == 4) z = aa* (qq) ^ (vv ^ ww ^ xx ) ENDIF ENDIF ENDIF ELSEIF (@group == 4); outer IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv / ww) / xx ELSEIF (@op1 == 1) z = aa* (qq * vv / ww) / xx ELSEIF (@op1 == 2) z = aa* (qq - vv / ww) / xx ELSEIF (@op1 == 3) z = aa* (qq + vv / ww) / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv * ww) / xx ELSEIF (@op1 == 1) z = aa* (qq * vv * ww) / xx ELSEIF (@op1 == 2) z = aa* (qq - vv * ww) / xx ELSEIF (@op1 == 3) z = aa* (qq + vv * ww) / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv - ww) / xx ELSEIF (@op1 == 1) z = aa* (qq * vv - ww) / xx ELSEIF (@op1 == 2) z = aa* (qq - vv - ww) / xx ELSEIF (@op1 == 3) z = aa* (qq + vv - ww) / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv + ww) / xx ELSEIF (@op1 == 1) z = aa* (qq * vv + ww) / xx ELSEIF (@op1 == 2) z = aa* (qq - vv + ww) / xx ELSEIF (@op1 == 3) z = aa* (qq + vv + ww) / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv + ww) / xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv ^ ww) / xx ELSEIF (@op1 == 1) z = aa* (qq * vv ^ ww) / xx ELSEIF (@op1 == 2) z = aa* (qq - vv ^ ww) / xx ELSEIF (@op1 == 3) z = aa* (qq + vv ^ ww) / xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv ^ ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv / ww) * xx ELSEIF (@op1 == 1) z = aa* (qq * vv / ww) * xx ELSEIF (@op1 == 2) z = aa* (qq - vv / ww) * xx ELSEIF (@op1 == 3) z = aa* (qq + vv / ww) * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv * ww) * xx ELSEIF (@op1 == 1) z = aa* (qq * vv * ww) * xx ELSEIF (@op1 == 2) z = aa* (qq - vv * ww) * xx ELSEIF (@op1 == 3) z = aa* (qq + vv * ww) * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv - ww) * xx ELSEIF (@op1 == 1) z = aa* (qq * vv - ww) * xx ELSEIF (@op1 == 2) z = aa* (qq - vv - ww) * xx ELSEIF (@op1 == 3) z = aa* (qq + vv - ww) * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv + ww) * xx ELSEIF (@op1 == 1) z = aa* (qq * vv + ww) * xx ELSEIF (@op1 == 2) z = aa* (qq - vv + ww) * xx ELSEIF (@op1 == 3) z = aa* (qq + vv + ww) * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv + ww) * xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv ^ ww) * xx ELSEIF (@op1 == 1) z = aa* (qq * vv ^ ww) * xx ELSEIF (@op1 == 2) z = aa* (qq - vv ^ ww) * xx ELSEIF (@op1 == 3) z = aa* (qq + vv ^ ww) * xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv ^ ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv / ww) - xx ELSEIF (@op1 == 1) z = aa* (qq * vv / ww) - xx ELSEIF (@op1 == 2) z = aa* (qq - vv / ww) - xx ELSEIF (@op1 == 3) z = aa* (qq + vv / ww) - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv * ww) - xx ELSEIF (@op1 == 1) z = aa* (qq * vv * ww) - xx ELSEIF (@op1 == 2) z = aa* (qq - vv * ww) - xx ELSEIF (@op1 == 3) z = aa* (qq + vv * ww) - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv - ww) - xx ELSEIF (@op1 == 1) z = aa* (qq * vv - ww) - xx ELSEIF (@op1 == 2) z = aa* (qq - vv - ww) - xx ELSEIF (@op1 == 3) z = aa* (qq + vv - ww) - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv + ww) - xx ELSEIF (@op1 == 1) z = aa* (qq * vv + ww) - xx ELSEIF (@op1 == 2) z = aa* (qq - vv + ww) - xx ELSEIF (@op1 == 3) z = aa* (qq + vv + ww) - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv + ww) - xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv ^ ww) - xx ELSEIF (@op1 == 1) z = aa* (qq * vv ^ ww) - xx ELSEIF (@op1 == 2) z = aa* (qq - vv ^ ww) - xx ELSEIF (@op1 == 3) z = aa* (qq + vv ^ ww) - xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv ^ ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv / ww) + xx ELSEIF (@op1 == 1) z = aa* (qq * vv / ww) + xx ELSEIF (@op1 == 2) z = aa* (qq - vv / ww) + xx ELSEIF (@op1 == 3) z = aa* (qq + vv / ww) + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv * ww) + xx ELSEIF (@op1 == 1) z = aa* (qq * vv * ww) + xx ELSEIF (@op1 == 2) z = aa* (qq - vv * ww) + xx ELSEIF (@op1 == 3) z = aa* (qq + vv * ww) + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv - ww) + xx ELSEIF (@op1 == 1) z = aa* (qq * vv - ww) + xx ELSEIF (@op1 == 2) z = aa* (qq - vv - ww) + xx ELSEIF (@op1 == 3) z = aa* (qq + vv - ww) + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv + ww) + xx ELSEIF (@op1 == 1) z = aa* (qq * vv + ww) + xx ELSEIF (@op1 == 2) z = aa* (qq - vv + ww) + xx ELSEIF (@op1 == 3) z = aa* (qq + vv + ww) + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv + ww) + xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv ^ ww) + xx ELSEIF (@op1 == 1) z = aa* (qq * vv ^ ww) + xx ELSEIF (@op1 == 2) z = aa* (qq - vv ^ ww) + xx ELSEIF (@op1 == 3) z = aa* (qq + vv ^ ww) + xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv ^ ww) + xx ENDIF ENDIF ELSEIF (@op3 == 04) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq / vv / ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv / ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv / ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv / ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv / ww) ^ xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq / vv * ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv * ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv * ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv * ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv * ww) ^ xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq / vv - ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv - ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv - ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv - ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv - ww) ^ xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq / vv + ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv + ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv + ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv + ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv + ww) ^ xx ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa* (qq / vv ^ ww) ^ xx ELSEIF (@op1 == 1) z = aa* (qq * vv ^ ww) ^ xx ELSEIF (@op1 == 2) z = aa* (qq - vv ^ ww) ^ xx ELSEIF (@op1 == 3) z = aa* (qq + vv ^ ww) ^ xx ELSEIF (@op1 == 4) z = aa* (qq ^ vv ^ ww) ^ xx ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "BigBrew" bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 eye = @eye frog = @frog bat = @bat hen = @hen op1 = @op1 op2 = @op2 op3 = @op3 exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 t = @t dew = @dew group = @group default: title = "Big Brew Julia" maxiter = 250 periodicity = 0 center = (0.36, 0.12) param seed default = (0.29,-1.01) endparam param bailout caption = "bailout" default = 20.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param eye caption = "eye of newt" default = -1.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (-.5,0) endparam param bat caption = "bat wings" default = (0,0) endparam param t caption = "thistledown" default = (0,0) endparam param dew caption = "dewdrops" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param op1 caption = "operator 1" enum = "/""*""-""+""^" default = 2 endparam param op2 caption = "operator 2" enum = "/""*""-""+""^" default = 2 endparam param op3 caption = "operator 3" enum = "/""*""-""+""^" default = 0 endparam param group caption = "grouping" default = 4 enum = "1""2""3""4""5" endparam func fn1 Caption = "function 1" default = ident () endfunc func fn2 Caption = "function 2" default = flip () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc func fn8 Caption = "function 8" default = ident () endfunc } ********************************************************************* Wizard'sBrew { ; Toby Marshall, Aug. 2002 ; The Julia switch is incorporated in this ; formula. All functions and parameters ; can be varied to explore different Julia ; sets when using it, and can also be ; changed after the Julia is set. ; If you run across a black M set try ; changing the "start/seed" value. ; Many thanks to Joe Maddry and Ken Childress ; for their invaluable help. init: complex c = #pixel complex z = @startSeed complex frog = @frog*(0.0,1.0) if (@mode == "Mandelbrot") z = @startSeed endif if @mode == "Julia" z = #pixel c = @startSeed endif loop: aa = fn1(c^@fn10(c^@exp5-@a)^@fn8(z^@exp6-@t)) qq = fn2(real(fn3(z^@exp1) - @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(c^@exp4 + @hen) xx = @fn7(z^@exp7 + @dew) yy = @fn9(c^@exp3 + @bat) IF (@group == 0); none IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww / xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww / xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww / xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww / xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww * xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww * xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww * xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww * xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww - xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww - xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww - xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww - xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww + xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww + xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww + xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww + xx / yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww / xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww / xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww / xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww / xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww * xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww * xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww * xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww * xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww - xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww - xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww - xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww - xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww + xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww + xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww + xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww + xx * yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww / xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww / xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww / xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww / xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww * xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww * xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww * xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww * xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww - xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww - xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww - xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww - xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww + xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww + xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww + xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww + xx - yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww / xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww / xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww / xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww / xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww * xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww * xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww * xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww * xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww - xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww - xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww - xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww - xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww + xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww + xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww + xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww + xx + yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww / xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww / xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww / xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww / xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww * xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww * xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww * xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww * xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww - xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww - xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww - xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww - xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww + xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv / ww + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww + xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv * ww + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww + xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv - ww + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww + xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv + ww + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 1); first2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww / xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww / xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww / xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww / xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww * xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww * xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww * xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww * xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww - xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww - xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww - xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww - xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww + xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww + xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww + xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww + xx / yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww / xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww / xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww / xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww / xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww * xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww * xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww * xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww * xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww - xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww - xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww - xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww - xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww + xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww + xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww + xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww + xx * yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww / xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww / xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww / xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww / xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww * xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww * xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww * xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww * xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww - xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww - xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww - xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww - xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww + xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww + xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww + xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww + xx - yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww / xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww / xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww / xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww / xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww * xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww * xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww * xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww * xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww - xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww - xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww - xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww - xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww + xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww + xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww + xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww + xx + yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 2); first3 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww / xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww / xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww / xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww / xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww * xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww * xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww * xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww * xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww - xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww - xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww - xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww - xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww + xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww + xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww + xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww + xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww / xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww / xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww / xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww / xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww * xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww * xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww * xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww * xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww - xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww - xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww - xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww - xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww + xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww + xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww + xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww + xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww / xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww / xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww / xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww / xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww * xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww * xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww * xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww * xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww - xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww - xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww - xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww - xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww + xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww + xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww + xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww + xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww / xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww / xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww / xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww / xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww * xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww * xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww * xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww * xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww - xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww - xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww - xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww - xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww + xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww + xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww + xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww + xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 3); first4 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) / xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) / xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) / xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) / xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) * xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) * xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) * xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) * xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) - xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) - xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) - xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) - xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) + xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) + xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) + xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) + xx / yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) / xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) / xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) / xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) / xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) * xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) * xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) * xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) * xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) - xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) - xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) - xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) - xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) + xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) + xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) + xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) + xx * yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) / xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) / xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) / xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) / xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) * xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) * xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) * xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) * xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) - xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) - xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) - xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) - xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) + xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) + xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) + xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) + xx - yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) / xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) / xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) / xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) / xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) * xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) * xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) * xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) * xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) - xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) - xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) - xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) - xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) + xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) + xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) + xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) + xx + yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) / xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) * xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) - xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) + xx ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 4); first5 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww / xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww / xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww / xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww / xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww * xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww * xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww * xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww * xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww - xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww - xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww - xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww - xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww + xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww + xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww + xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww + xx) / yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww / xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww / xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww / xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww / xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww * xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww * xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww * xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww * xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww - xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww - xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww - xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww - xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww + xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww + xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww + xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww + xx) * yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww / xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww / xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww / xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww / xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww * xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww * xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww * xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww * xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww - xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww - xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww - xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww - xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww + xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww + xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww + xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww + xx) - yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww / xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww / xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww / xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww / xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww * xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww * xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww * xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww * xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww - xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww - xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww - xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww - xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww + xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww + xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww + xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww + xx) + yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww + xx) + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww / xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww / xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww / xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww / xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww * xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww * xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww * xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww * xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww - xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww - xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww - xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww - xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv / ww + xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv * ww + xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv - ww + xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq - vv + ww + xx) ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 5); second2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww / xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww / xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww / xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww / xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww * xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww * xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww * xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww * xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww - xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww - xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww - xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww - xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww + xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww + xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww + xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww + xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww / xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww / xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww / xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww / xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww * xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww * xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww * xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww * xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww - xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww - xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww - xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww - xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww + xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww + xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww + xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww + xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww / xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww / xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww / xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww / xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww * xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww * xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww * xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww * xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww - xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww - xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww - xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww - xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww + xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww + xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww + xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww + xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww / xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww / xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww / xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww / xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww * xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww * xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww * xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww * xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww - xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww - xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww - xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww - xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww + xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww + xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww + xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww + xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww / xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww / xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww / xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww / xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww * xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww * xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww * xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww * xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww - xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww - xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww - xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww - xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww + xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww + xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww + xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww + xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 6); second3 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) / xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) / xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) / xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) / xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) * xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) * xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) * xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) * xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) - xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) - xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) - xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) - xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) + xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) + xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) + xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) + xx / yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) / xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) / xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) / xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) / xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) * xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) * xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) * xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) * xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) - xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) - xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) - xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) - xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) + xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) + xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) + xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) + xx * yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) / xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) / xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) / xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) / xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) * xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) * xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) * xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) * xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) - xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) - xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) - xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) - xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) + xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) + xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) + xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) + xx - yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) / xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) / xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) / xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) / xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) * xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) * xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) * xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) * xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) - xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) - xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) - xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) - xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) + xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) + xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) + xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) + xx + yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 7); second4 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx) / yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx) * yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx) - yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx) + yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx) + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx) ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 8); second5 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx / yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx / yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx / yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx / yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx / yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx * yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx * yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx * yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx * yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx * yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx - yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx - yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx - yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx - yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx - yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx + yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx + yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx + yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx + yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx + yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx ^ yy) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx ^ yy) ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 9); third2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) / xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) / xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) / xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) / xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) * xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) * xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) * xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) * xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) - xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) - xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) - xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) - xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) + xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) + xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) + xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) + xx / yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) / xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) / xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) / xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) / xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) * xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) * xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) * xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) * xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) - xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) - xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) - xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) - xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) + xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) + xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) + xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) + xx * yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) / xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) / xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) / xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) / xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) * xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) * xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) * xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) * xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) - xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) - xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) - xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) - xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) + xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) + xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) + xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) + xx - yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) / xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) / xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) / xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) / xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) * xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) * xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) * xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) * xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) - xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) - xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) - xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) - xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) + xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) + xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) + xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) + xx + yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 10); third3 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww / xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww / xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww / xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww / xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww * xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww * xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww * xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww * xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww - xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww - xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww - xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww - xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww + xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww + xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww + xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww + xx) / yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww / xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww / xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww / xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww / xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww * xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww * xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww * xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww * xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww - xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww - xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww - xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww - xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww + xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww + xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww + xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww + xx) * yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww / xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww / xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww / xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww / xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww * xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww * xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww * xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww * xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww - xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww - xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww - xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww - xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww + xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww + xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww + xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww + xx) - yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww / xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww / xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww / xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww / xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww * xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww * xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww * xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww * xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww - xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww - xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww - xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww - xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww + xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww + xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww + xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww + xx) + yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww + xx) + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww / xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww / xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww / xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww / xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww * xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww * xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww * xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww * xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww - xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww - xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww - xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww - xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv / ww + xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv * ww + xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv - ww + xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - (vv + ww + xx) ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 11); fourth2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww / xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww / xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww / xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww / xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww * xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww * xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww * xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww * xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww - xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww - xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww - xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww - xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww + xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww + xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww + xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww + xx) / yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww / xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww / xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww / xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww / xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww * xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww * xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww * xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww * xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww - xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww - xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww - xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww - xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww + xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww + xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww + xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww + xx) * yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww / xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww / xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww / xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww / xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww * xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww * xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww * xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww * xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww - xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww - xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww - xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww - xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww + xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww + xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww + xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww + xx) - yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww / xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww / xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww / xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww / xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww * xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww * xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww * xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww * xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww - xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww - xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww - xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww - xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww + xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww + xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww + xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww + xx) + yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww + xx) + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww / xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww / xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww / xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww / xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww * xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww * xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww * xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww * xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww - xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww - xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww - xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww - xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv / (ww + xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv * (ww + xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv - (ww + xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa - qq - vv + (ww + xx) ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 12); combo1 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww / xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww / xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww / xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww / xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww * xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww * xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww * xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww * xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww - xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww - xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww - xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww - xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww + xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww + xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww + xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww + xx) / yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww / xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww / xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww / xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww / xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww * xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww * xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww * xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww * xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww - xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww - xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww - xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww - xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww + xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww + xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww + xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww + xx) * yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww / xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww / xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww / xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww / xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww * xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww * xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww * xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww * xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww - xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww - xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww - xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww - xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww + xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww + xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww + xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww + xx) - yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww / xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww / xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww / xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww / xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww * xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww * xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww * xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww * xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww - xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww - xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww - xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww - xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww + xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww + xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww + xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww + xx) + yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww + xx) + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww / xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww / xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww / xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww / xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww * xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww * xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww * xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww * xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww - xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww - xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww - xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww - xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww + xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww + xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww + xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww + xx) ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 13); combo2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww / xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww / xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww / xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww / xx / yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww * xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww * xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww * xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww * xx / yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww - xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww - xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww - xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww - xx / yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww + xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww + xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww + xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww + xx / yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww / xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww / xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww / xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww / xx * yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww * xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww * xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww * xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww * xx * yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww - xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww - xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww - xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww - xx * yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww + xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww + xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww + xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww + xx * yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww / xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww / xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww / xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww / xx - yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww * xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww * xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww * xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww * xx - yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww - xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww - xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww - xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww - xx - yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww + xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww + xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww + xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww + xx - yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww / xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww / xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww / xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww / xx + yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww * xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww * xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww * xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww * xx + yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww - xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww - xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww - xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww - xx + yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww + xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww + xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww + xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww + xx + yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww / xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww / xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww / xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww / xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww / xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww / xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww / xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww / xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww * xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww * xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww * xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww * xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww * xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww * xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww * xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww * xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww - xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww - xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww - xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww - xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww - xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww - xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww - xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww - xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww + xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww + xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww + xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww + xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww + xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww + xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww + xx ^ yy) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww + xx ^ yy) ENDIF ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "Wizard'sBrew" startSeed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 fn9 = @fn9 fn10 = @fn10 eye = @eye frog = @frog hen = @hen bat = @bat t = @t dew = @dew a = @a op1 = @op1 op2 = @op2 op3 = @op3 op4 = @op4 exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 exp6 = @exp6 exp7 = @exp7 group = @group mode = switchMode switchMode = mode default: title = "Wizard's Brew" maxiter = 250 periodicity = 0 center = (0 , 0) magn = 1.3 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam complex param startSeed caption = "Start/Seed" default = (0,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param bailout caption = "bailout" default = 10.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param eye caption = "eye of newt" default = 0.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (0,0) endparam param bat caption = "bat wings" default = (0,0) endparam param a caption = "crab apples" default = (0,0) endparam param dew caption = "dewdrops" default = (0,0) endparam param t caption = "toadstools" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param exp5 caption = "exponent 5" default = (1,0) endparam param exp6 caption = "exponent 6" default = (1,0) endparam param exp7 caption = "exponent 7" default = (1,0) endparam param op1 caption = "operator 1" enum = "*""-""+" default = 1 endparam param op2 caption = "operator 2" enum = "/""*""-""+" default = 1 endparam param op3 caption = "operator 3" enum = "/""*""-""+" default = 1 endparam param op4 caption = "operator 4" enum = "/""*""-""+""^" default = 2 endparam param group caption = "grouping" default = 10 enum = "none""first2""first3""first4""first5""second2""second3"\ "second4""second5""third2""third3""fourth2""combo1""combo2" endparam func fn1 Caption = "function 1" default = log () endfunc func fn2 Caption = "function 2" default = ident () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc func fn8 Caption = "function 8" default = ident () endfunc func fn9 Caption = "function 9" default = ident () endfunc func fn10 Caption = "function 10" default = ident () endfunc } ********************************************************************* Warlock'sBrew { ; Toby Marshall, Aug. 2002 ; The Julia switch is incorporated in this ; formula. All functions and parameters ; can be varied to explore different Julia ; sets when using it, and can also be ; changed after the Julia is set. ; If you run across a black M set try ; changing the "start/seed" value. ; Many thanks to Joe Maddry and Ken Childress ; for their invaluable help init: complex frog = @frog*(0.0,1.0) complex c = #pixel complex z = @startSeed complex frog = @frog*(0.0,1.0) if (@mode == "Mandelbrot") z = @startSeed endif if @mode == "Julia" z = #pixel c = @startSeed endif loop: aa = fn1(c^@fn10(c^@exp5-@a)^@fn8(z^@exp6-@t)) qq = fn2(real(fn3(z^@exp1) - @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(c^@exp4 + @hen) xx = @fn7(z^@exp7 + @dew) yy = @fn9(c^@exp3 + @bat) IF (@group == 0); none IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww / xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww / xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww / xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww / xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww * xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww * xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww * xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww * xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww - xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww - xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww - xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww - xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww + xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww + xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww + xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww + xx / yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww / xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww / xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww / xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww / xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww * xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww * xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww * xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww * xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww - xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww - xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww - xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww - xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww + xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww + xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww + xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww + xx * yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww / xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww / xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww / xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww / xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww * xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww * xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww * xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww * xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww - xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww - xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww - xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww - xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww + xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww + xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww + xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww + xx - yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww / xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww / xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww / xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww / xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww * xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww * xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww * xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww * xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww - xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww - xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww - xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww - xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / ww + xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv / ww + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * ww + xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv * ww + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - ww + xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv - ww + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + ww + xx + yy ELSEIF (@op1 == 1) z = aa* qq - vv + ww + xx + yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 1); first4 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) / xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) / xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) / xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) / xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) * xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) * xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) * xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) * xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) - xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) - xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) - xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) - xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) + xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) + xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) + xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) + xx / yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) / xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) / xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) / xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) / xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) * xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) * xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) * xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) * xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) - xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) - xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) - xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) - xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) + xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) + xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) + xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) + xx * yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) / xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) / xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) / xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) / xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) * xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) * xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) * xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) * xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) - xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) - xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) - xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) - xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) + xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) + xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) + xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) + xx - yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) / xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) / xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) / xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) / xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) * xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) * xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) * xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) * xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) - xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) - xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) - xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) - xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww) + xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww) + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww) + xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww) + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww) + xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww) + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww) + xx + yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww) + xx + yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 2); first5 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww / xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww / xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww / xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww / xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww * xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww * xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww * xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww * xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww - xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww - xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww - xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww - xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww + xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww + xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww + xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww + xx) / yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww / xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww / xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww / xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww / xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww * xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww * xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww * xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww * xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww - xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww - xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww - xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww - xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww + xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww + xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww + xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww + xx) * yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww / xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww / xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww / xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww / xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww * xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww * xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww * xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww * xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww - xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww - xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww - xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww - xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww + xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww + xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww + xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww + xx) - yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww / xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww / xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww / xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww / xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww * xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww * xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww * xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww * xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww - xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww - xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww - xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww - xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv / ww + xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv / ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv * ww + xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv * ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv - ww + xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv - ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv + ww + xx) + yy ELSEIF (@op1 == 1) z = (aa* qq - vv + ww + xx) + yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 3); second2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww / xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww / xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww / xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww / xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww * xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww * xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww * xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww * xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww - xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww - xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww - xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww - xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww + xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww + xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww + xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww + xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww / xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww / xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww / xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww / xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww * xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww * xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww * xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww * xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww - xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww - xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww - xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww - xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww + xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww + xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww + xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww + xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww / xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww / xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww / xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww / xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww * xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww * xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww * xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww * xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww - xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww - xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww - xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww - xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww + xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww + xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww + xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww + xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww / xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww / xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww / xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww / xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww * xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww * xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww * xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww * xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww - xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww - xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww - xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww - xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv) / ww + xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) / ww + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv) * ww + xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) * ww + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv) - ww + xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) - ww + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv) + ww + xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv) + ww + xx + yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 4); second3 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) / xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) / xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) / xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) / xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) * xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) * xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) * xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) * xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) - xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) - xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) - xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) - xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) + xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) + xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) + xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) + xx / yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) / xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) / xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) / xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) / xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) * xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) * xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) * xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) * xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) - xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) - xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) - xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) - xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) + xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) + xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) + xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) + xx * yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) / xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) / xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) / xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) / xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) * xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) * xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) * xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) * xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) - xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) - xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) - xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) - xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) + xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) + xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) + xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) + xx - yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) / xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) / xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) / xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) / xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) * xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) * xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) * xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) * xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) - xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) - xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) - xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) - xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww) + xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww) + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww) + xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww) + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww) + xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww) + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww) + xx + yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww) + xx + yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 5); second4 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww / xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww / xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww / xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww / xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww * xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww * xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww * xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww * xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww - xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww - xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww - xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww - xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww + xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww + xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww + xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww + xx) / yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww / xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww / xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww / xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww / xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww * xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww * xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww * xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww * xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww - xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww - xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww - xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww - xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww + xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww + xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww + xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww + xx) * yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww / xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww / xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww / xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww / xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww * xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww * xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww * xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww * xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww - xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww - xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww - xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww - xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww + xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww + xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww + xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww + xx) - yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww / xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww / xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww / xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww / xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww * xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww * xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww * xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww * xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww - xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww - xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww - xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww - xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww + xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv / ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww + xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv * ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww + xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv - ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww + xx) + yy ELSEIF (@op1 == 1) z = aa* (qq - vv + ww + xx) + yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 6); second5 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww / xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww / xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww / xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww / xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww / xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww / xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww / xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww / xx / yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww * xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww * xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww * xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww * xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww * xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww * xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww * xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww * xx / yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww - xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww - xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww - xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww - xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww - xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww - xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww - xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww - xx / yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww + xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww + xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww + xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww + xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww + xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww + xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww + xx / yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww + xx / yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww / xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww / xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww / xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww / xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww / xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww / xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww / xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww / xx * yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww * xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww * xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww * xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww * xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww * xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww * xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww * xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww * xx * yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww - xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww - xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww - xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww - xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww - xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww - xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww - xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww - xx * yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww + xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww + xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww + xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww + xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww + xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww + xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww + xx * yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww + xx * yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww / xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww / xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww / xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww / xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww / xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww / xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww / xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww / xx - yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww * xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww * xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww * xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww * xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww * xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww * xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww * xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww * xx - yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww - xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww - xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww - xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww - xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww - xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww - xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww - xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww - xx - yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww + xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww + xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww + xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww + xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww + xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww + xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww + xx - yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww + xx - yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww / xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww / xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww / xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww / xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww / xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww / xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww / xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww / xx + yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww * xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww * xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww * xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww * xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww * xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww * xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww * xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww * xx + yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww - xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww - xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww - xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww - xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww - xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww - xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww - xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww - xx + yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* (qq * vv / ww + xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv / ww + xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* (qq * vv * ww + xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv * ww + xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* (qq * vv - ww + xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv - ww + xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* (qq * vv + ww + xx + yy) ELSEIF (@op1 == 1) z = aa* (qq - vv + ww + xx + yy) ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 7); third2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) / xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) / xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) / xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) / xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) * xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) * xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) * xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) * xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) - xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) - xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) - xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) - xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) + xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) + xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) + xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) + xx / yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) / xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) / xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) / xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) / xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) * xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) * xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) * xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) * xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) - xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) - xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) - xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) - xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) + xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) + xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) + xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) + xx * yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) / xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) / xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) / xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) / xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) * xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) * xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) * xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) * xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) - xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) - xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) - xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) - xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) + xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) + xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) + xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) + xx - yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) / xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) / xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) / xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) / xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) * xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) * xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) * xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) * xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) - xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) - xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) - xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) - xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww) + xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww) + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww) + xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww) + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww) + xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww) + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww) + xx + yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww) + xx + yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 8); third3 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww / xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww / xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww / xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww / xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww * xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww * xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww * xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww * xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww - xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww - xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww - xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww - xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww + xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww + xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww + xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww + xx) / yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww / xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww / xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww / xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww / xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww * xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww * xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww * xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww * xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww - xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww - xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww - xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww - xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww + xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww + xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww + xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww + xx) * yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww / xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww / xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww / xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww / xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww * xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww * xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww * xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww * xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww - xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww - xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww - xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww - xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww + xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww + xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww + xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww + xx) - yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww / xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww / xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww / xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww / xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww * xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww * xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww * xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww * xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww - xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww - xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww - xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww - xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * (vv / ww + xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv / ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * (vv * ww + xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv * ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * (vv - ww + xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv - ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * (vv + ww + xx) + yy ELSEIF (@op1 == 1) z = aa* qq - (vv + ww + xx) + yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 9); fourth2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww / xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww / xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww / xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww / xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww * xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww * xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww * xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww * xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww - xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww - xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww - xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww - xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww + xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww + xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww + xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww + xx) / yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww / xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww / xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww / xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww / xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww * xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww * xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww * xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww * xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww - xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww - xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww - xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww - xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww + xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww + xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww + xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww + xx) * yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww / xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww / xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww / xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww / xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww * xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww * xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww * xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww * xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww - xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww - xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww - xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww - xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww + xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww + xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww + xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww + xx) - yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww / xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww / xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww / xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww / xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww * xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww * xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww * xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww * xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww - xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww - xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww - xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww - xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa* qq * vv / (ww + xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv / (ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa* qq * vv * (ww + xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv * (ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa* qq * vv - (ww + xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv - (ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa* qq * vv + (ww + xx) + yy ELSEIF (@op1 == 1) z = aa* qq - vv + (ww + xx) + yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 10); combo1 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww / xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww / xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww / xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww / xx / yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww * xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww * xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww * xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww * xx / yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww - xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww - xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww - xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww - xx / yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww + xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww + xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww + xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww + xx / yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww / xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww / xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww / xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww / xx * yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww * xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww * xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww * xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww * xx * yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww - xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww - xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww - xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww - xx * yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww + xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww + xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww + xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww + xx * yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww / xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww / xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww / xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww / xx - yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww * xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww * xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww * xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww * xx - yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww - xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww - xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww - xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww - xx - yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww + xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww + xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww + xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww + xx - yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww / xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww / xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww / xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww / xx + yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww * xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww * xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww * xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww * xx + yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww - xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww - xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww - xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww - xx + yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa* qq * vv) / (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) / (ww + xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa* qq * vv) * (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) * (ww + xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa* qq * vv) - (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) - (ww + xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa* qq * vv) + (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa* qq - vv) + (ww + xx + yy) ENDIF ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "Warlock'sBrew" bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 fn9 = @fn9 fn10 = @fn10 eye = @eye frog = @frog hen = @hen bat = @bat t = @t dew = @dew a = @a op1 = @op1 op2 = @op2 op3 = @op3 op4 = @op4 exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 exp6 = @exp6 exp7 = @exp7 group = @group startSeed = #pixel mode = switchMode switchMode = mode default: title = "Warlock's Brew" maxiter = 250 periodicity = 0 center = (0.5 , 0) magn = 1 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam complex param startSeed caption = "Start/Seed" default = (0,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param bailout caption = "bailout" default = 10.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param eye caption = "eye of newt" default = 0.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (0,0) endparam param bat caption = "bat wings" default = (0,0) endparam param a caption = "crab apples" default = (0,0) endparam param dew caption = "dewdrops" default = (0,0) endparam param t caption = "toadstools" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param exp5 caption = "exponent 5" default = (1,0) endparam param exp6 caption = "exponent 6" default = (1,0) endparam param exp7 caption = "exponent 7" default = (1,0) endparam param op1 caption = "operator 1" enum = "*""-""+" default = 1 endparam param op2 caption = "operator 2" enum = "/""*""-""+" default = 3 endparam param op3 caption = "operator 3" enum = "/""*""-""+" default = 2 endparam param op4 caption = "operator 4" enum = "/""*""-""+" default = 3 endparam param group caption = "grouping" default = 4 enum = "none""first4""first5""second2""second3"\ "second4""second5""third2""third3""fourth2""combo" endparam func fn1 Caption = "function 1" default = log () endfunc func fn2 Caption = "function 2" default = ident () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc func fn8 Caption = "function 8" default = ident () endfunc func fn9 Caption = "function 9" default = ident () endfunc func fn10 Caption = "function 10" default = ident () endfunc } ********************************************************************* Ogre'sBrew { ; Toby Marshall, Aug. 2002 ; The Julia switch is incorporated in this ; formula. All functions and parameters ; can be varied to explore different Julia ; sets when using it, and can also be ; changed after the Julia is set. ; If you run across a black M set try ; changing the "start/seed" value. ; Many thanks to Joe Maddry and Ken Childress ; for their invaluable help init: complex frog = @frog*(0.0,1.0) complex c = #pixel complex z = @startSeed complex frog = @frog*(0.0,1.0) if (@mode == "Mandelbrot") z = @startSeed endif if @mode == "Julia" z = #pixel c = @startSeed endif loop: aa = fn1(c^@fn10(c^@exp5-@a)^@fn8(z^@exp6-@t)) qq = fn2(real(fn3(z^@exp1) - @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(c^@exp4 + @hen) xx = @fn7(z^@exp7 + @dew) yy = @fn9(c^@exp3 + @bat) IF (@group == 0); none IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww / xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww / xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww / xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww / xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww * xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww * xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww * xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww * xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww - xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww - xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww - xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww - xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww + xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww + xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww + xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww + xx / yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww / xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww / xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww / xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww / xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww * xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww * xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww * xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww * xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww - xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww - xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww - xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww - xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww + xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww + xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww + xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww + xx * yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww / xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww / xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww / xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww / xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww * xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww * xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww * xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww * xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww - xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww - xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww - xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww - xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww + xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww + xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww + xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww + xx - yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww / xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww / xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww / xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww / xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww * xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww * xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww * xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww * xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww - xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww - xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww - xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww - xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww + xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww + xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww + xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww + xx + yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww / xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww / xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww / xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww / xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww * xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww * xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww * xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww * xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww - xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww - xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww - xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww - xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / ww + xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv / ww + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * ww + xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv * ww + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - ww + xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv - ww + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + ww + xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv + ww + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 1); first2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * vv / ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv / ww + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * vv * ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv * ww + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * vv - ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv - ww + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * vv + ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - vv + ww + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 2); first3 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) / ww + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) * ww + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) - ww + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + ww + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv) + ww + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 3); first4 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) / xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) * xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) - xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) + xx / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) / xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) * xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) - xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) + xx * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) / xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) * xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) - xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) + xx - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) / xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) * xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) - xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) + xx + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) / xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) * xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) - xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww) + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww) + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww) + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww) + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww) + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww) + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww) + xx ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww) + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 4); first5 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww / xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww / xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww / xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww / xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww * xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww * xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww * xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww * xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww - xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww - xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww - xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww - xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww + xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww + xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww + xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww + xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww / xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww / xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww / xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww / xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww * xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww * xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww * xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww * xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww - xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww - xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww - xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww - xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww + xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww + xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww + xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww + xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww / xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww / xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww / xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww / xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww * xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww * xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww * xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww * xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww - xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww - xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww - xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww - xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww + xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww + xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww + xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww + xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww / xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww / xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww / xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww / xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww * xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww * xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww * xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww * xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww - xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww - xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww - xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww - xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww + xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww + xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww + xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww + xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww + xx) + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww / xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww / xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww / xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww / xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww * xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww * xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww * xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww * xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww - xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww - xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww - xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww - xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv / ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv / ww + xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv * ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv * ww + xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv - ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv - ww + xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv + ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq - vv + ww + xx) ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 5); second2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww / xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww / xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww / xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww / xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww * xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww * xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww * xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww * xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww - xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww - xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww - xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww - xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww + xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww + xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww + xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww + xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww / xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww / xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww / xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww / xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww * xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww * xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww * xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww * xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww - xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww - xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww - xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww - xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww + xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww + xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww + xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww + xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww / xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww / xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww / xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww / xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww * xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww * xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww * xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww * xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww - xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww - xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww - xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww - xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww + xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww + xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww + xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww + xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww / xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww / xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww / xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww / xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww * xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww * xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww * xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww * xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww - xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww - xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww - xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww - xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww + xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww + xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww + xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww + xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww / xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww / xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww / xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww / xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww * xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww * xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww * xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww * xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww - xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww - xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww - xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww - xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv) / ww + xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) / ww + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv) * ww + xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) * ww + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv) - ww + xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) - ww + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv) + ww + xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv) + ww + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 6); second3 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) / xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) / xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) / xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) / xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) * xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) * xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) * xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) * xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) - xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) - xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) - xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) - xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) + xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) + xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) + xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) + xx / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) / xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) / xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) / xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) / xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) * xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) * xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) * xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) * xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) - xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) - xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) - xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) - xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) + xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) + xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) + xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) + xx * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) / xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) / xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) / xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) / xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) * xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) * xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) * xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) * xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) - xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) - xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) - xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) - xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) + xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) + xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) + xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) + xx - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) / xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) / xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) / xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) / xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) * xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) * xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) * xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) * xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) - xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) - xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) - xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) - xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) + xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) + xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) + xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) + xx + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww) + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww) + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww) + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww) + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 7); second4 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww + xx) + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww / xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww / xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww / xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww / xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww * xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww * xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww * xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww * xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww - xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww - xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww - xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww - xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww + xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww + xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww + xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww + xx) ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 8); second5 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww / xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww / xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww / xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww / xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww / xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww / xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww / xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww / xx / yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww * xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww * xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww * xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww * xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww * xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww * xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww * xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww * xx / yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww - xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww - xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww - xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww - xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww - xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww - xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww - xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww - xx / yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww + xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww + xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww + xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww + xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww + xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww + xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww + xx / yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww + xx / yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww / xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww / xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww / xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww / xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww / xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww / xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww / xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww / xx * yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww * xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww * xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww * xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww * xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww * xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww * xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww * xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww * xx * yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww - xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww - xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww - xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww - xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww - xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww - xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww - xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww - xx * yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww + xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww + xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww + xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww + xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww + xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww + xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww + xx * yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww + xx * yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww / xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww / xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww / xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww / xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww / xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww / xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww / xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww / xx - yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww * xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww * xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww * xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww * xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww * xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww * xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww * xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww * xx - yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww - xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww - xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww - xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww - xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww - xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww - xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww - xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww - xx - yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww + xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww + xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww + xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww + xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww + xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww + xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww + xx - yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww + xx - yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww / xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww / xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww / xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww / xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww / xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww / xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww / xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww / xx + yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww * xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww * xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww * xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww * xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww * xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww * xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww * xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww * xx + yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww - xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww - xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww - xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww - xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww - xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww - xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww - xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww - xx + yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww + xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww + xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww + xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww + xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww + xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww + xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww + xx + yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww + xx + yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww / xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww / xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww / xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww / xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww / xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww / xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww / xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww / xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww * xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww * xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww * xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww * xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww * xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww * xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww * xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww * xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww - xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww - xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww - xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww - xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww - xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww - xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww - xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww - xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ (qq * vv / ww + xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv / ww + xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ (qq * vv * ww + xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv * ww + xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ (qq * vv - ww + xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv - ww + xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ (qq * vv + ww + xx ^ yy) ELSEIF (@op1 == 1) z = aa+ (qq - vv + ww + xx ^ yy) ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 9); third2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) / xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) / xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) / xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) / xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) / xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) / xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) / xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) / xx / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) * xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) * xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) * xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) * xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) * xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) * xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) * xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) * xx / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) - xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) - xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) - xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) - xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) - xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) - xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) - xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) - xx / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) + xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) + xx / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) + xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) + xx / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) + xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) + xx / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) + xx / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) + xx / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) / xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) / xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) / xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) / xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) / xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) / xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) / xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) / xx * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) * xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) * xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) * xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) * xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) * xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) * xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) * xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) * xx * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) - xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) - xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) - xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) - xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) - xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) - xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) - xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) - xx * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) + xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) + xx * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) + xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) + xx * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) + xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) + xx * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) + xx * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) + xx * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) / xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) / xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) / xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) / xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) / xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) / xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) / xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) / xx - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) * xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) * xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) * xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) * xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) * xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) * xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) * xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) * xx - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) - xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) - xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) - xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) - xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) - xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) - xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) - xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) - xx - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) + xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) + xx - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) + xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) + xx - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) + xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) + xx - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) + xx - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) + xx - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) / xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) / xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) / xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) / xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) / xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) / xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) / xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) / xx + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) * xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) * xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) * xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) * xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) * xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) * xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) * xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) * xx + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) - xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) - xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) - xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) - xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) - xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) - xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) - xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) - xx + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) + xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) + xx + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) + xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) + xx + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) + xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) + xx + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) + xx + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) + xx + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) / xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) / xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) / xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) / xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) / xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) * xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) * xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) * xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) * xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) * xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) - xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) - xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) - xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) - xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) - xx ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww) + xx ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww) + xx ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww) + xx ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww) + xx ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww) + xx ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 10); third3 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww + xx) + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww / xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww / xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww / xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww / xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww * xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww * xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww * xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww * xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww - xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww - xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww - xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww - xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * (vv / ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv / ww + xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * (vv * ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv * ww + xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * (vv - ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv - ww + xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * (vv + ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - (vv + ww + xx) ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 11); fourth2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww / xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww * xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww - xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww + xx) / yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww / xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww * xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww - xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww + xx) * yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww / xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww * xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww - xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww + xx) - yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww / xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww * xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww - xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww + xx) + yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww + xx) + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww / xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww / xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww / xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww / xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww / xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww * xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww * xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww * xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww * xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww * xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww - xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww - xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww - xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww - xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww - xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa+ qq * vv / (ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv / (ww + xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa+ qq * vv * (ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv * (ww + xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa+ qq * vv - (ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv - (ww + xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa+ qq * vv + (ww + xx) ^ yy ELSEIF (@op1 == 1) z = aa+ qq - vv + (ww + xx) ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 12); combo1 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww / xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww / xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww / xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww / xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww / xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww / xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww / xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww / xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww * xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww * xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww * xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww * xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww * xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww * xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww * xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww * xx) / yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww - xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww - xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww - xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww - xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww - xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww - xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww - xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww - xx) / yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww + xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww + xx) / yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww + xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww + xx) / yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww + xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww + xx) / yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww + xx) / yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww + xx) / yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww / xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww / xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww / xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww / xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww / xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww / xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww / xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww / xx) * yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww * xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww * xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww * xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww * xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww * xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww * xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww * xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww * xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww - xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww - xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww - xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww - xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww - xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww - xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww - xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww - xx) * yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww + xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww + xx) * yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww + xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww + xx) * yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww + xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww + xx) * yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww + xx) * yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww + xx) * yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww / xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww / xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww / xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww / xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww / xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww / xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww / xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww / xx) - yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww * xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww * xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww * xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww * xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww * xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww * xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww * xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww * xx) - yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww - xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww - xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww - xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww - xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww - xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww - xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww - xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww - xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww + xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww + xx) - yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww + xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww + xx) - yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww + xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww + xx) - yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww + xx) - yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww + xx) - yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww / xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww / xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww / xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww / xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww / xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww / xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww / xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww / xx) + yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww * xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww * xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww * xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww * xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww * xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww * xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww * xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww * xx) + yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww - xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww - xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww - xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww - xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww - xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww - xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww - xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww - xx) + yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww + xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww + xx) + yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww + xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww + xx) + yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww + xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww + xx) + yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww + xx) + yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww + xx) + yy ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww / xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww / xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww / xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww / xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww / xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww * xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww * xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww * xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww * xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww * xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww - xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww - xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww - xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww - xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww - xx) ^ yy ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq) * (vv / ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv / ww + xx) ^ yy ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq) * (vv * ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv * ww + xx) ^ yy ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq) * (vv - ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv - ww + xx) ^ yy ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq) * (vv + ww + xx) ^ yy ELSEIF (@op1 == 1) z = (aa+ qq) - (vv + ww + xx) ^ yy ENDIF ENDIF ENDIF ENDIF ELSEIF (@group == 13); combo2 IF (@op4 == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww / xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww / xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww / xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww / xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww / xx / yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww * xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww * xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww * xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww * xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww * xx / yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww - xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww - xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww - xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww - xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww - xx / yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww + xx / yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww + xx / yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww + xx / yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww + xx / yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww + xx / yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww / xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww / xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww / xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww / xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww / xx * yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww * xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww * xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww * xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww * xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww * xx * yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww - xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww - xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww - xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww - xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww - xx * yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww + xx * yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww + xx * yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww + xx * yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww + xx * yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww + xx * yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww / xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww / xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww / xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww / xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww / xx - yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww * xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww * xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww * xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww * xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww * xx - yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww - xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww - xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww - xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww - xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww - xx - yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww + xx - yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww + xx - yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww + xx - yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww + xx - yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww + xx - yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww / xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww / xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww / xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww / xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww / xx + yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww * xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww * xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww * xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww * xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww * xx + yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww - xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww - xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww - xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww - xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww - xx + yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww + xx + yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww + xx + yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww + xx + yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww + xx + yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww + xx + yy) ENDIF ENDIF ENDIF ELSEIF (@op4 == 4) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww / xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww / xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww / xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww / xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww / xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww / xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww / xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww / xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww * xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww * xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww * xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww * xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww * xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww * xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww * xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww * xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww - xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww - xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww - xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww - xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww - xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww - xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww - xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww - xx ^ yy) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa+ qq * vv) / (ww + xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) / (ww + xx ^ yy) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa+ qq * vv) * (ww + xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) * (ww + xx ^ yy) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa+ qq * vv) - (ww + xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) - (ww + xx ^ yy) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa+ qq * vv) + (ww + xx ^ yy) ELSEIF (@op1 == 1) z = (aa+ qq - vv) + (ww + xx ^ yy) ENDIF ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "Ogre'sBrew" bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 fn9 = @fn9 fn10 = @fn10 eye = @eye frog = @frog hen = @hen bat = @bat t = @t dew = @dew a = @a op1 = @op1 op2 = @op2 op3 = @op3 op4 = @op4 exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 exp6 = @exp6 exp7 = @exp7 group = @group startSeed = #pixel mode = switchMode switchMode = mode default: title = "Ogre's Brew" maxiter = 250 periodicity = 0 center = (0 , 0) magn = 1.2 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam complex param startSeed caption = "Start/Seed" default = (0,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param bailout caption = "bailout" default = 10.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param eye caption = "eye of newt" default = 0.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (0,0) endparam param bat caption = "bat wings" default = (0,0) endparam param a caption = "crab apples" default = (0,0) endparam param dew caption = "dewdrops" default = (0,0) endparam param t caption = "toadstools" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param exp5 caption = "exponent 5" default = (1,0) endparam param exp6 caption = "exponent 6" default = (1,0) endparam param exp7 caption = "exponent 7" default = (1,0) endparam param op1 caption = "operator 1" enum = "*""-""+" default = 0 endparam param op2 caption = "operator 2" enum = "/""*""-""+" default = 1 endparam param op3 caption = "operator 3" enum = "/""*""-""+" default = 1 endparam param op4 caption = "operator 4" enum = "/""*""-""+""^" default = 3 endparam param group caption = "grouping" default = 4 enum = "none""first2""first3""first4""first5""second2""second3"\ "second4""second5""third2""third3""fourth2""combo1""combo2" endparam func fn1 Caption = "function 1" default = log () endfunc func fn2 Caption = "function 2" default = ident () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc func fn8 Caption = "function 8" default = ident () endfunc func fn9 Caption = "function 9" default = ident () endfunc func fn10 Caption = "function 10" default = ident () endfunc } ********************************************************************* Goblin'sBrew { ; Toby Marshall, Aug. 2002 ; The Julia switch is incorporated in this ; formula. All functions and parameters ; can be varied to explore different Julia ; sets when using it, and can also be ; changed after the Julia is set. ; Many thanks to Joe Maddry and Ken Childress ; for their invaluable help. init: complex c = #pixel complex z = @startSeed complex frog = @frog*(0.0,1.0) if (@mode == "Mandelbrot") z = @startSeed endif if @mode == "Julia" z = #pixel c = @startSeed endif loop: aa = fn1(c^@exp7^@fn9(c^@exp5-@a)^@fn8(z^@exp6-@t)) qq = fn2(real(fn3(z^@exp1) - @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(c^@exp4 + @hen) xx = @fn7(z^@exp3 + @dew) IF (@op4 == 0) IF (@group == 0); none IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww / xx ELSEIF (@op1 == 1) z = aa - qq - vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww / xx ELSEIF (@op1 == 1) z = aa - qq - vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww / xx ELSEIF (@op1 == 1) z = aa - qq - vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww / xx ELSEIF (@op1 == 1) z = aa - qq - vv + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww * xx ELSEIF (@op1 == 1) z = aa - qq - vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww * xx ELSEIF (@op1 == 1) z = aa - qq - vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww * xx ELSEIF (@op1 == 1) z = aa - qq - vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww * xx ELSEIF (@op1 == 1) z = aa - qq - vv + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww - xx ELSEIF (@op1 == 1) z = aa - qq - vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww - xx ELSEIF (@op1 == 1) z = aa - qq - vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww - xx ELSEIF (@op1 == 1) z = aa - qq - vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww - xx ELSEIF (@op1 == 1) z = aa - qq - vv + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww + xx ELSEIF (@op1 == 1) z = aa - qq - vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww + xx ELSEIF (@op1 == 1) z = aa - qq - vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww + xx ELSEIF (@op1 == 1) z = aa - qq - vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww + xx ELSEIF (@op1 == 1) z = aa - qq - vv + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 1); first2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww / xx ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww / xx ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww / xx ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww / xx ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww * xx ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww * xx ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww * xx ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww * xx ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww - xx ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww - xx ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww - xx ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww - xx ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww + xx ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww + xx ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww + xx ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww + xx ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 2); first3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww / xx ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww / xx ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww / xx ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww / xx ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww * xx ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww * xx ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww * xx ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww * xx ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww - xx ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww - xx ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww - xx ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww - xx ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww + xx ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww + xx ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww + xx ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww + xx ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 3); first4 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) / xx ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) / xx ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) / xx ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) / xx ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) * xx ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) * xx ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) * xx ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) * xx ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) - xx ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) - xx ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) - xx ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) - xx ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) + xx ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) + xx ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) + xx ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) + xx ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 4); second2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww / xx ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww / xx ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww / xx ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww / xx ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww * xx ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww * xx ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww * xx ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww * xx ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww - xx ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww - xx ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww - xx ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww - xx ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww + xx ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww + xx ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww + xx ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww + xx ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 5); second3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) / xx ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) / xx ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) / xx ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) / xx ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) * xx ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) * xx ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) * xx ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) * xx ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) - xx ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) - xx ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) - xx ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) - xx ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) + xx ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) + xx ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) + xx ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) + xx ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 6); second4 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 7); third2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) / xx ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) / xx ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) / xx ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) / xx ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) * xx ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) * xx ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) * xx ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) * xx ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) - xx ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) - xx ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) - xx ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) - xx ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) + xx ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) + xx ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) + xx ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) + xx ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 8); third3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww / xx) ELSEIF (@op1 == 1) z = aa - qq - (vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww / xx) ELSEIF (@op1 == 1) z = aa - qq - (vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww / xx) ELSEIF (@op1 == 1) z = aa - qq - (vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww / xx) ELSEIF (@op1 == 1) z = aa - qq - (vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww * xx) ELSEIF (@op1 == 1) z = aa - qq - (vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww * xx) ELSEIF (@op1 == 1) z = aa - qq - (vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww * xx) ELSEIF (@op1 == 1) z = aa - qq - (vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww * xx) ELSEIF (@op1 == 1) z = aa - qq - (vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww - xx) ELSEIF (@op1 == 1) z = aa - qq - (vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww - xx) ELSEIF (@op1 == 1) z = aa - qq - (vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww - xx) ELSEIF (@op1 == 1) z = aa - qq - (vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww - xx) ELSEIF (@op1 == 1) z = aa - qq - (vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww + xx) ELSEIF (@op1 == 1) z = aa - qq - (vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww + xx) ELSEIF (@op1 == 1) z = aa - qq - (vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww + xx) ELSEIF (@op1 == 1) z = aa - qq - (vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww + xx) ELSEIF (@op1 == 1) z = aa - qq - (vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 9); fourth2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww / xx) ELSEIF (@op1 == 1) z = aa - qq - vv / (ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww / xx) ELSEIF (@op1 == 1) z = aa - qq - vv * (ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww / xx) ELSEIF (@op1 == 1) z = aa - qq - vv - (ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww / xx) ELSEIF (@op1 == 1) z = aa - qq - vv + (ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww * xx) ELSEIF (@op1 == 1) z = aa - qq - vv / (ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww * xx) ELSEIF (@op1 == 1) z = aa - qq - vv * (ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww * xx) ELSEIF (@op1 == 1) z = aa - qq - vv - (ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww * xx) ELSEIF (@op1 == 1) z = aa - qq - vv + (ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww - xx) ELSEIF (@op1 == 1) z = aa - qq - vv / (ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww - xx) ELSEIF (@op1 == 1) z = aa - qq - vv * (ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww - xx) ELSEIF (@op1 == 1) z = aa - qq - vv - (ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww - xx) ELSEIF (@op1 == 1) z = aa - qq - vv + (ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww + xx) ELSEIF (@op1 == 1) z = aa - qq - vv / (ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww + xx) ELSEIF (@op1 == 1) z = aa - qq - vv * (ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww + xx) ELSEIF (@op1 == 1) z = aa - qq - vv - (ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww + xx) ELSEIF (@op1 == 1) z = aa - qq - vv + (ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 10); combo1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww / xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww / xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww / xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww / xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww * xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww * xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww * xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww * xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww - xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww - xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww - xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww - xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww + xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww + xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww + xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww + xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 11); combo2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww / xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww / xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww / xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww / xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww / xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww / xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww / xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww / xx ) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww * xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww * xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww * xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww * xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww * xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww * xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww * xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww * xx ) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww - xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww - xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww - xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww - xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww - xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww - xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww - xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww - xx ) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww + xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww + xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww + xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww + xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww + xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww + xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww + xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww + xx ) ENDIF ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@group == 0); none IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / ww / xx ELSEIF (@op1 == 1) z = aa + qq - vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * ww / xx ELSEIF (@op1 == 1) z = aa + qq - vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - ww / xx ELSEIF (@op1 == 1) z = aa + qq - vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + ww / xx ELSEIF (@op1 == 1) z = aa + qq - vv + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / ww * xx ELSEIF (@op1 == 1) z = aa + qq - vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * ww * xx ELSEIF (@op1 == 1) z = aa + qq - vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - ww * xx ELSEIF (@op1 == 1) z = aa + qq - vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + ww * xx ELSEIF (@op1 == 1) z = aa + qq - vv + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / ww - xx ELSEIF (@op1 == 1) z = aa + qq - vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * ww - xx ELSEIF (@op1 == 1) z = aa + qq - vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - ww - xx ELSEIF (@op1 == 1) z = aa + qq - vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + ww - xx ELSEIF (@op1 == 1) z = aa + qq - vv + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / ww + xx ELSEIF (@op1 == 1) z = aa + qq - vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * ww + xx ELSEIF (@op1 == 1) z = aa + qq - vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - ww + xx ELSEIF (@op1 == 1) z = aa + qq - vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + ww + xx ELSEIF (@op1 == 1) z = aa + qq - vv + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 1); first2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * vv / ww / xx ELSEIF (@op1 == 1) z = (aa + qq) - vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * vv * ww / xx ELSEIF (@op1 == 1) z = (aa + qq) - vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * vv - ww / xx ELSEIF (@op1 == 1) z = (aa + qq) - vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * vv + ww / xx ELSEIF (@op1 == 1) z = (aa + qq) - vv + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * vv / ww * xx ELSEIF (@op1 == 1) z = (aa + qq) - vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * vv * ww * xx ELSEIF (@op1 == 1) z = (aa + qq) - vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * vv - ww * xx ELSEIF (@op1 == 1) z = (aa + qq) - vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * vv + ww * xx ELSEIF (@op1 == 1) z = (aa + qq) - vv + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * vv / ww - xx ELSEIF (@op1 == 1) z = (aa + qq) - vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * vv * ww - xx ELSEIF (@op1 == 1) z = (aa + qq) - vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * vv - ww - xx ELSEIF (@op1 == 1) z = (aa + qq) - vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * vv + ww - xx ELSEIF (@op1 == 1) z = (aa + qq) - vv + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * vv / ww + xx ELSEIF (@op1 == 1) z = (aa + qq) - vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * vv * ww + xx ELSEIF (@op1 == 1) z = (aa + qq) - vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * vv - ww + xx ELSEIF (@op1 == 1) z = (aa + qq) - vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * vv + ww + xx ELSEIF (@op1 == 1) z = (aa + qq) - vv + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 2); first3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / ww / xx ELSEIF (@op1 == 1) z = (aa + qq - vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * ww / xx ELSEIF (@op1 == 1) z = (aa + qq - vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - ww / xx ELSEIF (@op1 == 1) z = (aa + qq - vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + ww / xx ELSEIF (@op1 == 1) z = (aa + qq - vv) + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / ww * xx ELSEIF (@op1 == 1) z = (aa + qq - vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * ww * xx ELSEIF (@op1 == 1) z = (aa + qq - vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - ww * xx ELSEIF (@op1 == 1) z = (aa + qq - vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + ww * xx ELSEIF (@op1 == 1) z = (aa + qq - vv) + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / ww - xx ELSEIF (@op1 == 1) z = (aa + qq - vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * ww - xx ELSEIF (@op1 == 1) z = (aa + qq - vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - ww - xx ELSEIF (@op1 == 1) z = (aa + qq - vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + ww - xx ELSEIF (@op1 == 1) z = (aa + qq - vv) + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / ww + xx ELSEIF (@op1 == 1) z = (aa + qq - vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * ww + xx ELSEIF (@op1 == 1) z = (aa + qq - vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - ww + xx ELSEIF (@op1 == 1) z = (aa + qq - vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + ww + xx ELSEIF (@op1 == 1) z = (aa + qq - vv) + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 3); first4 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv / ww) / xx ELSEIF (@op1 == 1) z = (aa + qq - vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv * ww) / xx ELSEIF (@op1 == 1) z = (aa + qq - vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv - ww) / xx ELSEIF (@op1 == 1) z = (aa + qq - vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv + ww) / xx ELSEIF (@op1 == 1) z = (aa + qq - vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv / ww) * xx ELSEIF (@op1 == 1) z = (aa + qq - vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv * ww) * xx ELSEIF (@op1 == 1) z = (aa + qq - vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv - ww) * xx ELSEIF (@op1 == 1) z = (aa + qq - vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv + ww) * xx ELSEIF (@op1 == 1) z = (aa + qq - vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv / ww) - xx ELSEIF (@op1 == 1) z = (aa + qq - vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv * ww) - xx ELSEIF (@op1 == 1) z = (aa + qq - vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv - ww) - xx ELSEIF (@op1 == 1) z = (aa + qq - vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv + ww) - xx ELSEIF (@op1 == 1) z = (aa + qq - vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv / ww) + xx ELSEIF (@op1 == 1) z = (aa + qq - vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv * ww) + xx ELSEIF (@op1 == 1) z = (aa + qq - vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv - ww) + xx ELSEIF (@op1 == 1) z = (aa + qq - vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv + ww) + xx ELSEIF (@op1 == 1) z = (aa + qq - vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 4); second2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv) / ww / xx ELSEIF (@op1 == 1) z = aa + (qq - vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv) * ww / xx ELSEIF (@op1 == 1) z = aa + (qq - vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv) - ww / xx ELSEIF (@op1 == 1) z = aa + (qq - vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv) + ww / xx ELSEIF (@op1 == 1) z = aa + (qq - vv) + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv) / ww * xx ELSEIF (@op1 == 1) z = aa + (qq - vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv) * ww * xx ELSEIF (@op1 == 1) z = aa + (qq - vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv) - ww * xx ELSEIF (@op1 == 1) z = aa + (qq - vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv) + ww * xx ELSEIF (@op1 == 1) z = aa + (qq - vv) + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv) / ww - xx ELSEIF (@op1 == 1) z = aa + (qq - vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv) * ww - xx ELSEIF (@op1 == 1) z = aa + (qq - vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv) - ww - xx ELSEIF (@op1 == 1) z = aa + (qq - vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv) + ww - xx ELSEIF (@op1 == 1) z = aa + (qq - vv) + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv) / ww + xx ELSEIF (@op1 == 1) z = aa + (qq - vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv) * ww + xx ELSEIF (@op1 == 1) z = aa + (qq - vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv) - ww + xx ELSEIF (@op1 == 1) z = aa + (qq - vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv) + ww + xx ELSEIF (@op1 == 1) z = aa + (qq - vv) + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 5); second3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww) / xx ELSEIF (@op1 == 1) z = aa + (qq - vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww) / xx ELSEIF (@op1 == 1) z = aa + (qq - vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww) / xx ELSEIF (@op1 == 1) z = aa + (qq - vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww) / xx ELSEIF (@op1 == 1) z = aa + (qq - vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww) * xx ELSEIF (@op1 == 1) z = aa + (qq - vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww) * xx ELSEIF (@op1 == 1) z = aa + (qq - vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww) * xx ELSEIF (@op1 == 1) z = aa + (qq - vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww) * xx ELSEIF (@op1 == 1) z = aa + (qq - vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww) - xx ELSEIF (@op1 == 1) z = aa + (qq - vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww) - xx ELSEIF (@op1 == 1) z = aa + (qq - vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww) - xx ELSEIF (@op1 == 1) z = aa + (qq - vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww) - xx ELSEIF (@op1 == 1) z = aa + (qq - vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww) + xx ELSEIF (@op1 == 1) z = aa + (qq - vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww) + xx ELSEIF (@op1 == 1) z = aa + (qq - vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww) + xx ELSEIF (@op1 == 1) z = aa + (qq - vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww) + xx ELSEIF (@op1 == 1) z = aa + (qq - vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 6); second4 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww / xx) ELSEIF (@op1 == 1) z = aa + (qq - vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww / xx) ELSEIF (@op1 == 1) z = aa + (qq - vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww / xx) ELSEIF (@op1 == 1) z = aa + (qq - vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww / xx) ELSEIF (@op1 == 1) z = aa + (qq - vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww * xx) ELSEIF (@op1 == 1) z = aa + (qq - vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww * xx) ELSEIF (@op1 == 1) z = aa + (qq - vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww * xx) ELSEIF (@op1 == 1) z = aa + (qq - vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww * xx) ELSEIF (@op1 == 1) z = aa + (qq - vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww - xx) ELSEIF (@op1 == 1) z = aa + (qq - vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww - xx) ELSEIF (@op1 == 1) z = aa + (qq - vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww - xx) ELSEIF (@op1 == 1) z = aa + (qq - vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww - xx) ELSEIF (@op1 == 1) z = aa + (qq - vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww + xx) ELSEIF (@op1 == 1) z = aa + (qq - vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww + xx) ELSEIF (@op1 == 1) z = aa + (qq - vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww + xx) ELSEIF (@op1 == 1) z = aa + (qq - vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww + xx) ELSEIF (@op1 == 1) z = aa + (qq - vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 7); third2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww) / xx ELSEIF (@op1 == 1) z = aa + qq - (vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww) / xx ELSEIF (@op1 == 1) z = aa + qq - (vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww) / xx ELSEIF (@op1 == 1) z = aa + qq - (vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww) / xx ELSEIF (@op1 == 1) z = aa + qq - (vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww) * xx ELSEIF (@op1 == 1) z = aa + qq - (vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww) * xx ELSEIF (@op1 == 1) z = aa + qq - (vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww) * xx ELSEIF (@op1 == 1) z = aa + qq - (vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww) * xx ELSEIF (@op1 == 1) z = aa + qq - (vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww) - xx ELSEIF (@op1 == 1) z = aa + qq - (vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww) - xx ELSEIF (@op1 == 1) z = aa + qq - (vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww) - xx ELSEIF (@op1 == 1) z = aa + qq - (vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww) - xx ELSEIF (@op1 == 1) z = aa + qq - (vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww) + xx ELSEIF (@op1 == 1) z = aa + qq - (vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww) + xx ELSEIF (@op1 == 1) z = aa + qq - (vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww) + xx ELSEIF (@op1 == 1) z = aa + qq - (vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww) + xx ELSEIF (@op1 == 1) z = aa + qq - (vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 8); third3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww / xx) ELSEIF (@op1 == 1) z = aa + qq - (vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww / xx) ELSEIF (@op1 == 1) z = aa + qq - (vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww / xx) ELSEIF (@op1 == 1) z = aa + qq - (vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww / xx) ELSEIF (@op1 == 1) z = aa + qq - (vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww * xx) ELSEIF (@op1 == 1) z = aa + qq - (vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww * xx) ELSEIF (@op1 == 1) z = aa + qq - (vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww * xx) ELSEIF (@op1 == 1) z = aa + qq - (vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww * xx) ELSEIF (@op1 == 1) z = aa + qq - (vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww - xx) ELSEIF (@op1 == 1) z = aa + qq - (vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww - xx) ELSEIF (@op1 == 1) z = aa + qq - (vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww - xx) ELSEIF (@op1 == 1) z = aa + qq - (vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww - xx) ELSEIF (@op1 == 1) z = aa + qq - (vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww + xx) ELSEIF (@op1 == 1) z = aa + qq - (vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww + xx) ELSEIF (@op1 == 1) z = aa + qq - (vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww + xx) ELSEIF (@op1 == 1) z = aa + qq - (vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww + xx) ELSEIF (@op1 == 1) z = aa + qq - (vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 9); fourth2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / (ww / xx) ELSEIF (@op1 == 1) z = aa + qq - vv / (ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * (ww / xx) ELSEIF (@op1 == 1) z = aa + qq - vv * (ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - (ww / xx) ELSEIF (@op1 == 1) z = aa + qq - vv - (ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + (ww / xx) ELSEIF (@op1 == 1) z = aa + qq - vv + (ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / (ww * xx) ELSEIF (@op1 == 1) z = aa + qq - vv / (ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * (ww * xx) ELSEIF (@op1 == 1) z = aa + qq - vv * (ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - (ww * xx) ELSEIF (@op1 == 1) z = aa + qq - vv - (ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + (ww * xx) ELSEIF (@op1 == 1) z = aa + qq - vv + (ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / (ww - xx) ELSEIF (@op1 == 1) z = aa + qq - vv / (ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * (ww - xx) ELSEIF (@op1 == 1) z = aa + qq - vv * (ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - (ww - xx) ELSEIF (@op1 == 1) z = aa + qq - vv - (ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + (ww - xx) ELSEIF (@op1 == 1) z = aa + qq - vv + (ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / (ww + xx) ELSEIF (@op1 == 1) z = aa + qq - vv / (ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * (ww + xx) ELSEIF (@op1 == 1) z = aa + qq - vv * (ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - (ww + xx) ELSEIF (@op1 == 1) z = aa + qq - vv - (ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + (ww + xx) ELSEIF (@op1 == 1) z = aa + qq - vv + (ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 10); combo1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * (vv / ww / xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * (vv * ww / xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * (vv - ww / xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * (vv + ww / xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * (vv / ww * xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * (vv * ww * xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * (vv - ww * xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * (vv + ww * xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * (vv / ww - xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * (vv * ww - xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * (vv - ww - xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * (vv + ww - xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * (vv / ww + xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * (vv * ww + xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * (vv - ww + xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * (vv + ww + xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 11); combo2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / (ww / xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) / (ww / xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * (ww / xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) * (ww / xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - (ww / xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) - (ww / xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + (ww / xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) + (ww / xx ) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / (ww * xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) / (ww * xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * (ww * xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) * (ww * xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - (ww * xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) - (ww * xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + (ww * xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) + (ww * xx ) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / (ww - xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) / (ww - xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * (ww - xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) * (ww - xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - (ww - xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) - (ww - xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + (ww - xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) + (ww - xx ) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / (ww + xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) / (ww + xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * (ww + xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) * (ww + xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - (ww + xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) - (ww + xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + (ww + xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) + (ww + xx ) ENDIF ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "Goblin'sBrew" startSeed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 fn9 = @fn9 eye = @eye frog = @frog hen = @hen t = @t dew = @dew a = @a op1 = @op1 op2 = @op2 op3 = @op3 op4 = @op4 exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 exp6 = @exp6 exp7 = @exp7 group = @group mode = switchMode switchMode = mode default: title = "Goblin's Brew" maxiter = 250 periodicity = 0 center = (0 , 0) magn = 1 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam complex param startSeed caption = "Start/Seed" default = (0,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param bailout caption = "bailout" default = 10.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param eye caption = "eye of newt" default = 0.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (0,0) endparam param a caption = "crab apples" default = (0,0) endparam param dew caption = "dewdrops" default = (0,0) endparam param t caption = "toadstools" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param exp5 caption = "exponent 5" default = (1,0) endparam param exp6 caption = "exponent 6" default = (1,0) endparam param exp7 caption = "exponent 7" default = (1,0) endparam param op1 caption = "operator 1" enum = "*""-""+" default = 1 endparam param op2 caption = "operator 2" enum = "/""*""-""+" default = 2 endparam param op3 caption = "operator 3" enum = "/""*""-""+" default = 2 endparam param op4 caption = "operator 4" enum = "-""+" default = 0 endparam param group caption = "grouping" default = 10 enum = "none""first2""first3""first4""second2""second3"\ "second4""third2""third3""fourth2""combo1""combo2" endparam func fn1 Caption = "function 1" default = log () endfunc func fn2 Caption = "function 2" default = ident () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc func fn8 Caption = "function 8" default = ident () endfunc func fn9 Caption = "function 9" default = ident () endfunc } ********************************************************************* Demon'sBrew { ; Toby Marshall, Aug. 2002 ; The Julia switch is incorporated in this ; formula. All functions and parameters ; can be varied to explore different Julia ; sets when using it, and can also be ; changed after the Julia is set. ; Many thanks to Joe Maddry and Ken Childress ; for their invaluable help. init: complex c = #pixel complex z = @startSeed complex frog = @frog*(0.0,1.0) if (@mode == "Mandelbrot") z = @startSeed endif if @mode == "Julia" z = #pixel c = @startSeed endif loop: aa = fn1(c^@exp7^@fn9(c^@exp5-@a)^@fn8(z^@exp6-@t)) qq = fn2(real(fn3(z^@exp1) - @eye)) vv = fn4(imag (@fn5(z^@exp2) + frog)) ww = @fn6(c^@exp4 + @hen) xx = @fn7(c^@exp3 + @bat) IF (@op4 == 0) IF (@group == 0); none IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww / xx ELSEIF (@op1 == 1) z = aa - qq - vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww / xx ELSEIF (@op1 == 1) z = aa - qq - vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww / xx ELSEIF (@op1 == 1) z = aa - qq - vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww / xx ELSEIF (@op1 == 1) z = aa - qq - vv + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww * xx ELSEIF (@op1 == 1) z = aa - qq - vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww * xx ELSEIF (@op1 == 1) z = aa - qq - vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww * xx ELSEIF (@op1 == 1) z = aa - qq - vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww * xx ELSEIF (@op1 == 1) z = aa - qq - vv + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww - xx ELSEIF (@op1 == 1) z = aa - qq - vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww - xx ELSEIF (@op1 == 1) z = aa - qq - vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww - xx ELSEIF (@op1 == 1) z = aa - qq - vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww - xx ELSEIF (@op1 == 1) z = aa - qq - vv + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / ww + xx ELSEIF (@op1 == 1) z = aa - qq - vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * ww + xx ELSEIF (@op1 == 1) z = aa - qq - vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - ww + xx ELSEIF (@op1 == 1) z = aa - qq - vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + ww + xx ELSEIF (@op1 == 1) z = aa - qq - vv + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 1); first2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww / xx ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww / xx ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww / xx ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww / xx ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww * xx ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww * xx ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww * xx ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww * xx ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww - xx ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww - xx ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww - xx ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww - xx ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * vv / ww + xx ELSEIF (@op1 == 1) z = (aa - qq) - vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * vv * ww + xx ELSEIF (@op1 == 1) z = (aa - qq) - vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * vv - ww + xx ELSEIF (@op1 == 1) z = (aa - qq) - vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * vv + ww + xx ELSEIF (@op1 == 1) z = (aa - qq) - vv + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 2); first3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww / xx ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww / xx ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww / xx ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww / xx ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww * xx ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww * xx ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww * xx ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww * xx ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww - xx ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww - xx ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww - xx ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww - xx ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / ww + xx ELSEIF (@op1 == 1) z = (aa - qq - vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * ww + xx ELSEIF (@op1 == 1) z = (aa - qq - vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - ww + xx ELSEIF (@op1 == 1) z = (aa - qq - vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + ww + xx ELSEIF (@op1 == 1) z = (aa - qq - vv) + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 3); first4 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) / xx ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) / xx ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) / xx ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) / xx ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) * xx ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) * xx ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) * xx ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) * xx ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) - xx ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) - xx ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) - xx ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) - xx ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv / ww) + xx ELSEIF (@op1 == 1) z = (aa - qq - vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv * ww) + xx ELSEIF (@op1 == 1) z = (aa - qq - vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv - ww) + xx ELSEIF (@op1 == 1) z = (aa - qq - vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv + ww) + xx ELSEIF (@op1 == 1) z = (aa - qq - vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 4); second2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww / xx ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww / xx ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww / xx ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww / xx ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww * xx ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww * xx ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww * xx ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww * xx ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww - xx ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww - xx ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww - xx ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww - xx ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv) / ww + xx ELSEIF (@op1 == 1) z = aa - (qq - vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv) * ww + xx ELSEIF (@op1 == 1) z = aa - (qq - vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv) - ww + xx ELSEIF (@op1 == 1) z = aa - (qq - vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv) + ww + xx ELSEIF (@op1 == 1) z = aa - (qq - vv) + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 5); second3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) / xx ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) / xx ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) / xx ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) / xx ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) * xx ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) * xx ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) * xx ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) * xx ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) - xx ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) - xx ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) - xx ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) - xx ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww) + xx ELSEIF (@op1 == 1) z = aa - (qq - vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww) + xx ELSEIF (@op1 == 1) z = aa - (qq - vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww) + xx ELSEIF (@op1 == 1) z = aa - (qq - vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww) + xx ELSEIF (@op1 == 1) z = aa - (qq - vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 6); second4 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww / xx) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww / xx) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww / xx) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww / xx) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww * xx) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww * xx) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww * xx) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww * xx) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww - xx) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww - xx) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww - xx) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww - xx) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - (qq * vv / ww + xx) ELSEIF (@op1 == 1) z = aa - (qq - vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - (qq * vv * ww + xx) ELSEIF (@op1 == 1) z = aa - (qq - vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - (qq * vv - ww + xx) ELSEIF (@op1 == 1) z = aa - (qq - vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - (qq * vv + ww + xx) ELSEIF (@op1 == 1) z = aa - (qq - vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 7); third2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) / xx ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) / xx ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) / xx ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) / xx ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) * xx ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) * xx ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) * xx ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) * xx ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) - xx ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) - xx ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) - xx ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) - xx ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww) + xx ELSEIF (@op1 == 1) z = aa - qq - (vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww) + xx ELSEIF (@op1 == 1) z = aa - qq - (vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww) + xx ELSEIF (@op1 == 1) z = aa - qq - (vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww) + xx ELSEIF (@op1 == 1) z = aa - qq - (vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 8); third3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww / xx) ELSEIF (@op1 == 1) z = aa - qq - (vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww / xx) ELSEIF (@op1 == 1) z = aa - qq - (vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww / xx) ELSEIF (@op1 == 1) z = aa - qq - (vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww / xx) ELSEIF (@op1 == 1) z = aa - qq - (vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww * xx) ELSEIF (@op1 == 1) z = aa - qq - (vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww * xx) ELSEIF (@op1 == 1) z = aa - qq - (vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww * xx) ELSEIF (@op1 == 1) z = aa - qq - (vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww * xx) ELSEIF (@op1 == 1) z = aa - qq - (vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww - xx) ELSEIF (@op1 == 1) z = aa - qq - (vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww - xx) ELSEIF (@op1 == 1) z = aa - qq - (vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww - xx) ELSEIF (@op1 == 1) z = aa - qq - (vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww - xx) ELSEIF (@op1 == 1) z = aa - qq - (vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * (vv / ww + xx) ELSEIF (@op1 == 1) z = aa - qq - (vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * (vv * ww + xx) ELSEIF (@op1 == 1) z = aa - qq - (vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * (vv - ww + xx) ELSEIF (@op1 == 1) z = aa - qq - (vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * (vv + ww + xx) ELSEIF (@op1 == 1) z = aa - qq - (vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 9); fourth2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww / xx) ELSEIF (@op1 == 1) z = aa - qq - vv / (ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww / xx) ELSEIF (@op1 == 1) z = aa - qq - vv * (ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww / xx) ELSEIF (@op1 == 1) z = aa - qq - vv - (ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww / xx) ELSEIF (@op1 == 1) z = aa - qq - vv + (ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww * xx) ELSEIF (@op1 == 1) z = aa - qq - vv / (ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww * xx) ELSEIF (@op1 == 1) z = aa - qq - vv * (ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww * xx) ELSEIF (@op1 == 1) z = aa - qq - vv - (ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww * xx) ELSEIF (@op1 == 1) z = aa - qq - vv + (ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww - xx) ELSEIF (@op1 == 1) z = aa - qq - vv / (ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww - xx) ELSEIF (@op1 == 1) z = aa - qq - vv * (ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww - xx) ELSEIF (@op1 == 1) z = aa - qq - vv - (ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww - xx) ELSEIF (@op1 == 1) z = aa - qq - vv + (ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa - qq * vv / (ww + xx) ELSEIF (@op1 == 1) z = aa - qq - vv / (ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa - qq * vv * (ww + xx) ELSEIF (@op1 == 1) z = aa - qq - vv * (ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa - qq * vv - (ww + xx) ELSEIF (@op1 == 1) z = aa - qq - vv - (ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa - qq * vv + (ww + xx) ELSEIF (@op1 == 1) z = aa - qq - vv + (ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 10); combo1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww / xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww / xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww / xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww / xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww * xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww * xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww * xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww * xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww - xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww - xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww - xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww - xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq) * (vv / ww + xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq) * (vv * ww + xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq) * (vv - ww + xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq) * (vv + ww + xx) ELSEIF (@op1 == 1) z = (aa - qq) - (vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 11); combo2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww / xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww / xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww / xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww / xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww / xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww / xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww / xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww / xx ) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww * xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww * xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww * xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww * xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww * xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww * xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww * xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww * xx ) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww - xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww - xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww - xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww - xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww - xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww - xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww - xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww - xx ) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa - qq * vv) / (ww + xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) / (ww + xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa - qq * vv) * (ww + xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) * (ww + xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa - qq * vv) - (ww + xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) - (ww + xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa - qq * vv) + (ww + xx ) ELSEIF (@op1 == 1) z = (aa - qq - vv) + (ww + xx ) ENDIF ENDIF ENDIF ENDIF ELSEIF (@op4 == 1) IF (@group == 0); none IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / ww / xx ELSEIF (@op1 == 1) z = aa + qq - vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * ww / xx ELSEIF (@op1 == 1) z = aa + qq - vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - ww / xx ELSEIF (@op1 == 1) z = aa + qq - vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + ww / xx ELSEIF (@op1 == 1) z = aa + qq - vv + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / ww * xx ELSEIF (@op1 == 1) z = aa + qq - vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * ww * xx ELSEIF (@op1 == 1) z = aa + qq - vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - ww * xx ELSEIF (@op1 == 1) z = aa + qq - vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + ww * xx ELSEIF (@op1 == 1) z = aa + qq - vv + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / ww - xx ELSEIF (@op1 == 1) z = aa + qq - vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * ww - xx ELSEIF (@op1 == 1) z = aa + qq - vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - ww - xx ELSEIF (@op1 == 1) z = aa + qq - vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + ww - xx ELSEIF (@op1 == 1) z = aa + qq - vv + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / ww + xx ELSEIF (@op1 == 1) z = aa + qq - vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * ww + xx ELSEIF (@op1 == 1) z = aa + qq - vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - ww + xx ELSEIF (@op1 == 1) z = aa + qq - vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + ww + xx ELSEIF (@op1 == 1) z = aa + qq - vv + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 1); first2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * vv / ww / xx ELSEIF (@op1 == 1) z = (aa + qq) - vv / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * vv * ww / xx ELSEIF (@op1 == 1) z = (aa + qq) - vv * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * vv - ww / xx ELSEIF (@op1 == 1) z = (aa + qq) - vv - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * vv + ww / xx ELSEIF (@op1 == 1) z = (aa + qq) - vv + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * vv / ww * xx ELSEIF (@op1 == 1) z = (aa + qq) - vv / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * vv * ww * xx ELSEIF (@op1 == 1) z = (aa + qq) - vv * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * vv - ww * xx ELSEIF (@op1 == 1) z = (aa + qq) - vv - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * vv + ww * xx ELSEIF (@op1 == 1) z = (aa + qq) - vv + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * vv / ww - xx ELSEIF (@op1 == 1) z = (aa + qq) - vv / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * vv * ww - xx ELSEIF (@op1 == 1) z = (aa + qq) - vv * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * vv - ww - xx ELSEIF (@op1 == 1) z = (aa + qq) - vv - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * vv + ww - xx ELSEIF (@op1 == 1) z = (aa + qq) - vv + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * vv / ww + xx ELSEIF (@op1 == 1) z = (aa + qq) - vv / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * vv * ww + xx ELSEIF (@op1 == 1) z = (aa + qq) - vv * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * vv - ww + xx ELSEIF (@op1 == 1) z = (aa + qq) - vv - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * vv + ww + xx ELSEIF (@op1 == 1) z = (aa + qq) - vv + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 2); first3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / ww / xx ELSEIF (@op1 == 1) z = (aa + qq - vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * ww / xx ELSEIF (@op1 == 1) z = (aa + qq - vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - ww / xx ELSEIF (@op1 == 1) z = (aa + qq - vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + ww / xx ELSEIF (@op1 == 1) z = (aa + qq - vv) + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / ww * xx ELSEIF (@op1 == 1) z = (aa + qq - vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * ww * xx ELSEIF (@op1 == 1) z = (aa + qq - vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - ww * xx ELSEIF (@op1 == 1) z = (aa + qq - vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + ww * xx ELSEIF (@op1 == 1) z = (aa + qq - vv) + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / ww - xx ELSEIF (@op1 == 1) z = (aa + qq - vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * ww - xx ELSEIF (@op1 == 1) z = (aa + qq - vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - ww - xx ELSEIF (@op1 == 1) z = (aa + qq - vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + ww - xx ELSEIF (@op1 == 1) z = (aa + qq - vv) + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / ww + xx ELSEIF (@op1 == 1) z = (aa + qq - vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * ww + xx ELSEIF (@op1 == 1) z = (aa + qq - vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - ww + xx ELSEIF (@op1 == 1) z = (aa + qq - vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + ww + xx ELSEIF (@op1 == 1) z = (aa + qq - vv) + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 3); first4 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv / ww) / xx ELSEIF (@op1 == 1) z = (aa + qq - vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv * ww) / xx ELSEIF (@op1 == 1) z = (aa + qq - vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv - ww) / xx ELSEIF (@op1 == 1) z = (aa + qq - vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv + ww) / xx ELSEIF (@op1 == 1) z = (aa + qq - vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv / ww) * xx ELSEIF (@op1 == 1) z = (aa + qq - vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv * ww) * xx ELSEIF (@op1 == 1) z = (aa + qq - vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv - ww) * xx ELSEIF (@op1 == 1) z = (aa + qq - vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv + ww) * xx ELSEIF (@op1 == 1) z = (aa + qq - vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv / ww) - xx ELSEIF (@op1 == 1) z = (aa + qq - vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv * ww) - xx ELSEIF (@op1 == 1) z = (aa + qq - vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv - ww) - xx ELSEIF (@op1 == 1) z = (aa + qq - vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv + ww) - xx ELSEIF (@op1 == 1) z = (aa + qq - vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv / ww) + xx ELSEIF (@op1 == 1) z = (aa + qq - vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv * ww) + xx ELSEIF (@op1 == 1) z = (aa + qq - vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv - ww) + xx ELSEIF (@op1 == 1) z = (aa + qq - vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv + ww) + xx ELSEIF (@op1 == 1) z = (aa + qq - vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 4); second2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv) / ww / xx ELSEIF (@op1 == 1) z = aa + (qq - vv) / ww / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv) * ww / xx ELSEIF (@op1 == 1) z = aa + (qq - vv) * ww / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv) - ww / xx ELSEIF (@op1 == 1) z = aa + (qq - vv) - ww / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv) + ww / xx ELSEIF (@op1 == 1) z = aa + (qq - vv) + ww / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv) / ww * xx ELSEIF (@op1 == 1) z = aa + (qq - vv) / ww * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv) * ww * xx ELSEIF (@op1 == 1) z = aa + (qq - vv) * ww * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv) - ww * xx ELSEIF (@op1 == 1) z = aa + (qq - vv) - ww * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv) + ww * xx ELSEIF (@op1 == 1) z = aa + (qq - vv) + ww * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv) / ww - xx ELSEIF (@op1 == 1) z = aa + (qq - vv) / ww - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv) * ww - xx ELSEIF (@op1 == 1) z = aa + (qq - vv) * ww - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv) - ww - xx ELSEIF (@op1 == 1) z = aa + (qq - vv) - ww - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv) + ww - xx ELSEIF (@op1 == 1) z = aa + (qq - vv) + ww - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv) / ww + xx ELSEIF (@op1 == 1) z = aa + (qq - vv) / ww + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv) * ww + xx ELSEIF (@op1 == 1) z = aa + (qq - vv) * ww + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv) - ww + xx ELSEIF (@op1 == 1) z = aa + (qq - vv) - ww + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv) + ww + xx ELSEIF (@op1 == 1) z = aa + (qq - vv) + ww + xx ENDIF ENDIF ENDIF ELSEIF (@group == 5); second3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww) / xx ELSEIF (@op1 == 1) z = aa + (qq - vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww) / xx ELSEIF (@op1 == 1) z = aa + (qq - vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww) / xx ELSEIF (@op1 == 1) z = aa + (qq - vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww) / xx ELSEIF (@op1 == 1) z = aa + (qq - vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww) * xx ELSEIF (@op1 == 1) z = aa + (qq - vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww) * xx ELSEIF (@op1 == 1) z = aa + (qq - vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww) * xx ELSEIF (@op1 == 1) z = aa + (qq - vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww) * xx ELSEIF (@op1 == 1) z = aa + (qq - vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww) - xx ELSEIF (@op1 == 1) z = aa + (qq - vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww) - xx ELSEIF (@op1 == 1) z = aa + (qq - vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww) - xx ELSEIF (@op1 == 1) z = aa + (qq - vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww) - xx ELSEIF (@op1 == 1) z = aa + (qq - vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww) + xx ELSEIF (@op1 == 1) z = aa + (qq - vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww) + xx ELSEIF (@op1 == 1) z = aa + (qq - vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww) + xx ELSEIF (@op1 == 1) z = aa + (qq - vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww) + xx ELSEIF (@op1 == 1) z = aa + (qq - vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 6); second4 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww / xx) ELSEIF (@op1 == 1) z = aa + (qq - vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww / xx) ELSEIF (@op1 == 1) z = aa + (qq - vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww / xx) ELSEIF (@op1 == 1) z = aa + (qq - vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww / xx) ELSEIF (@op1 == 1) z = aa + (qq - vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww * xx) ELSEIF (@op1 == 1) z = aa + (qq - vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww * xx) ELSEIF (@op1 == 1) z = aa + (qq - vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww * xx) ELSEIF (@op1 == 1) z = aa + (qq - vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww * xx) ELSEIF (@op1 == 1) z = aa + (qq - vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww - xx) ELSEIF (@op1 == 1) z = aa + (qq - vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww - xx) ELSEIF (@op1 == 1) z = aa + (qq - vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww - xx) ELSEIF (@op1 == 1) z = aa + (qq - vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww - xx) ELSEIF (@op1 == 1) z = aa + (qq - vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + (qq * vv / ww + xx) ELSEIF (@op1 == 1) z = aa + (qq - vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + (qq * vv * ww + xx) ELSEIF (@op1 == 1) z = aa + (qq - vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + (qq * vv - ww + xx) ELSEIF (@op1 == 1) z = aa + (qq - vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + (qq * vv + ww + xx) ELSEIF (@op1 == 1) z = aa + (qq - vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 7); third2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww) / xx ELSEIF (@op1 == 1) z = aa + qq - (vv / ww) / xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww) / xx ELSEIF (@op1 == 1) z = aa + qq - (vv * ww) / xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww) / xx ELSEIF (@op1 == 1) z = aa + qq - (vv - ww) / xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww) / xx ELSEIF (@op1 == 1) z = aa + qq - (vv + ww) / xx ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww) * xx ELSEIF (@op1 == 1) z = aa + qq - (vv / ww) * xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww) * xx ELSEIF (@op1 == 1) z = aa + qq - (vv * ww) * xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww) * xx ELSEIF (@op1 == 1) z = aa + qq - (vv - ww) * xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww) * xx ELSEIF (@op1 == 1) z = aa + qq - (vv + ww) * xx ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww) - xx ELSEIF (@op1 == 1) z = aa + qq - (vv / ww) - xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww) - xx ELSEIF (@op1 == 1) z = aa + qq - (vv * ww) - xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww) - xx ELSEIF (@op1 == 1) z = aa + qq - (vv - ww) - xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww) - xx ELSEIF (@op1 == 1) z = aa + qq - (vv + ww) - xx ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww) + xx ELSEIF (@op1 == 1) z = aa + qq - (vv / ww) + xx ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww) + xx ELSEIF (@op1 == 1) z = aa + qq - (vv * ww) + xx ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww) + xx ELSEIF (@op1 == 1) z = aa + qq - (vv - ww) + xx ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww) + xx ELSEIF (@op1 == 1) z = aa + qq - (vv + ww) + xx ENDIF ENDIF ENDIF ELSEIF (@group == 8); third3 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww / xx) ELSEIF (@op1 == 1) z = aa + qq - (vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww / xx) ELSEIF (@op1 == 1) z = aa + qq - (vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww / xx) ELSEIF (@op1 == 1) z = aa + qq - (vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww / xx) ELSEIF (@op1 == 1) z = aa + qq - (vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww * xx) ELSEIF (@op1 == 1) z = aa + qq - (vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww * xx) ELSEIF (@op1 == 1) z = aa + qq - (vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww * xx) ELSEIF (@op1 == 1) z = aa + qq - (vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww * xx) ELSEIF (@op1 == 1) z = aa + qq - (vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww - xx) ELSEIF (@op1 == 1) z = aa + qq - (vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww - xx) ELSEIF (@op1 == 1) z = aa + qq - (vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww - xx) ELSEIF (@op1 == 1) z = aa + qq - (vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww - xx) ELSEIF (@op1 == 1) z = aa + qq - (vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * (vv / ww + xx) ELSEIF (@op1 == 1) z = aa + qq - (vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * (vv * ww + xx) ELSEIF (@op1 == 1) z = aa + qq - (vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * (vv - ww + xx) ELSEIF (@op1 == 1) z = aa + qq - (vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * (vv + ww + xx) ELSEIF (@op1 == 1) z = aa + qq - (vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 9); fourth2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / (ww / xx) ELSEIF (@op1 == 1) z = aa + qq - vv / (ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * (ww / xx) ELSEIF (@op1 == 1) z = aa + qq - vv * (ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - (ww / xx) ELSEIF (@op1 == 1) z = aa + qq - vv - (ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + (ww / xx) ELSEIF (@op1 == 1) z = aa + qq - vv + (ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / (ww * xx) ELSEIF (@op1 == 1) z = aa + qq - vv / (ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * (ww * xx) ELSEIF (@op1 == 1) z = aa + qq - vv * (ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - (ww * xx) ELSEIF (@op1 == 1) z = aa + qq - vv - (ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + (ww * xx) ELSEIF (@op1 == 1) z = aa + qq - vv + (ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / (ww - xx) ELSEIF (@op1 == 1) z = aa + qq - vv / (ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * (ww - xx) ELSEIF (@op1 == 1) z = aa + qq - vv * (ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - (ww - xx) ELSEIF (@op1 == 1) z = aa + qq - vv - (ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + (ww - xx) ELSEIF (@op1 == 1) z = aa + qq - vv + (ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa + qq * vv / (ww + xx) ELSEIF (@op1 == 1) z = aa + qq - vv / (ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa + qq * vv * (ww + xx) ELSEIF (@op1 == 1) z = aa + qq - vv * (ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa + qq * vv - (ww + xx) ELSEIF (@op1 == 1) z = aa + qq - vv - (ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa + qq * vv + (ww + xx) ELSEIF (@op1 == 1) z = aa + qq - vv + (ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 10); combo1 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * (vv / ww / xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv / ww / xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * (vv * ww / xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv * ww / xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * (vv - ww / xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv - ww / xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * (vv + ww / xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv + ww / xx) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * (vv / ww * xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv / ww * xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * (vv * ww * xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv * ww * xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * (vv - ww * xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv - ww * xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * (vv + ww * xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv + ww * xx) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * (vv / ww - xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv / ww - xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * (vv * ww - xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv * ww - xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * (vv - ww - xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv - ww - xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * (vv + ww - xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv + ww - xx) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq) * (vv / ww + xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv / ww + xx) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq) * (vv * ww + xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv * ww + xx) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq) * (vv - ww + xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv - ww + xx) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq) * (vv + ww + xx) ELSEIF (@op1 == 1) z = (aa + qq) - (vv + ww + xx) ENDIF ENDIF ENDIF ELSEIF (@group == 11); combo2 IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / (ww / xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) / (ww / xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * (ww / xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) * (ww / xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - (ww / xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) - (ww / xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + (ww / xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) + (ww / xx ) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / (ww * xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) / (ww * xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * (ww * xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) * (ww * xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - (ww * xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) - (ww * xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + (ww * xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) + (ww * xx ) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / (ww - xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) / (ww - xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * (ww - xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) * (ww - xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - (ww - xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) - (ww - xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + (ww - xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) + (ww - xx ) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = (aa + qq * vv) / (ww + xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) / (ww + xx ) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = (aa + qq * vv) * (ww + xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) * (ww + xx ) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = (aa + qq * vv) - (ww + xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) - (ww + xx ) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = (aa + qq * vv) + (ww + xx ) ELSEIF (@op1 == 1) z = (aa + qq - vv) + (ww + xx ) ENDIF ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "Demon'sBrew" startSeed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 fn9 = @fn9 eye = @eye frog = @frog hen = @hen bat = @bat t = @t a = @a op1 = @op1 op2 = @op2 op3 = @op3 op4 = @op4 exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 exp6 = @exp6 exp7 = @exp7 group = @group mode = switchMode switchMode = mode default: title = "Demon's Brew" maxiter = 250 periodicity = 0 center = (0 , 0) magn = 1 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam complex param startSeed caption = "Start/Seed" default = (0,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param bailout caption = "bailout" default = 10.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param eye caption = "eye of newt" default = 0.0 endparam param frog caption = "frog's breath" default = 0.0 endparam param hen caption = "henbane" default = (0,0) endparam param bat caption = "bat wings" default = (0,0) endparam param a caption = "crab apples" default = (0,0) endparam param t caption = "toadstools" default = (0,0) endparam param exp1 caption = "exponent 1" default = (1,0) endparam param exp2 caption = "exponent 2" default = (1,0) endparam param exp3 caption = "exponent 3" default = (1,0) endparam param exp4 caption = "exponent 4" default = (1,0) endparam param exp5 caption = "exponent 5" default = (1,0) endparam param exp6 caption = "exponent 6" default = (1,0) endparam param exp7 caption = "exponent 7" default = (1,0) endparam param op1 caption = "operator 1" enum = "*""-""+" default = 1 endparam param op2 caption = "operator 2" enum = "/""*""-""+" default = 2 endparam param op3 caption = "operator 3" enum = "/""*""-""+" default = 2 endparam param op4 caption = "operator 4" enum = "-""+" default = 0 endparam param group caption = "grouping" default = 10 enum = "none""first2""first3""first4""second2""second3"\ "second4""third2""third3""fourth2""combo1""combo2" endparam func fn1 Caption = "function 1" default = log () endfunc func fn2 Caption = "function 2" default = ident () endfunc func fn3 Caption = "function 3" default = ident () endfunc func fn4 Caption = "function 4" default = ident () endfunc func fn5 Caption = "function 5" default = ident () endfunc func fn6 Caption = "function 6" default = ident () endfunc func fn7 Caption = "function 7" default = ident () endfunc func fn8 Caption = "function 8" default = ident () endfunc func fn9 Caption = "function 9" default = ident () endfunc } ***************************************************************************** SimplySpirals { ; Toby Marshall, Sept. 2002 ; This formula has a built-in Julia switch ; All functions and parameters can be varied ; to explore different Julia sets. ; Many thanks to Dave Makin for his extended ; switching and switch parameters. init: complex c = #pixel complex z = @startSeed IF (@mode == "Mandelbrot") z = @startSeed ENDIF IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: aa = fn1 (z-@p1) bb = fn2 (c-@p2) cc = fn3 (c-@p3) dd = fn4 (c-@p4) IF (@grp == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd ELSEIF (@op1 == 1) z = aa*bb^cc/dd ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd ELSEIF (@op1 == 1) z = aa*bb^cc*dd ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd ELSEIF (@op1 == 1) z = aa*bb^cc-dd ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd ELSEIF (@op1 == 1) z = aa*bb^cc+dd ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd ELSEIF (@op1 == 1) z = aa*bb^cc^dd ENDIF ENDIF ELSEIF (@grp == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd) ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "SimplySpirals" startSeed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 p1 = @p1 p2 = @p2 p3 = @p3 p4 = @p4 grp = @grp op1 = @op1 op2 = @op2 mode = switchMode switchMode = mode center = @swcenter scale = @swscale default: title = "Simply Spirals" maxiter = 250 periodicity = 0 center = (0 , -1) magn = .7 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param swscale caption = "switch scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param swcenter caption = "switch center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "scale reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "center reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam complex param startSeed caption = "Start/Seed" default = (1,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param bailout caption = "bailout" default = 50.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param p1 caption = "param 1" default = (0,0) endparam param p2 caption = "param 2" default = (0,0) endparam param p3 caption = "param 3" default = (0,0) endparam param p4 caption = "param 4" default = (0,0) endparam param op1 caption = "first operator" default = 1 enum = "divide""multiply" endparam param op2 caption = "second operator" default = 2 enum = "divide""multiply""subtract""add""exponent" endparam param grp caption = "grouping" default = 0 enum = "first""second" endparam func fn1 Caption = "z function" default = ident () endfunc func fn2 Caption = "c function 1" default = flip () endfunc func fn3 Caption = "c function 2" default = ident () endfunc func fn4 Caption = "c function 3" default = ident () endfunc } *********************************************************************** SimplySpirals2 { ; Toby Marshall, Sept. 2002 ; This formula has a built-in Julia switch ; All functions and parameters can be varied ; to explore different Julia sets. ; Many thanks to Dave Makin for his extended ; switching and switch parameters. init: complex c = #pixel complex z = @startSeed IF (@mode == "Mandelbrot") z = @startSeed ENDIF IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: aa = fn1 (z-@p1) bb = fn2 (c-@p2) cc = fn3 (c-@p3) dd = fn4 (c-@p4) ee = @fn5 (z-@p5) IF (@grp == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd/ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd/ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd/ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd/ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd/ee ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd*ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd*ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd*ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd*ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd*ee ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd-ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd-ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd-ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd-ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd-ee ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd+ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd+ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd+ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd+ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd+ee ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd^ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd^ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd^ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd^ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd^ee ENDIF ENDIF ENDIF ELSEIF (@grp == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)/ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)/ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)/ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)/ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)/ee ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)*ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)*ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)*ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)*ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)*ee ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)-ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)-ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)-ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)-ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)-ee ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)+ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)+ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)+ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)+ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)+ee ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)^ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)^ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)^ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)^ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)^ee ENDIF ENDIF ENDIF ELSEIF (@grp == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd/ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd/ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd/ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd/ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd/ee) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd*ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd*ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd*ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd*ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd*ee) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd-ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd-ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd-ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd-ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd-ee) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd+ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd+ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd+ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd+ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd+ee) ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd^ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd^ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd^ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd^ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd^ee) ENDIF ENDIF ENDIF ELSEIF (@grp == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd/ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd/ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd/ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd/ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd/ee) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd*ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd*ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd*ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd*ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd*ee) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd-ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd-ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd-ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd-ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd-ee) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd+ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd+ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd+ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd+ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd+ee) ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd^ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd^ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd^ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd^ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd^ee) ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "SimplySpirals2" startSeed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 p1 = @p1 p2 = @p2 p3 = @p3 p4 = @p4 p5 = @p5 grp = @grp op1 = @op1 op2 = @op2 op3 = @op3 mode = switchMode switchMode = mode center = @swcenter scale = @swscale default: title = "Simply Spirals 2" maxiter = 250 periodicity = 0 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param swscale caption = "switch scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param swcenter caption = "switch center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "scale reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "center reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam complex param startSeed caption = "Start/Seed" default = (1,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param bailout caption = "bailout" default = 50.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param p1 caption = "param 1" default = (0,0) endparam param p2 caption = "param 2" default = (0,0) endparam param p3 caption = "param 3" default = (0,0) endparam param p4 caption = "param 4" default = (0,0) endparam param p5 caption = "param 5" default = (0,0) endparam param op1 caption = "first operator" default = 1 enum = "divide""multiply" endparam param op2 caption = "second operator" default = 2 enum = "divide""multiply""subtract""add""exponent" endparam param op3 caption = "third operator" default = 2 enum = "divide""multiply""subtract""add""exponent" endparam param grp caption = "grouping" default = 0 enum = "first""second""third""fourth" endparam func fn1 Caption = "z function 1" default = ident () endfunc func fn5 Caption = "z function 2" default = ident () endfunc func fn2 Caption = "c function 1" default = flip () endfunc func fn3 Caption = "c function 2" default = ident () endfunc func fn4 Caption = "c function 3" default = ident () endfunc } *********************************************************************** SimplySpirals3 { ; Toby Marshall, Sept. 2002 ; This formula has a built-in Julia switch ; All functions and parameters can be varied ; to explore different Julia sets. ; Many thanks to Dave Makin for his extended ; switching and switch parameters. init: complex c = #pixel complex z = @startSeed IF (@mode == "Mandelbrot") z = @startSeed ENDIF IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: aa = fn1 (z-@p1) bb = fn2 (c-@p2) cc = fn3 (c-@p3) dd = fn4 (z-@p4) ee = @fn5 (c-@p5) IF (@grp == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)/ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)/ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)/ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)/ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)/ee ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)*ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)*ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)*ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)*ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)*ee ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)-ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)-ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)-ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)-ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)-ee ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)+ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)+ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)+ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)+ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)+ee ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)^ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)^ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)^ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)^ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)^ee ENDIF ENDIF ENDIF ELSEIF (@grp == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd/ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd/ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd/ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd/ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd/ee) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd*ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd*ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd*ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd*ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd*ee) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd-ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd-ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd-ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd-ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd-ee) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd+ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd+ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd+ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd+ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd+ee) ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd^ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd^ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd^ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd^ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd^ee) ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "SimplySpirals3" startSeed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 p1 = @p1 p2 = @p2 p3 = @p3 p4 = @p4 p5 = @p5 grp = @grp op1 = @op1 op2 = @op2 op3 = @op3 mode = switchMode switchMode = mode center = @swcenter scale = @swscale default: title = "Simply Spirals 3" maxiter = 250 periodicity = 0 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param swscale caption = "switch scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param swcenter caption = "switch center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "scale reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "center reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam complex param startSeed caption = "Start/Seed" default = (1,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param bailout caption = "bailout" default = 50.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param p1 caption = "param 1" default = (0,0) endparam param p2 caption = "param 2" default = (0,0) endparam param p3 caption = "param 3" default = (0,0) endparam param p4 caption = "param 4" default = (0,0) endparam param p5 caption = "param 5" default = (0,0) endparam param op1 caption = "first operator" default = 1 enum = "divide""multiply" endparam param op2 caption = "second operator" default = 2 enum = "divide""multiply""subtract""add""exponent" endparam param op3 caption = "third operator" default = 2 enum = "divide""multiply""subtract""add""exponent" endparam param grp caption = "grouping" default = 0 enum = "first""second" endparam func fn1 Caption = "z function 1" default = ident () endfunc func fn4 Caption = "z function 2" default = ident () endfunc func fn2 Caption = "c function 1" default = flip () endfunc func fn3 Caption = "c function 2" default = ident () endfunc func fn5 Caption = "c function 3" default = ident () endfunc } *********************************************************************** SpiralsRedux1 { ; Toby Marshall, Sept. 2002 ; This formula has a built-in Julia switch ; All functions and parameters can be varied ; to explore different Julia sets. ; Many thanks to Dave Makin for his extended ; switching and switch parameters. init: complex c = #pixel complex z = @startSeed IF (@mode == "Mandelbrot") z = @startSeed ENDIF IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: aa = fn1 (z-@p1) bb = fn2 (c-@p2) cc = fn3 (z-@p3) dd = fn4 (z-@p4) ee = @fn5 (c-@p5) IF (@grp == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd/ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd/ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd/ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd/ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd/ee ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd*ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd*ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd*ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd*ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd*ee ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd-ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd-ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd-ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd-ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd-ee ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd+ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd+ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd+ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd+ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd+ee ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd^ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd^ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd^ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd^ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd^ee ENDIF ENDIF ENDIF ELSEIF (@grp == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)/ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)/ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)/ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)/ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)/ee ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)*ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)*ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)*ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)*ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)*ee ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)-ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)-ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)-ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)-ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)-ee ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)+ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)+ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)+ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)+ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)+ee ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)^ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)^ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)^ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)^ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)^ee ENDIF ENDIF ENDIF ELSEIF (@grp == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd/ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd/ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd/ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd/ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd/ee) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd*ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd*ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd*ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd*ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd*ee) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd-ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd-ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd-ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd-ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd-ee) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd+ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd+ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd+ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd+ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd+ee) ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd^ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd^ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd^ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd^ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd^ee) ENDIF ENDIF ENDIF ELSEIF (@grp == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd/ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd/ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd/ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd/ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd/ee) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd*ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd*ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd*ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd*ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd*ee) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd-ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd-ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd-ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd-ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd-ee) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd+ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd+ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd+ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd+ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd+ee) ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd^ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd^ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd^ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd^ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd^ee) ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "SpiralsRedux1" startSeed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 p1 = @p1 p2 = @p2 p3 = @p3 p4 = @p4 p5 = @p5 grp = @grp op1 = @op1 op2 = @op2 op3 = @op3 mode = switchMode switchMode = mode center = @swcenter scale = @swscale default: title = "Spirals Redux 1" maxiter = 250 periodicity = 0 center = (0, 0.8) magn = 0.7 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param swscale caption = "switch scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param swcenter caption = "switch center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "scale reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "center reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam complex param startSeed caption = "Start/Seed" default = (1,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param bailout caption = "bailout" default = 50.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param p1 caption = "param 1" default = (0,0) endparam param p2 caption = "param 2" default = (0,0) endparam param p3 caption = "param 3" default = (0,0) endparam param p4 caption = "param 4" default = (0,0) endparam param p5 caption = "param 5" default = (0,0) endparam param op1 caption = "first operator" default = 1 enum = "divide""multiply" endparam param op2 caption = "second operator" default = 2 enum = "divide""multiply""subtract""add""exponent" endparam param op3 caption = "third operator" default = 2 enum = "divide""multiply""subtract""add""exponent" endparam param grp caption = "grouping" default = 0 enum = "first""second""third""fourth" endparam func fn1 Caption = "z function 1" default = ident () endfunc func fn4 Caption = "z function 2" default = ident () endfunc func fn2 Caption = "c function 1" default = flip () endfunc func fn3 Caption = "c function 2" default = ident () endfunc func fn5 Caption = "c function 3" default = ident () endfunc } *********************************************************************** SpiralsRedux2 { ; Toby Marshall, Sept. 2002 ; This formula has a built-in Julia switch ; All functions and parameters can be varied ; to explore different Julia sets. ; Many thanks to Dave Makin for his extended ; switching and switch parameters. init: complex c = #pixel complex z = @startSeed IF (@mode == "Mandelbrot") z = @startSeed ENDIF IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: aa = fn1 (z-@p1) bb = fn2 (c-@p2) cc = fn3 (z-@p3) dd = fn4 (c-@p4) ee = @fn5 (z-@p5) IF (@grp == 0) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd/ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd/ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd/ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd/ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd/ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd/ee ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd*ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd*ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd*ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd*ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd*ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd*ee ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd-ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd-ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd-ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd-ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd-ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd-ee ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd+ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd+ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd+ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd+ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd+ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd+ee ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc/dd^ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc*dd^ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc-dd^ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc+dd^ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^dd^ee ELSEIF (@op1 == 1) z = aa*bb^cc^dd^ee ENDIF ENDIF ENDIF ELSEIF (@grp == 1) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)/ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)/ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)/ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)/ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)/ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)/ee ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)*ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)*ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)*ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)*ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)*ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)*ee ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)-ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)-ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)-ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)-ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)-ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)-ee ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)+ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)+ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)+ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)+ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)+ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)+ee ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc/dd)^ee ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc*dd)^ee ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc-dd)^ee ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc+dd)^ee ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd)^ee ELSEIF (@op1 == 1) z = aa*bb^(cc^dd)^ee ENDIF ENDIF ENDIF ELSEIF (@grp == 2) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd/ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd/ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd/ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd/ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd/ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd/ee) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd*ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd*ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd*ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd*ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd*ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd*ee) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd-ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd-ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd-ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd-ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd-ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd-ee) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd+ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd+ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd+ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd+ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd+ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd+ee) ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^cc/(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc/(dd^ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^cc*(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc*(dd^ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^cc-(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc-(dd^ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^cc+(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc+(dd^ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^cc^(dd^ee) ELSEIF (@op1 == 1) z = aa*bb^cc^(dd^ee) ENDIF ENDIF ENDIF ELSEIF (@grp == 3) IF (@op3 == 0) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd/ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd/ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd/ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd/ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd/ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd/ee) ENDIF ENDIF ELSEIF (@op3 == 1) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd*ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd*ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd*ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd*ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd*ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd*ee) ENDIF ENDIF ELSEIF (@op3 == 2) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd-ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd-ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd-ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd-ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd-ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd-ee) ENDIF ENDIF ELSEIF (@op3 == 3) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd+ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd+ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd+ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd+ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd+ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd+ee) ENDIF ENDIF ELSEIF (@op3 == 4) IF (@op2 == 0) IF (@op1 == 0) z = aa/bb^(cc/dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc/dd^ee) ENDIF ELSEIF (@op2 == 1) IF (@op1 == 0) z = aa/bb^(cc*dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc*dd^ee) ENDIF ELSEIF (@op2 == 2) IF (@op1 == 0) z = aa/bb^(cc-dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc-dd^ee) ENDIF ELSEIF (@op2 == 3) IF (@op1 == 0) z = aa/bb^(cc+dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc+dd^ee) ENDIF ELSEIF (@op2 == 4) IF (@op1 == 0) z = aa/bb^(cc^dd^ee) ELSEIF (@op1 == 1) z = aa*bb^(cc^dd^ee) ENDIF ENDIF ENDIF ENDIF bailout: |z| < @bailout switch: type = "SpiralsRedux2" startSeed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 p1 = @p1 p2 = @p2 p3 = @p3 p4 = @p4 p5 = @p5 grp = @grp op1 = @op1 op2 = @op2 op3 = @op3 mode = switchMode switchMode = mode center = @swcenter scale = @swscale default: title = "Spirals Redux 2" maxiter = 250 periodicity = 0 center = (.4, 0.1) param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param swscale caption = "switch scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param swcenter caption = "switch center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "scale reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "center reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam complex param startSeed caption = "Start/Seed" default = (1,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param bailout caption = "bailout" default = 50.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param p1 caption = "param 1" default = (0,0) endparam param p2 caption = "param 2" default = (0,0) endparam param p3 caption = "param 3" default = (0,0) endparam param p4 caption = "param 4" default = (0,0) endparam param p5 caption = "param 5" default = (0,0) endparam param op1 caption = "first operator" default = 1 enum = "divide""multiply" endparam param op2 caption = "second operator" default = 2 enum = "divide""multiply""subtract""add""exponent" endparam param op3 caption = "third operator" default = 2 enum = "divide""multiply""subtract""add""exponent" endparam param grp caption = "grouping" default = 0 enum = "first""second""third""fourth" endparam func fn1 Caption = "z function 1" default = ident () endfunc func fn4 Caption = "z function 2" default = ident () endfunc func fn2 Caption = "c function 1" default = ident () endfunc func fn3 Caption = "c function 2" default = ident () endfunc func fn5 Caption = "c function 3" default = ident () endfunc } **************************************************** Fractotum1 { ; by Toby Marshall with a lot of help from Ken ; Childress ; ; ver 1.43 Sept. 2003--changed the switch params to ; be visible only when they are active. ; ; history: ; (version 1.42, June 2003--added new bailout test ; modes. Thanks to Frederik Slijkerman for permission ; to use them.) ; ; This is a kind of "formula matrix" in which ; you have the possibility of constructing ; your own equation through parameters. ; ; It is composed of five variables mediated ; by four operators. ; ; Each of the variables can be independently ; assigned as "z", "real(z)", "imag(z)", ; "atan2(z)", "|z|", "c" [#pixel], "real (c)", ; "imag (c)","atan2 (c)" or "|c|". ; ; Each of the operators can be assigned: ; (+,-,*,/,^). Operator precedences can ; be changed via the "Grouping" parameter. ; ; For convenience in exploration the sequence of ; the variables within the equation can be ; changed using the "Variable Ordering" parameter. ; Variables can also be repeated. Any value from ; 11111 to 55555 can be entered. Default is 12345. ; Thanks to Ken Childress for this brilliant piece ; of coding. ; ; Each variable has a function and a parameter ; attached which can be changed to achieve ; different effects. ; ; There are a number of different bailout test modes. ; This option appears most useful with non-orbit trap ; colorings. Thanks to Frederik Slijkerman for this code. ; ; Here is the default form of the equation: ; sqr(c) - real(c) * imag(c) - c * z ; ; Another interesting form is: ; z * (c * real(c))- imag(c) - z ; ; If you want to start from the classic Mandelbrot, ; set V1 and V2 to z, V3 to c, 1st Operator to *, ; 2nd Operator to +, V1-3 Functions to ident, V4-5 ; Functions to zero (to disable those variables), ; and 3rd and 4th Operators to either + or -. ; ; The formula has a built-in Julia switch which ; also switches back to the Mandelbrot set. There ; are parameters (switch center and scale)which ; are often useful in changing the position and ; magnification of the image in the switch window ; when things are happening there out of your view. ; ; Ken Childress deserves tons of credit for his parser ; and "Variable Ordering" parameter coding, both of which ; speeded up my original version immensely and added ; flexibility and functionality to the formula. His ; suggestions vis-a-vis coding and ordering also ; greatly improved the formula clarity both inside ; and outside. ; ; Many thanks also to Dave Makin for his ; "extended switch" and to Kerry Mitchell ; and Mark Townsend for their help and insights. init: complex c = #pixel complex z = @startSeed aa = 0 bb = 0 cc = 0 dd = 0 ee = 0 v1 = 0 v2 = 0 v3 = 0 v4 = 0 v5 = 0 complex terms[5] complex termStack[5] complex result int ops[5] int opStack[4] int termStackLength = 0 int opStackLength = 0 int opIdx = 0 int termIdx = 0 bool done = false int i = 0 int j = 0 int numTerms = 0 int add = 0 int subtract = 1 int multiply = 2 int divide = 3 int power = 4 int undef = 5 IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF int order[5] ; Convert ordering from abcde to .abcde float ordering = @varOrder / 100000 ; Convert .abcde to a.bcde ordering = ordering * 10 ; Get the first digit order[0] = trunc (ordering) ; Subtract the first digit, i.e. a.bcde becomes .bcde ordering = ordering - order[0] ; Get the second digit ordering = ordering * 10 order[1] = trunc (ordering) ordering = ordering - order[1] ; Get the third digit ordering = ordering * 10 order[2] = trunc (ordering) ordering = ordering - order[2] ; Get the fourth digit ordering = ordering * 10 order[3] = trunc (ordering) ordering = ordering - order[3] ; Get the second digit ordering = ordering * 10 order[4] = round (ordering) ordering = ordering - order[4] loop: IF (@v1Assign == "z") v1 = z ELSEIF (@v1Assign == "real(z)") v1 = real(z) ELSEIF (@v1Assign == "imag(z)") v1 = imag(z) ELSEIF (@v1Assign == "atan2(z)") v1 = atan2(z) ELSEIF (@v1Assign == "|z|") v1 = |z| ELSEIF (@v1Assign == "c") v1 = c ELSEIF (@v1Assign == "real(c)") v1 = real(c) ELSEIF (@v1Assign == "imag(c)") v1 = imag(c) ELSEIF (@v1Assign == "atan2(c)") v1 = atan2(c) ELSEIF (@v1Assign == "|c|") v1 = |c| ENDIF IF (@v2Assign == "z") v2 = z ELSEIF (@v2Assign == "real(z)") v2 = real(z) ELSEIF (@v2Assign == "imag(z)") v2 = imag(z) ELSEIF (@v2Assign == "atan2(z)") v2 = atan2(z) ELSEIF (@v2Assign == "|z|") v2 = |z| ELSEIF (@v2Assign == "c") v2 = c ELSEIF (@v2Assign == "real(c)") v2 = real(c) ELSEIF (@v2Assign == "imag(c)") v2 = imag(c) ELSEIF (@v2Assign == "atan2(c)") v2 = atan2(c) ELSEIF (@v2Assign == "|c|") v2 = |c| ENDIF IF (@v3Assign == "z") v3 = z ELSEIF (@v3Assign == "real(z)") v3 = real(z) ELSEIF (@v3Assign == "imag(z)") v3 = imag(z) ELSEIF (@v3Assign == "atan2(z)") v3 = atan2(z) ELSEIF (@v3Assign == "|z|") v3 = |z| ELSEIF (@v3Assign == "c") v3 = c ELSEIF (@v3Assign == "real(c)") v3 = real(c) ELSEIF (@v3Assign == "imag(c)") v3 = imag(c) ELSEIF (@v3Assign == "atan2(c)") v3 = atan2(c) ELSEIF (@v3Assign == "|c|") v3 = |c| ENDIF IF (@v4Assign == "z") v4 = z ELSEIF (@v4Assign == "real(z)") v4 = real(z) ELSEIF (@v4Assign == "imag(z)") v4 = imag(z) ELSEIF (@v4Assign == "atan2(z)") v4 = atan2(z) ELSEIF (@v4Assign == "|z|") v4 = |z| ELSEIF (@v4Assign == "c") v4 = c ELSEIF (@v4Assign == "real(c)") v4 = real(c) ELSEIF (@v4Assign == "imag(c)") v4 = imag(c) ELSEIF (@v4Assign == "atan2(c)") v4 = atan2(c) ELSEIF (@v4Assign == "|c|") v4 = |c| ENDIF IF (@v5Assign == "z") v5 = z ELSEIF (@v5Assign == "real(z)") v5 = real(z) ELSEIF (@v5Assign == "imag(z)") v5 = imag(z) ELSEIF (@v5Assign == "atan2(z)") v5 = atan2(z) ELSEIF (@v5Assign == "|z|") v5 = |z| ELSEIF (@v5Assign == "c") v5 = c ELSEIF (@v5Assign == "real(c)") v5 = real(c) ELSEIF (@v5Assign == "imag(c)") v5 = imag(c) ELSEIF (@v5Assign == "atan2(c)") v5 = atan2(c) ELSEIF (@v5Assign == "|c|") v5 = |c| ENDIF int i = 0 while i < 5 terms[i] = 0 if order[i] == 1 terms[i] = @v1Func (v1-@v1Param) elseif order[i] == 2 terms[i] = @v2Func (v2-@v2Param) elseif order[i] == 3 terms[i] = @v3Func (v3-@v3Param) elseif order[i] == 4 terms[i] = @v4Func (v4-@v4Param) elseif order[i] == 5 terms[i] = @v5Func (v5-@v5Param) endif i = i + 1 endwhile aa = terms[0] bb = terms[1] cc = terms[2] dd = terms[3] ee = terms[4] ; There are four terms in each of the groupings. The last ; two groupings only have three terms. The fourth will be zero. ; The first really has five terms, but since there are not ; parentheses, well assume it is the same as the second term. if (@grouping == "vvvvv") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd terms[4] = ee numTerms = 4 ops[0] = @op1 ops[1] = @op2 ops[2] = @op3 ops[3] = @op4 ops[4] = undef elseif (@grouping == "(vv)vvv") if (@op1 == "+") terms[0] = aa + bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "-") terms[0] = aa - bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "*") terms[0] = aa * bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "/") terms[0] = aa / bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "^") terms[0] = aa ^ bb terms[1] = cc terms[2] = dd terms[3] = ee endif numTerms = 4 ops[0] = @op2 ops[1] = @op3 ops[2] = @op4 ops[3] = undef ops[4] = undef elseif (@grouping == "v(vv)vv") if (@op2 == "+") terms[0] = aa terms[1] = bb + cc terms[2] = dd terms[3] = ee elseif (@op2 == "-") terms[0] = aa terms[1] = bb - cc terms[2] = dd terms[3] = ee elseif (@op2 == "*") terms[0] = aa terms[1] = bb * cc terms[2] = dd terms[3] = ee elseif (@op2 == "/") terms[0] = aa terms[1] = bb / cc terms[2] = dd terms[3] = ee elseif (@op2 == "^") terms[0] = aa terms[1] = bb^cc terms[2] = dd terms[3] = ee endif numTerms = 4 ops[0] = @op1 ops[1] = @op3 ops[2] = @op4 ops[3] = undef ops[4] = undef elseif (@grouping == "vv(vv)v") if (@op3 == "+") terms[0] = aa terms[1] = bb terms[2] = cc + dd terms[3] = ee elseif (@op3 == "-") terms[0] = aa terms[1] = bb terms[2] = cc - dd terms[3] = ee elseif (@op3 == "*") terms[0] = aa terms[1] = bb terms[2] = cc * dd terms[3] = ee elseif (@op3 == "/") terms[0] = aa terms[1] = bb terms[2] = cc / dd terms[3] = ee elseif (@op3 == "^") terms[0] = aa terms[1] = bb terms[2] = cc^dd terms[3] = ee endif numTerms = 4 ops[0] = @op1 ops[1] = @op2 ops[2] = @op4 ops[3] = undef ops[4] = undef elseif (@grouping == "vvv(vv)") if (@op4 == "+") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd + ee elseif (@op4 == "-") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd - ee elseif (@op4 == "*") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd * ee elseif (@op4 == "/") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd / ee elseif (@op4 == "^") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd^ee endif numTerms = 4 ops[0] = @op1 ops[1] = @op2 ops[2] = @op3 ops[3] = undef ops[4] = undef elseif (@grouping == "(vv)(vv)v") if (@op1 == "+") terms[0] = aa + bb terms[2] = ee terms[3] = 0 elseif (@op1 == "-") terms[0] = aa - bb terms[2] = ee terms[3] = 0 elseif (@op1 == "*") terms[0] = aa * bb terms[2] = ee terms[3] = 0 elseif (@op1 == "/") terms[0] = aa / bb terms[2] = ee terms[3] = 0 elseif (@op1 == "^") terms[0] = aa^bb terms[2] = ee terms[3] = 0 endif if (@op3 == "+") terms[1] = cc + dd elseif (@op3 == "-") terms[1] = cc - dd elseif (@op3 == "*") terms[1] = cc * dd elseif (@op3 == "/") terms[1] = cc / dd elseif (@op3 == "^") terms[1] = cc^dd endif numTerms = 3 ops[0] = @op2 ops[1] = @op4 ops[2] = undef ops[3] = undef ops[4] = undef elseif (@grouping == "(vv)v(vv)") if (@op1 == "+") terms[0] = aa + bb terms[1] = ee terms[3] = 0 elseif (@op1 == "-") terms[0] = aa - bb terms[1] = ee terms[3] = 0 elseif (@op1 == "*") terms[0] = aa * bb terms[1] = ee terms[3] = 0 elseif (@op1 == "/") terms[0] = aa / bb terms[1] = ee terms[3] = 0 elseif (@op1 == "^") terms[0] = aa^bb terms[1] = ee terms[3] = 0 endif if (@op4 == "+") terms[2] = dd + ee elseif (@op4 == "-") terms[2] = dd - ee elseif (@op4 == "*") terms[2] = dd * ee elseif (@op4 == "/") terms[2] = dd / ee elseif (@op4 == "^") terms[2] = dd^ee endif numTerms = 3 ops[0] = @op2 ops[1] = @op3 ops[2] = undef ops[3] = undef ops[4] = undef elseif (@grouping == "v(vv)(vv)") if (@op2 == "+") terms[0] = aa terms[1] = bb + cc elseif (@op2 == "-") terms[0] = aa terms[1] = bb - cc elseif (@op2 == "*") terms[0] = aa terms[1] = bb * cc elseif (@op2 == "/") terms[0] = aa terms[1] = bb / cc elseif (@op2 == "^") terms[0] = aa terms[1] = bb^cc endif if (@op4 == "+") terms[2] = dd + ee elseif (@op4 == "-") terms[2] = dd - ee elseif (@op4 == "*") terms[2] = dd * ee elseif (@op4 == "/") terms[2] = dd / ee elseif (@op4 == "^") terms[2] = dd^ee endif numTerms = 3 ops[0] = @op1 ops[1] = @op3 ops[2] = undef ops[3] = undef ops[4] = undef endif i = 0 done = false termStack[0] = terms[0] termStackLength = 1 opStackLength = 0 opIdx = 0 termIdx = 0 while (!done) ; If the current operator is "^", process it. if (ops[opIdx] == power) termStack[termStackLength-1] = termStack[termStackLength-1] ^ terms[termIdx+1] elseif (ops[opIdx] == multiply) ; If the current operator is "*" and the next operator is not "^", ; process it. if (ops[opIdx+1] != power) termStack[termStackLength-1] = termStack[termStackLength-1] * terms[termIdx+1] else ; The next operator is "^", so push current operand and operator ; on the stack. termStack[termStackLength] = terms[termIdx+1] termStackLength = termStackLength + 1 opStack[opStackLength] = multiply opStackLength = opStackLength + 1 endif elseif (ops[opIdx] == divide) ; If the current operator is "/" and the next operator is not "^", ; process it. if (ops[opIdx+1] != power) termStack[termStackLength-1] = termStack[termStackLength-1] / terms[termIdx+1] else ; The next operator is "^", so push current operand and operator ; on the stack. termStack[termStackLength] = terms[termIdx+1] termStackLength = termStackLength + 1 opStack[opStackLength] = divide opStackLength = opStackLength + 1 endif elseif (ops[opIdx+1] != power && ops[opIdx+1] != multiply && ops[opIdx+1] != divide) ; If the next operator is not "^", "*", or "/", process the addition. if (ops[opIdx] == add) termStack[termStackLength-1] = termStack[termStackLength-1] + terms[termIdx+1] elseif (ops[opIdx] == subtract) ; If the next operator is not "^", "*", or "/", process the subtraction. termStack[termStackLength-1] = termStack[termStackLength-1] - terms[termIdx+1] endif else ; If the next operator is "^", "*", or "/", push the current ; operand and operator on the stack. termStack[termStackLength] = terms[termIdx+1] termStackLength = termStackLength + 1 opStack[opStackLength] = ops[opIdx] opStackLength = opStackLength + 1 endif ; If the next operator is a "+" or "-", AND the operator on the top ; of the stack is a "*", "/", "+", or "-", then process that operator ; before going on to process the next operator. ; ; Note: This code is not generalized for arbitrary numbers of terms. ; It is specific to the current implementation of at most 5 terms. if (opStackLength > 0) if ((opStack[opStackLength-1] != power) && \ ((ops[opIdx+1] == add) || (ops[opIdx+1] == subtract))) if (opStack[opStackLength-1] == multiply) termStack[termStackLength-2] = termStack[termStackLength-2] * termStack[termStackLength-1] elseif (opStack[opStackLength-1] == divide) termStack[termStackLength-2] = termStack[termStackLength-2] / termStack[termStackLength-1] elseif (opStack[opStackLength-1] == add) termStack[termStackLength-2] = termStack[termStackLength-2] + termStack[termStackLength-1] elseif (opStack[opStackLength-1] == subtract) termStack[termStackLength-2] = termStack[termStackLength-2] - termStack[termStackLength-1] endif opStackLength = opStackLength - 1 termStackLength = termStackLength - 1 endif endif termIdx = termIdx + 1 opIdx = opIdx + 1 i = i + 1 if (termIdx == numTerms) done = true endif endwhile i = termStackLength - 1 j = opStackLength - 1 result = termStack[i] while (i > 0) if (opStack[j] == power) result = termStack[i-1] ^ result elseif (opStack[j] == multiply) result = termStack[i-1] * result elseif (opStack[j] == divide) result = termStack[i-1] / result elseif (opStack[j] == add) result = termStack[i-1] + result elseif (opStack[j] == subtract) result = termStack[i-1] - result endif i = i - 1 j = j - 1 endwhile z = result bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) switch: type = "Fractotum1" startSeed = #pixel bailout = @bailout test = @test bailfuc = @bailfunc v1Func = @v1Func v2Func = @v2Func v3Func = @v3Func v4Func = @v4Func v5Func = @v5Func v1Param = @v1Param v2Param = @v2Param v3Param = @v3Param v4Param = @v4Param v5Param = @v5Param grouping = @grouping v1Assign = @v1Assign v2Assign = @v2Assign v3Assign = @v3Assign v4Assign = @v4Assign v5Assign = @v5Assign op1 = @op1 op2 = @op2 op3 = @op3 op4 = @op4 mode = switchMode switchMode = mode center = @swcenter scale = @swscale varOrder = @varOrder default: title = "Fractotum 1" maxiter = 250 periodicity = 0 method = multipass param Version caption = "Formula Version" default = 143 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Switch Parameters" endheading param mode caption = "Current Mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch To" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the \ switch function." endparam param swscale caption = "Switch Scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater \ than 1) the image in the switch window. " visible = @mode == "Mandelbrot" endparam complex param swcenter caption = "Switch Center" default = (0.0,0.0) hint = "To change the centering of the image in the\ switch window" visible = @mode == "Mandelbrot" endparam param scale caption = "Scale Reset" default = 1.0 hint = "Reset this value to 1 after switching if \ you changed the 'switch scale' value." visible = @mode == "Julia" endparam complex param center caption = "Center Reset" default = (0.0,0.0) hint = "Reset this value to 0,0 after switching if \ you changed the 'switch center' value." visible = @mode == "Julia" endparam heading caption = "Start/Seed" endheading param startSeed caption = "Start/Seed" default = (0,0) hint = "Perturbation for the Mandelbrot, \ seed for the Julia." endparam heading caption = "Bailout Parameters" endheading float param bailout caption = "Bailout" default = 250.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param test caption = "Bailout Test Mode" default = 0 hint = "Changes the bailout test mode" enum = "|z|" "real" "imag" "or" "and" "manh" "manr" "function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc heading caption = "Change Operators" endheading param op1 caption = "1st Operator" default = 1 enum = "+" "-" "*" "/" "^" endparam param op2 caption = "2nd Operator" default = 2 enum = "+" "-" "*" "/" "^" endparam param op3 caption = "3rd Operator" default = 1 enum = "+" "-" "*" "/" "^" endparam param op4 caption = "4th Operator" default = 2 enum = "+" "-" "*" "/" "^" endparam heading caption = "Assign Variables" endheading param v1Assign caption = "Assign V1" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 1" endparam param v2Assign caption = "Assign V2" default = 6 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 2" endparam param v3Assign caption = "Assign V3" default = 7 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 3" endparam param v4Assign caption = "Assign V4" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 4" endparam param v5Assign caption = "Assign V5" default = 0 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 5" endparam heading caption = "Variable Parameters" endheading param grouping caption = "Grouping" default = 0 enum = "vvvvv""(vv)vvv""v(vv)vv"\ "vv(vv)v""vvv(vv)""(vv)(vv)v"\ "(vv)v(vv)""v(vv)(vv)" hint = "Shows which variable positions are \ parenthesized. The actual variables in those \ positions are determined by the 'Variable \ Ordering' parameter." endparam int param varOrder caption = "Variable Ordering" default = 12345 min = 12345 max = 54321 hint = "Changes the order of the variables. \ Variables can be repeated. Any order from 11111 \ to 55555 can be entered." endparam param v1Param caption = "V1 Param" default = (0,0) endparam param v2Param caption = "V2 Param" default = (0,0) endparam param v3Param caption = "V3 Param" default = (0,0) endparam param v4Param caption = "V4 Param" default = (0,0) endparam param v5Param caption = "V5 Param" default = (0,0) endparam heading caption = "Variable Functions" endheading func v1Func Caption = "V1 Function" default = sqr () endfunc func v2Func Caption = "V2 Function" default = ident () endfunc func v3Func Caption = "V3 Function" default = ident () endfunc func v4Func Caption = "V4 Function" default = ident () endfunc func v5Func Caption = "V5 Function" default = ident () endfunc } **************************************************** Fractotum2 { ; by Toby Marshall with a lot of help from Ken ; Childress ; ; ver 1.43, Sept. 2003, see below: ;*************************************************** ; IMPORTANT NOTE: The parameters "Switch Scale", ; "Switch Center", "Scale Reset" and "Center Reset" ; have been renamed "Echo Size(sw)", "Echo Shift(sw)", ; "Echo Size" and "Echo Shift" and moved under the ; heading "Position Parameters" to more accurately ; reflect what they actually do. "Echo" refers to ; the extra fractal figures that this formula produces ; as a result of the way variables are initialized as ; contrasted with "Fractotum 1". Check the hints ; for each param for details. Also the renamed ; params are now visible only when they are active. ; ; These changes are backwards compatible in that uprs ; are not broken, but values formerly in the ; "Switch Parameters" will now be found in the ; "Position Parameters". ;*************************************************** ; history: ; (version 1.42, June 2003--added new bailout test ; modes. Thanks to Frederik Slijkerman for permission ; to use them.) ; ; This is a kind of "formula matrix" in which ; you have the possibility of constructing ; your own equation through parameters. ; ; "Fractotum 2" differs from "Fractotum 1" by the ; position in the loop at which the variables are ; defined. This makes the initialization values ; of the variables play an important role in the ; final image. To that end this formula has extra ; parameters to allow you to define the initialization ; values of the variables (see below). ; ; "Fractotum 2" and "Fractotum 3" differ by virtue ; of the different position in the loop where the ; variables are defined, which creates different effects. ; ; It is composed of five variables mediated ; by four operators. ; ; Each of the variables can be independently ; assigned as "z", "real(z)", "imag(z)", ; "atan2(z)", "|z|", "c" [#pixel], "real (c)", ; "imag (c)","atan2 (c)" or "|c|". ; ; Each of the operators can be assigned: ; (+,-,*,/,^). Operator precedences can ; be changed via the "Grouping" parameter. ; ; For convenience in exploration the sequence of ; the variables within the equation can be ; changed using the "Variable Ordering" parameter. ; Variables can also be repeated. Any value from ; 11111 to 55555 can be entered. Default is 12345. ; Thanks to Ken Childress for this brilliant piece ; of coding. ; ; Each variable has a function and a parameter ; attached which can be changed to achieve ; different effects. ; ; There are a number of different bailout test modes. ; This option appears most useful with non-orbit trap ; colorings. Thanks to Frederik Slijkerman for this code. ; ; Finally, I found (totally by accident) that ; different initializations of the variables ; leads to very different final images. Therefore ; there are two other categories of choice, ; "Variable Initialization" and "Initialization ; Functions". (By default these are not visible; ; they can be accessed by checking the "Initialization ; Options" checkbox). Changing these values leads to ; serendipitous new effects, and can be done not ; only in the Mandelbrot set, but also after a ; Julia set has been chosen. ; ; Here is the default form of the equation: ; sqr(c) - real(c) * imag(c) - (c * z) ; Initilization parameters : ; c, c, c, c, z. ; ; Another interesting form is: ; z * (c * real(c))- imag(c) - z ; Initialization parameters: ; z, c, real(c), imag(c), z ; ; The formula has a built-in Julia switch which ; also switches back to the Mandelbrot set. There ; are parameters (switch center and scale)which ; are often useful in changing the position and ; magnification of the image in the switch window ; when things are happening there out of your view. ; ; Ken Childress deserves tons of credit for his parser ; and "Variable Ordering" parameter coding, both of which ; speeded up my original version immensely and added ; flexibility and functionality to the formula. His ; suggestions vis-a-vis coding and ordering also ; greatly improved the formula clarity both inside ; and outside. ; ; Many thanks also to Dave Makin for his ; "extended switch" and to Kerry Mitchell ; and Mark Townsend for their help and insights. init: complex c = #pixel complex z = @startSeed aa = 0 bb = 0 cc = 0 dd = 0 ee = 0 v1 = 0 v2 = 0 v3 = 0 v4 = 0 v5 = 0 complex terms[5] complex termStack[5] complex result int ops[5] int opStack[4] int termStackLength = 0 int opStackLength = 0 int opIdx = 0 int termIdx = 0 bool done = false int i = 0 int j = 0 int numTerms = 0 int add = 0 int subtract = 1 int multiply = 2 int divide = 3 int power = 4 int undef = 5 IF (@v1InitAssign == "z") v1 = @v1InitFunc(z) ELSEIF (@v1InitAssign == "real(z)") v1 = @v1InitFunc(real(z)) ELSEIF (@v1InitAssign == "imag(z)") v1 = @v1InitFunc(imag(z)) ELSEIF (@v1InitAssign == "atan2(z)") v1 = @v1InitFunc(atan2(z)) ELSEIF (@v1InitAssign == "|z|") v1 = @v1InitFunc(|z|) ELSEIF (@v1InitAssign == "c") v1 = @v1InitFunc(c) ELSEIF (@v1InitAssign == "real(c)") v1 = @v1InitFunc(real(c)) ELSEIF (@v1InitAssign == "imag(c)") v1 = @v1InitFunc(imag(c)) ELSEIF (@v1InitAssign == "atan2(c)") v1 = @v1InitFunc(atan2(c)) ELSEIF (@v1InitAssign == "|c|") v1 = @v1InitFunc(|c|) ENDIF IF (@v2InitAssign == "z") v2 = @v2InitFunc(z) ELSEIF (@v2InitAssign == "real(z)") v2 = @v2InitFunc(real(z)) ELSEIF (@v2InitAssign == "imag(z)") v2 = @v2InitFunc(imag(z)) ELSEIF (@v2InitAssign == "atan2(z)") v2 = @v2InitFunc(atan2(z)) ELSEIF (@v2InitAssign == "|z|") v2 = @v2InitFunc(|z|) ELSEIF (@v2InitAssign == "c") v2 = @v2InitFunc(c) ELSEIF (@v2InitAssign == "real(c)") v2 = @v2InitFunc(real(c)) ELSEIF (@v2InitAssign == "imag(c)") v2 = @v2InitFunc(imag(c)) ELSEIF (@v2InitAssign == "atan2(c)") v2 = @v2InitFunc(atan2(c)) ELSEIF (@v2InitAssign == "|c|") v2 = @v2InitFunc(|c|) ENDIF IF (@v3InitAssign == "z") v3 = @v3InitFunc(z) ELSEIF (@v3InitAssign == "real(z)") v3 = @v3InitFunc(real(z)) ELSEIF (@v3InitAssign == "imag(z)") v3 = @v3InitFunc(imag(z)) ELSEIF (@v3InitAssign == "atan2(z)") v3 = @v3InitFunc(atan2(z)) ELSEIF (@v3InitAssign == "|z|") v3 = @v3InitFunc(|z|) ELSEIF (@v3InitAssign == "c") v3 = @v3InitFunc(c) ELSEIF (@v3InitAssign == "real(c)") v3 = @v3InitFunc(real(c)) ELSEIF (@v3InitAssign == "imag(c)") v3 = @v3InitFunc(imag(c)) ELSEIF (@v3InitAssign == "atan2(c)") v3 = @v3InitFunc(atan2(c)) ELSEIF (@v3InitAssign == "|c|") v3 = @v3InitFunc(|c|) ENDIF IF (@v4InitAssign == "z") v4 = @v4InitFunc(z) ELSEIF (@v4InitAssign == "real(z)") v4 = @v4InitFunc(real(z)) ELSEIF (@v4InitAssign == "imag(z)") v4 = @v4InitFunc(imag(z)) ELSEIF (@v4InitAssign == "atan2(z)") v4 = @v4InitFunc(atan2(z)) ELSEIF (@v4InitAssign == "|z|") v4 = @v4InitFunc(|z|) ELSEIF (@v4InitAssign == "c") v4 = @v4InitFunc(c) ELSEIF (@v4InitAssign == "real(c)") v4 = @v4InitFunc(real(c)) ELSEIF (@v4InitAssign == "imag(c)") v4 = @v4InitFunc(imag(c)) ELSEIF (@v4InitAssign == "atan2(c)") v4 = @v4InitFunc(atan2(c)) ELSEIF (@v4InitAssign == "|c|") v4 = @v4InitFunc(|c|) ENDIF IF (@v5InitAssign == "z") v5 = @v5InitFunc(z) ELSEIF (@v5InitAssign == "real(z)") v5 = @v5InitFunc(real(z)) ELSEIF (@v5InitAssign == "imag(z)") v5 = @v5InitFunc(imag(z)) ELSEIF (@v5InitAssign == "atan2(z)") v5 = @v5InitFunc(atan2(z)) ELSEIF (@v5InitAssign == "|z|") v5 = @v5InitFunc(|z|) ELSEIF (@v5InitAssign == "c") v5 = @v5InitFunc(c) ELSEIF (@v5InitAssign == "real(c)") v5 = @v5InitFunc(real(c)) ELSEIF (@v5InitAssign == "imag(c)") v5 = @v5InitFunc(imag(c)) ELSEIF (@v5InitAssign == "atan2(c)") v5 = @v5InitFunc(atan2(c)) ELSEIF (@v5InitAssign == "|c|") v5 = @v5InitFunc(|c|) ENDIF IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF int order[5] ; Convert ordering from abcde to .abcde float ordering = @varOrder / 100000 ; Convert .abcde to a.bcde ordering = ordering * 10 ; Get the first digit order[0] = trunc (ordering) ; Subtract the first digit, i.e. a.bcde becomes .bcde ordering = ordering - order[0] ; Get the second digit ordering = ordering * 10 order[1] = trunc (ordering) ordering = ordering - order[1] ; Get the third digit ordering = ordering * 10 order[2] = trunc (ordering) ordering = ordering - order[2] ; Get the fourth digit ordering = ordering * 10 order[3] = trunc (ordering) ordering = ordering - order[3] ; Get the second digit ordering = ordering * 10 order[4] = round (ordering) ordering = ordering - order[4] loop: int i = 0 while i < 5 terms[i] = 0 if order[i] == 1 terms[i] = @v1Func (v1-@v1Param) elseif order[i] == 2 terms[i] = @v2Func (v2-@v2Param) elseif order[i] == 3 terms[i] = @v3Func (v3-@v3Param) elseif order[i] == 4 terms[i] = @v4Func (v4-@v4Param) elseif order[i] == 5 terms[i] = @v5Func (v5-@v5Param) endif i = i + 1 endwhile aa = terms[0] bb = terms[1] cc = terms[2] dd = terms[3] ee = terms[4] IF (@v1Assign == "z") v1 = z ELSEIF (@v1Assign == "real(z)") v1 = real(z) ELSEIF (@v1Assign == "imag(z)") v1 = imag(z) ELSEIF (@v1Assign == "atan2(z)") v1 = atan2(z) ELSEIF (@v1Assign == "|z|") v1 = |z| ELSEIF (@v1Assign == "c") v1 = c ELSEIF (@v1Assign == "real(c)") v1 = real(c) ELSEIF (@v1Assign == "imag(c)") v1 = imag(c) ELSEIF (@v1Assign == "atan2(c)") v1 = atan2(c) ELSEIF (@v1Assign == "|c|") v1 = |c| ENDIF IF (@v2Assign == "z") v2 = z ELSEIF (@v2Assign == "real(z)") v2 = real(z) ELSEIF (@v2Assign == "imag(z)") v2 = imag(z) ELSEIF (@v2Assign == "atan2(z)") v2 = atan2(z) ELSEIF (@v2Assign == "|z|") v2 = |z| ELSEIF (@v2Assign == "c") v2 = c ELSEIF (@v2Assign == "real(c)") v2 = real(c) ELSEIF (@v2Assign == "imag(c)") v2 = imag(c) ELSEIF (@v2Assign == "atan2(c)") v2 = atan2(c) ELSEIF (@v2Assign == "|c|") v2 = |c| ENDIF IF (@v3Assign == "z") v3 = z ELSEIF (@v3Assign == "real(z)") v3 = real(z) ELSEIF (@v3Assign == "imag(z)") v3 = imag(z) ELSEIF (@v3Assign == "atan2(z)") v3 = atan2(z) ELSEIF (@v3Assign == "|z|") v3 = |z| ELSEIF (@v3Assign == "c") v3 = c ELSEIF (@v3Assign == "real(c)") v3 = real(c) ELSEIF (@v3Assign == "imag(c)") v3 = imag(c) ELSEIF (@v3Assign == "atan2(c)") v3 = atan2(c) ELSEIF (@v3Assign == "|c|") v3 = |c| ENDIF IF (@v4Assign == "z") v4 = z ELSEIF (@v4Assign == "real(z)") v4 = real(z) ELSEIF (@v4Assign == "imag(z)") v4 = imag(z) ELSEIF (@v4Assign == "atan2(z)") v4 = atan2(z) ELSEIF (@v4Assign == "|z|") v4 = |z| ELSEIF (@v4Assign == "c") v4 = c ELSEIF (@v4Assign == "real(c)") v4 = real(c) ELSEIF (@v4Assign == "imag(c)") v4 = imag(c) ELSEIF (@v4Assign == "atan2(c)") v4 = atan2(c) ELSEIF (@v4Assign == "|c|") v4 = |c| ENDIF IF (@v5Assign == "z") v5 = z ELSEIF (@v5Assign == "real(z)") v5 = real(z) ELSEIF (@v5Assign == "imag(z)") v5 = imag(z) ELSEIF (@v5Assign == "atan2(z)") v5 = atan2(z) ELSEIF (@v5Assign == "|z|") v5 = |z| ELSEIF (@v5Assign == "c") v5 = c ELSEIF (@v5Assign == "real(c)") v5 = real(c) ELSEIF (@v5Assign == "imag(c)") v5 = imag(c) ELSEIF (@v5Assign == "atan2(c)") v5 = atan2(c) ELSEIF (@v5Assign == "|c|") v5 = |c| ENDIF ; There are four terms in each of the groupings. The last ; two groupings only have three terms. The fourth will be zero. ; The first really has five terms, but since there are not ; parentheses, well assume it is the same as the second term. if (@grouping == "vvvvv") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd terms[4] = ee numTerms = 4 ops[0] = @op1 ops[1] = @op2 ops[2] = @op3 ops[3] = @op4 ops[4] = undef elseif (@grouping == "(vv)vvv") if (@op1 == "+") terms[0] = aa + bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "-") terms[0] = aa - bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "*") terms[0] = aa * bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "/") terms[0] = aa / bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "^") terms[0] = aa ^ bb terms[1] = cc terms[2] = dd terms[3] = ee endif numTerms = 4 ops[0] = @op2 ops[1] = @op3 ops[2] = @op4 ops[3] = undef ops[4] = undef elseif (@grouping == "v(vv)vv") if (@op2 == "+") terms[0] = aa terms[1] = bb + cc terms[2] = dd terms[3] = ee elseif (@op2 == "-") terms[0] = aa terms[1] = bb - cc terms[2] = dd terms[3] = ee elseif (@op2 == "*") terms[0] = aa terms[1] = bb * cc terms[2] = dd terms[3] = ee elseif (@op2 == "/") terms[0] = aa terms[1] = bb / cc terms[2] = dd terms[3] = ee elseif (@op2 == "^") terms[0] = aa terms[1] = bb^cc terms[2] = dd terms[3] = ee endif numTerms = 4 ops[0] = @op1 ops[1] = @op3 ops[2] = @op4 ops[3] = undef ops[4] = undef elseif (@grouping == "vv(vv)v") if (@op3 == "+") terms[0] = aa terms[1] = bb terms[2] = cc + dd terms[3] = ee elseif (@op3 == "-") terms[0] = aa terms[1] = bb terms[2] = cc - dd terms[3] = ee elseif (@op3 == "*") terms[0] = aa terms[1] = bb terms[2] = cc * dd terms[3] = ee elseif (@op3 == "/") terms[0] = aa terms[1] = bb terms[2] = cc / dd terms[3] = ee elseif (@op3 == "^") terms[0] = aa terms[1] = bb terms[2] = cc^dd terms[3] = ee endif numTerms = 4 ops[0] = @op1 ops[1] = @op2 ops[2] = @op4 ops[3] = undef ops[4] = undef elseif (@grouping == "vvv(vv)") if (@op4 == "+") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd + ee elseif (@op4 == "-") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd - ee elseif (@op4 == "*") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd * ee elseif (@op4 == "/") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd / ee elseif (@op4 == "^") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd^ee endif numTerms = 4 ops[0] = @op1 ops[1] = @op2 ops[2] = @op3 ops[3] = undef ops[4] = undef elseif (@grouping == "(vv)(vv)v") if (@op1 == "+") terms[0] = aa + bb terms[2] = ee terms[3] = 0 elseif (@op1 == "-") terms[0] = aa - bb terms[2] = ee terms[3] = 0 elseif (@op1 == "*") terms[0] = aa * bb terms[2] = ee terms[3] = 0 elseif (@op1 == "/") terms[0] = aa / bb terms[2] = ee terms[3] = 0 elseif (@op1 == "^") terms[0] = aa^bb terms[2] = ee terms[3] = 0 endif if (@op3 == "+") terms[1] = cc + dd elseif (@op3 == "-") terms[1] = cc - dd elseif (@op3 == "*") terms[1] = cc * dd elseif (@op3 == "/") terms[1] = cc / dd elseif (@op3 == "^") terms[1] = cc^dd endif numTerms = 3 ops[0] = @op2 ops[1] = @op4 ops[2] = undef ops[3] = undef ops[4] = undef elseif (@grouping == "(vv)v(vv)") if (@op1 == "+") terms[0] = aa + bb terms[1] = ee terms[3] = 0 elseif (@op1 == "-") terms[0] = aa - bb terms[1] = ee terms[3] = 0 elseif (@op1 == "*") terms[0] = aa * bb terms[1] = ee terms[3] = 0 elseif (@op1 == "/") terms[0] = aa / bb terms[1] = ee terms[3] = 0 elseif (@op1 == "^") terms[0] = aa^bb terms[1] = ee terms[3] = 0 endif if (@op4 == "+") terms[2] = dd + ee elseif (@op4 == "-") terms[2] = dd - ee elseif (@op4 == "*") terms[2] = dd * ee elseif (@op4 == "/") terms[2] = dd / ee elseif (@op4 == "^") terms[2] = dd^ee endif numTerms = 3 ops[0] = @op2 ops[1] = @op3 ops[2] = undef ops[3] = undef ops[4] = undef elseif (@grouping == "v(vv)(vv)") if (@op2 == "+") terms[0] = aa terms[1] = bb + cc elseif (@op2 == "-") terms[0] = aa terms[1] = bb - cc elseif (@op2 == "*") terms[0] = aa terms[1] = bb * cc elseif (@op2 == "/") terms[0] = aa terms[1] = bb / cc elseif (@op2 == "^") terms[0] = aa terms[1] = bb^cc endif if (@op4 == "+") terms[2] = dd + ee elseif (@op4 == "-") terms[2] = dd - ee elseif (@op4 == "*") terms[2] = dd * ee elseif (@op4 == "/") terms[2] = dd / ee elseif (@op4 == "^") terms[2] = dd^ee endif numTerms = 3 ops[0] = @op1 ops[1] = @op3 ops[2] = undef ops[3] = undef ops[4] = undef endif i = 0 done = false termStack[0] = terms[0] termStackLength = 1 opStackLength = 0 opIdx = 0 termIdx = 0 while (!done) ; If the current operator is "^", process it. if (ops[opIdx] == power) termStack[termStackLength-1] = termStack[termStackLength-1] ^ terms[termIdx+1] elseif (ops[opIdx] == multiply) ; If the current operator is "*" and the next operator is not "^", ; process it. if (ops[opIdx+1] != power) termStack[termStackLength-1] = termStack[termStackLength-1] * terms[termIdx+1] else ; The next operator is "^", so push current operand and operator ; on the stack. termStack[termStackLength] = terms[termIdx+1] termStackLength = termStackLength + 1 opStack[opStackLength] = multiply opStackLength = opStackLength + 1 endif elseif (ops[opIdx] == divide) ; If the current operator is "/" and the next operator is not "^", ; process it. if (ops[opIdx+1] != power) termStack[termStackLength-1] = termStack[termStackLength-1] / terms[termIdx+1] else ; The next operator is "^", so push current operand and operator ; on the stack. termStack[termStackLength] = terms[termIdx+1] termStackLength = termStackLength + 1 opStack[opStackLength] = divide opStackLength = opStackLength + 1 endif elseif (ops[opIdx+1] != power && ops[opIdx+1] != multiply && ops[opIdx+1] != divide) ; If the next operator is not "^", "*", or "/", process the addition. if (ops[opIdx] == add) termStack[termStackLength-1] = termStack[termStackLength-1] + terms[termIdx+1] elseif (ops[opIdx] == subtract) ; If the next operator is not "^", "*", or "/", process the subtraction. termStack[termStackLength-1] = termStack[termStackLength-1] - terms[termIdx+1] endif else ; If the next operator is "^", "*", or "/", push the current ; operand and operator on the stack. termStack[termStackLength] = terms[termIdx+1] termStackLength = termStackLength + 1 opStack[opStackLength] = ops[opIdx] opStackLength = opStackLength + 1 endif ; If the next operator is a "+" or "-", AND the operator on the top ; of the stack is a "*", "/", "+", or "-", then process that operator ; before going on to process the next operator. ; ; Note: This code is not generalized for arbitrary numbers of terms. ; It is specific to the current implementation of at most 5 terms. if (opStackLength > 0) if ((opStack[opStackLength-1] != power) && \ ((ops[opIdx+1] == add) || (ops[opIdx+1] == subtract))) if (opStack[opStackLength-1] == multiply) termStack[termStackLength-2] = termStack[termStackLength-2] * termStack[termStackLength-1] elseif (opStack[opStackLength-1] == divide) termStack[termStackLength-2] = termStack[termStackLength-2] / termStack[termStackLength-1] elseif (opStack[opStackLength-1] == add) termStack[termStackLength-2] = termStack[termStackLength-2] + termStack[termStackLength-1] elseif (opStack[opStackLength-1] == subtract) termStack[termStackLength-2] = termStack[termStackLength-2] - termStack[termStackLength-1] endif opStackLength = opStackLength - 1 termStackLength = termStackLength - 1 endif endif termIdx = termIdx + 1 opIdx = opIdx + 1 i = i + 1 if (termIdx == numTerms) done = true endif endwhile i = termStackLength - 1 j = opStackLength - 1 result = termStack[i] while (i > 0) if (opStack[j] == power) result = termStack[i-1] ^ result elseif (opStack[j] == multiply) result = termStack[i-1] * result elseif (opStack[j] == divide) result = termStack[i-1] / result elseif (opStack[j] == add) result = termStack[i-1] + result elseif (opStack[j] == subtract) result = termStack[i-1] - result endif i = i - 1 j = j - 1 endwhile z = result bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) switch: type = "Fractotum2" startSeed = #pixel bailout = @bailout test = @test v1Func = @v1Func v2Func = @v2Func v3Func = @v3Func v4Func = @v4Func v5Func = @v5Func bailfunc = @bailfunc v1InitFunc = @v1InitFunc v2InitFunc = @v2InitFunc v3InitFunc = @v3InitFunc v4InitFunc = @v4InitFunc v5InitFunc = @v5InitFunc v1Param = @v1Param v2Param = @v2Param v3Param = @v3Param v4Param = @v4Param v5Param = @v5Param grouping = @grouping v1Assign = @v1Assign v2Assign = @v2Assign v3Assign = @v3Assign v4Assign = @v4Assign v5Assign = @v5Assign v1InitAssign = @v1InitAssign v2InitAssign = @v2InitAssign v3InitAssign = @v3InitAssign v4InitAssign = @v4InitAssign v5InitAssign = @v5InitAssign op1 = @op1 op2 = @op2 op3 = @op3 op4 = @op4 initOptions = @initOptions mode = switchMode switchMode = mode center = @swcenter scale = @swscale varOrder = @varOrder default: title = "Fractotum 2" maxiter = 250 periodicity = 0 method = multipass param Version caption = "Formula Version" default = 143 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Switch Parameters" endheading param mode caption = "Current Mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch To" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the \ switch function." endparam heading caption = "Start/Seed" endheading param startSeed caption = "Start/Seed" default = (0,0) hint = "Perturbation for the Mandelbrot, \ seed for the Julia." endparam heading caption = "Bailout Parameters" endheading float param bailout caption = "Bailout" default = 250.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param test caption = "Bailout Test Mode" default = 0 hint = "Changes the bailout test mode" enum = "|z|" "real" "imag" "or" "and" "manh" "manr" "function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc heading caption = "Position Parameters" endheading param swscale caption = "Echo Size(sw)" default = 1.0 hint = "Changing this value changes the size \ of the 'echo' figure in the switch \ window. This is carried across the \ switch. Other effects are possible \ depending on choices in other params." visible = @mode == "Mandelbrot" endparam complex param swcenter caption = "Echo Shift(sw)" default = (0.0,0.0) hint = "Changing this value changes the position \ of the 'echo' figure in the switch \ window. This is carried across the \ switch. Other effects are possible \ depending on choices in other params." visible = @mode == "Mandelbrot" endparam param scale caption = "Echo Size" default = 1.0 hint = "Changing this value changes the size \ of the 'echo' figure in the fractal \ window when in Julia mode. Other effects \ are possible depending on choices in \ other params." visible = @mode == "Julia" endparam complex param center caption = "Echo Shift" default = (0.0,0.0) hint = "Changing this value changes the position \ of the 'echo' figure in the fractal \ window when in Julia mode. Other effects \ are possible depending on choices in other \ params" visible = @mode == "Julia" endparam heading caption = "Change Operators" endheading param op1 caption = "1st Operator" default = 1 enum = "+" "-" "*" "/" "^" endparam param op2 caption = "2nd Operator" default = 2 enum = "+" "-" "*" "/" "^" endparam param op3 caption = "3rd Operator" default = 1 enum = "+" "-" "*" "/" "^" endparam param op4 caption = "4th Operator" default = 2 enum = "+" "-" "*" "/" "^" endparam heading caption = "Assign Variables" endheading param v1Assign caption = "Assign V1" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 1" endparam param v2Assign caption = "Assign V2" default = 6 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 2" endparam param v3Assign caption = "Assign V3" default = 7 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 3" endparam param v4Assign caption = "Assign V4" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 4" endparam param v5Assign caption = "Assign V5" default = 0 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 5" endparam heading caption = "Variable Parameters" endheading param grouping caption = "Grouping" default = 0 enum = "vvvvv""(vv)vvv""v(vv)vv"\ "vv(vv)v""vvv(vv)""(vv)(vv)v"\ "(vv)v(vv)""v(vv)(vv)" hint = "Shows which variable positions are \ parenthesized. The actual variables in those \ positions are determined by the 'Variable \ Ordering' parameter." endparam int param varOrder caption = "Variable Ordering" default = 12345 min = 12345 max = 54321 hint = "Changes the order of the variables. \ Variables can be repeated. Any order from 11111 \ to 55555 can be entered." endparam param v1Param caption = "V1 Param" default = (0,0) endparam param v2Param caption = "V2 Param" default = (0,0) endparam param v3Param caption = "V3 Param" default = (0,0) endparam param v4Param caption = "V4 Param" default = (0,0) endparam param v5Param caption = "V5 Param" default = (0,0) endparam heading caption = "Variable Functions" endheading func v1Func Caption = "V1 Function" default = sqr () endfunc func v2Func Caption = "V2 Function" default = ident () endfunc func v3Func Caption = "V3 Function" default = ident () endfunc func v4Func Caption = "V4 Function" default = ident () endfunc func v5Func Caption = "V5 Function" default = ident () endfunc param initOptions caption = "Initialization Options" default = false endparam heading caption = "Variable Initialization" visible = (@initOptions) endheading param v1InitAssign caption = "Assign Init V1" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" visible = (@initOptions) hint = "Chooses the initialization definition of\ variable 1" endparam param v2InitAssign caption = "Assign Init V2" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" visible = (@initOptions) hint = "Chooses the initialization definition of\ variable 2" endparam param v3InitAssign caption = "Assign Init V3" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" visible = (@initOptions) hint = "Chooses the initialization definition of\ variable 3" endparam param v4InitAssign caption = "Assign Init V4" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" visible = (@initOptions) hint = "Chooses the initialization definition of\ variable 4" endparam param v5InitAssign caption = "Assign Init V5" default = 0 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" visible = (@initOptions) hint = "Chooses the initialization definition of\ variable 5" endparam heading caption = "Initialization Functions" visible = (@initOptions) endheading func @v1InitFunc Caption = "V1 Init Function" default = ident () visible = (@initOptions) endfunc func @v2InitFunc Caption = "V2 Init Function" default = ident () visible = (@initOptions) endfunc func @v3InitFunc Caption = "V3 Init Function" default = ident () visible = (@initOptions) endfunc func @v4InitFunc Caption = "V4 Init Function" default = ident () visible = (@initOptions) endfunc func @v5InitFunc Caption = "V5 Init Function" default = ident () visible = (@initOptions) endfunc } **************************************************** Fractotum3 { ; by Toby Marshall with a lot of help from Ken ; Childress ; ; ver 1.43, Sept. 2003, see below: ;*************************************************** ; IMPORTANT NOTE: The parameters "Switch Scale", ; "Switch Center", "Scale Reset" and "Center Reset" ; have been renamed as "Deform 1(sw)", "Deform 2(sw)" ; "Deform 1" and Deform 2" and moved under the heading ; "Strange Parameters" to more accurately reflect ; what they actually do. In the original Fractotum 3 ; formula these params did nothing at all (my mistake) ; They now have become active but have variable effects. ; What happens when using them depends on other ; parameters chosen. The "Deform(sw)" params either ; change the size and position of the fractal in the ; switch window while using the switch in the Mandy, ; or they deform the fractal in the switch window in ; various ways. The "Deform" params have analogous ; effects on the fractal in the main window in Julia ; mode. Check the hints for each param for details. ; ; Also the renamed params are now visible only when they ; are active. These changes are backwards compatible, ; but in uprs and ufrs with earlier version numbers ; these renemed params will remain inactive so as not ; to possibly break the original images. ;*************************************************** ; history: ; (version 1.42, June 2003--added new bailout test ; modes. Thanks to Frederik Slijkerman for permission ; to use them.) ; ; This is a kind of "formula matrix" in which ; you have the possibility of constructing ; your own equation through parameters. ; ; "Fractotum 2" differs from "Fractotum 1" by the ; position in the loop at which the variables are ; defined. This makes the initialization values ; of the variables play an important role in the ; final image. To that end this formula has extra ; parameters to allow you to define the initialization ; values of the variables (see below). ; ; "Fractotum 2" and "Fractotum 3" differ by virtue ; of the different position in the loop where the ; variables are defined, which creates different effects. ; ; It is composed of five variables mediated ; by four operators. ; ; Each of the variables can be independently ; assigned as "z", "real(z)", "imag(z)", ; "atan2(z)", "|z|", "c" [#pixel], "real (c)", ; "imag (c)","atan2 (c)" or "|c|". ; ; Each of the operators can be assigned: ; (+,-,*,/,^). Operator precedences can ; be changed via the "Grouping" parameter. ; ; For convenience in exploration the sequence of ; the variables within the equation can be ; changed using the "Variable Ordering" parameter. ; Variables can also be repeated. Any value from ; 11111 to 55555 can be entered. Default is 12345. ; Thanks to Ken Childress for this brilliant piece ; of coding. ; ; Each variable has a function and a parameter ; attached which can be changed to achieve ; different effects. ; ; There are a number of different bailout test modes. ; This option appears most useful with non-orbit trap ; colorings. Thanks to Frederik Slijkerman for this code. ; ; Finally, I found (totally by accident) that ; different initializations of the variables ; leads to very different final images. Therefore ; there are two other categories of choice, ; "Variable Initialization" and "Initialization ; Functions". (By default these are not visible; ; they can be accessed by checking the "Initialization ; Options" checkbox). Changing these values leads to ; serendipitous new effects, and can be done not ; only in the Mandelbrot set, but also after a ; Julia set has been chosen. ; ; Here is the default form of the equation: ; sqr(c) - real(c) * imag(c) - (c * z) ; Initilization parameters : ; c, c, c, c, z. ; ; Another interesting form is: ; z * (c * real(c))- imag(c) - z ; Initialization parameters: ; z, c, real(c), imag(c), z ; ; The formula has a built-in Julia switch which ; also switches back to the Mandelbrot set. There ; are parameters (switch center and scale)which ; are often useful in changing the position and ; magnification of the image in the switch window ; when things are happening there out of your view. ; ; Ken Childress deserves tons of credit for his parser ; and "Variable Ordering" parameter coding, both of which ; speeded up my original version immensely and added ; flexibility and functionality to the formula. His ; suggestions vis-a-vis coding and ordering also ; greatly improved the formula clarity both inside ; and outside. ; ; Many thanks also to Dave Makin for his ; "extended switch" and to Kerry Mitchell ; and Mark Townsend for their help and insights. init: complex c = #pixel complex z = @startSeed aa = 0 bb = 0 cc = 0 dd = 0 ee = 0 v1 = 0 v2 = 0 v3 = 0 v4 = 0 v5 = 0 complex terms[5] complex termStack[5] complex result int ops[5] int opStack[4] int termStackLength = 0 int opStackLength = 0 int opIdx = 0 int termIdx = 0 bool done = false int i = 0 int j = 0 int numTerms = 0 int add = 0 int subtract = 1 int multiply = 2 int divide = 3 int power = 4 int undef = 5 IF @version == 143 IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF IF (@v1InitAssign == "z") v1 = @v1InitFunc(z) ELSEIF (@v1InitAssign == "real(z)") v1 = @v1InitFunc(real(z)) ELSEIF (@v1InitAssign == "imag(z)") v1 = @v1InitFunc(imag(z)) ELSEIF (@v1InitAssign == "atan2(z)") v1 = @v1InitFunc(atan2(z)) ELSEIF (@v1InitAssign == "|z|") v1 = @v1InitFunc(|z|) ELSEIF (@v1InitAssign == "c") v1 = @v1InitFunc(c) ELSEIF (@v1InitAssign == "real(c)") v1 = @v1InitFunc(real(c)) ELSEIF (@v1InitAssign == "imag(c)") v1 = @v1InitFunc(imag(c)) ELSEIF (@v1InitAssign == "atan2(c)") v1 = @v1InitFunc(atan2(c)) ELSEIF (@v1InitAssign == "|c|") v1 = @v1InitFunc(|c|) ENDIF IF (@v2InitAssign == "z") v2 = @v2InitFunc(z) ELSEIF (@v2InitAssign == "real(z)") v2 = @v2InitFunc(real(z)) ELSEIF (@v2InitAssign == "imag(z)") v2 = @v2InitFunc(imag(z)) ELSEIF (@v2InitAssign == "atan2(z)") v2 = @v2InitFunc(atan2(z)) ELSEIF (@v2InitAssign == "|z|") v2 = @v2InitFunc(|z|) ELSEIF (@v2InitAssign == "c") v2 = @v2InitFunc(c) ELSEIF (@v2InitAssign == "real(c)") v2 = @v2InitFunc(real(c)) ELSEIF (@v2InitAssign == "imag(c)") v2 = @v2InitFunc(imag(c)) ELSEIF (@v2InitAssign == "atan2(c)") v2 = @v2InitFunc(atan2(c)) ELSEIF (@v2InitAssign == "|c|") v2 = @v2InitFunc(|c|) ENDIF IF (@v3InitAssign == "z") v3 = @v3InitFunc(z) ELSEIF (@v3InitAssign == "real(z)") v3 = @v3InitFunc(real(z)) ELSEIF (@v3InitAssign == "imag(z)") v3 = @v3InitFunc(imag(z)) ELSEIF (@v3InitAssign == "atan2(z)") v3 = @v3InitFunc(atan2(z)) ELSEIF (@v3InitAssign == "|z|") v3 = @v3InitFunc(|z|) ELSEIF (@v3InitAssign == "c") v3 = @v3InitFunc(c) ELSEIF (@v3InitAssign == "real(c)") v3 = @v3InitFunc(real(c)) ELSEIF (@v3InitAssign == "imag(c)") v3 = @v3InitFunc(imag(c)) ELSEIF (@v3InitAssign == "atan2(c)") v3 = @v3InitFunc(atan2(c)) ELSEIF (@v3InitAssign == "|c|") v3 = @v3InitFunc(|c|) ENDIF IF (@v4InitAssign == "z") v4 = @v4InitFunc(z) ELSEIF (@v4InitAssign == "real(z)") v4 = @v4InitFunc(real(z)) ELSEIF (@v4InitAssign == "imag(z)") v4 = @v4InitFunc(imag(z)) ELSEIF (@v4InitAssign == "atan2(z)") v4 = @v4InitFunc(atan2(z)) ELSEIF (@v4InitAssign == "|z|") v4 = @v4InitFunc(|z|) ELSEIF (@v4InitAssign == "c") v4 = @v4InitFunc(c) ELSEIF (@v4InitAssign == "real(c)") v4 = @v4InitFunc(real(c)) ELSEIF (@v4InitAssign == "imag(c)") v4 = @v4InitFunc(imag(c)) ELSEIF (@v4InitAssign == "atan2(c)") v4 = @v4InitFunc(atan2(c)) ELSEIF (@v4InitAssign == "|c|") v4 = @v4InitFunc(|c|) ENDIF IF (@v5InitAssign == "z") v5 = @v5InitFunc(z) ELSEIF (@v5InitAssign == "real(z)") v5 = @v5InitFunc(real(z)) ELSEIF (@v5InitAssign == "imag(z)") v5 = @v5InitFunc(imag(z)) ELSEIF (@v5InitAssign == "atan2(z)") v5 = @v5InitFunc(atan2(z)) ELSEIF (@v5InitAssign == "|z|") v5 = @v5InitFunc(|z|) ELSEIF (@v5InitAssign == "c") v5 = @v5InitFunc(c) ELSEIF (@v5InitAssign == "real(c)") v5 = @v5InitFunc(real(c)) ELSEIF (@v5InitAssign == "imag(c)") v5 = @v5InitFunc(imag(c)) ELSEIF (@v5InitAssign == "atan2(c)") v5 = @v5InitFunc(atan2(c)) ELSEIF (@v5InitAssign == "|c|") v5 = @v5InitFunc(|c|) ENDIF IF @mode == "Julia" z = #pixel c = @startSeed IF @version != 143 IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF ENDIF int order[5] ; Convert ordering from abcde to .abcde float ordering = @varOrder / 100000 ; Convert .abcde to a.bcde ordering = ordering * 10 ; Get the first digit order[0] = trunc (ordering) ; Subtract the first digit, i.e. a.bcde becomes .bcde ordering = ordering - order[0] ; Get the second digit ordering = ordering * 10 order[1] = trunc (ordering) ordering = ordering - order[1] ; Get the third digit ordering = ordering * 10 order[2] = trunc (ordering) ordering = ordering - order[2] ; Get the fourth digit ordering = ordering * 10 order[3] = trunc (ordering) ordering = ordering - order[3] ; Get the second digit ordering = ordering * 10 order[4] = round (ordering) ordering = ordering - order[4] loop: int i = 0 while i < 5 terms[i] = 0 if order[i] == 1 terms[i] = @v1Func (v1-@v1Param) elseif order[i] == 2 terms[i] = @v2Func (v2-@v2Param) elseif order[i] == 3 terms[i] = @v3Func (v3-@v3Param) elseif order[i] == 4 terms[i] = @v4Func (v4-@v4Param) elseif order[i] == 5 terms[i] = @v5Func (v5-@v5Param) endif i = i + 1 endwhile aa = terms[0] bb = terms[1] cc = terms[2] dd = terms[3] ee = terms[4] ; There are four terms in each of the groupings. The last ; two groupings only have three terms. The fourth will be zero. ; The first really has five terms, but since there are not ; parentheses, well assume it is the same as the second term. if (@grouping == "vvvvv") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd terms[4] = ee numTerms = 4 ops[0] = @op1 ops[1] = @op2 ops[2] = @op3 ops[3] = @op4 ops[4] = undef elseif (@grouping == "(vv)vvv") if (@op1 == "+") terms[0] = aa + bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "-") terms[0] = aa - bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "*") terms[0] = aa * bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "/") terms[0] = aa / bb terms[1] = cc terms[2] = dd terms[3] = ee elseif (@op1 == "^") terms[0] = aa ^ bb terms[1] = cc terms[2] = dd terms[3] = ee endif numTerms = 4 ops[0] = @op2 ops[1] = @op3 ops[2] = @op4 ops[3] = undef ops[4] = undef elseif (@grouping == "v(vv)vv") if (@op2 == "+") terms[0] = aa terms[1] = bb + cc terms[2] = dd terms[3] = ee elseif (@op2 == "-") terms[0] = aa terms[1] = bb - cc terms[2] = dd terms[3] = ee elseif (@op2 == "*") terms[0] = aa terms[1] = bb * cc terms[2] = dd terms[3] = ee elseif (@op2 == "/") terms[0] = aa terms[1] = bb / cc terms[2] = dd terms[3] = ee elseif (@op2 == "^") terms[0] = aa terms[1] = bb^cc terms[2] = dd terms[3] = ee endif numTerms = 4 ops[0] = @op1 ops[1] = @op3 ops[2] = @op4 ops[3] = undef ops[4] = undef elseif (@grouping == "vv(vv)v") if (@op3 == "+") terms[0] = aa terms[1] = bb terms[2] = cc + dd terms[3] = ee elseif (@op3 == "-") terms[0] = aa terms[1] = bb terms[2] = cc - dd terms[3] = ee elseif (@op3 == "*") terms[0] = aa terms[1] = bb terms[2] = cc * dd terms[3] = ee elseif (@op3 == "/") terms[0] = aa terms[1] = bb terms[2] = cc / dd terms[3] = ee elseif (@op3 == "^") terms[0] = aa terms[1] = bb terms[2] = cc^dd terms[3] = ee endif numTerms = 4 ops[0] = @op1 ops[1] = @op2 ops[2] = @op4 ops[3] = undef ops[4] = undef elseif (@grouping == "vvv(vv)") if (@op4 == "+") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd + ee elseif (@op4 == "-") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd - ee elseif (@op4 == "*") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd * ee elseif (@op4 == "/") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd / ee elseif (@op4 == "^") terms[0] = aa terms[1] = bb terms[2] = cc terms[3] = dd^ee endif numTerms = 4 ops[0] = @op1 ops[1] = @op2 ops[2] = @op3 ops[3] = undef ops[4] = undef elseif (@grouping == "(vv)(vv)v") if (@op1 == "+") terms[0] = aa + bb terms[2] = ee terms[3] = 0 elseif (@op1 == "-") terms[0] = aa - bb terms[2] = ee terms[3] = 0 elseif (@op1 == "*") terms[0] = aa * bb terms[2] = ee terms[3] = 0 elseif (@op1 == "/") terms[0] = aa / bb terms[2] = ee terms[3] = 0 elseif (@op1 == "^") terms[0] = aa^bb terms[2] = ee terms[3] = 0 endif if (@op3 == "+") terms[1] = cc + dd elseif (@op3 == "-") terms[1] = cc - dd elseif (@op3 == "*") terms[1] = cc * dd elseif (@op3 == "/") terms[1] = cc / dd elseif (@op3 == "^") terms[1] = cc^dd endif numTerms = 3 ops[0] = @op2 ops[1] = @op4 ops[2] = undef ops[3] = undef ops[4] = undef elseif (@grouping == "(vv)v(vv)") if (@op1 == "+") terms[0] = aa + bb terms[1] = ee terms[3] = 0 elseif (@op1 == "-") terms[0] = aa - bb terms[1] = ee terms[3] = 0 elseif (@op1 == "*") terms[0] = aa * bb terms[1] = ee terms[3] = 0 elseif (@op1 == "/") terms[0] = aa / bb terms[1] = ee terms[3] = 0 elseif (@op1 == "^") terms[0] = aa^bb terms[1] = ee terms[3] = 0 endif if (@op4 == "+") terms[2] = dd + ee elseif (@op4 == "-") terms[2] = dd - ee elseif (@op4 == "*") terms[2] = dd * ee elseif (@op4 == "/") terms[2] = dd / ee elseif (@op4 == "^") terms[2] = dd^ee endif numTerms = 3 ops[0] = @op2 ops[1] = @op3 ops[2] = undef ops[3] = undef ops[4] = undef elseif (@grouping == "v(vv)(vv)") if (@op2 == "+") terms[0] = aa terms[1] = bb + cc elseif (@op2 == "-") terms[0] = aa terms[1] = bb - cc elseif (@op2 == "*") terms[0] = aa terms[1] = bb * cc elseif (@op2 == "/") terms[0] = aa terms[1] = bb / cc elseif (@op2 == "^") terms[0] = aa terms[1] = bb^cc endif if (@op4 == "+") terms[2] = dd + ee elseif (@op4 == "-") terms[2] = dd - ee elseif (@op4 == "*") terms[2] = dd * ee elseif (@op4 == "/") terms[2] = dd / ee elseif (@op4 == "^") terms[2] = dd^ee endif numTerms = 3 ops[0] = @op1 ops[1] = @op3 ops[2] = undef ops[3] = undef ops[4] = undef endif i = 0 done = false termStack[0] = terms[0] termStackLength = 1 opStackLength = 0 opIdx = 0 termIdx = 0 while (!done) ; If the current operator is "^", process it. if (ops[opIdx] == power) termStack[termStackLength-1] = termStack[termStackLength-1] ^ terms[termIdx+1] elseif (ops[opIdx] == multiply) ; If the current operator is "*" and the next operator is not "^", ; process it. if (ops[opIdx+1] != power) termStack[termStackLength-1] = termStack[termStackLength-1] * terms[termIdx+1] else ; The next operator is "^", so push current operand and operator ; on the stack. termStack[termStackLength] = terms[termIdx+1] termStackLength = termStackLength + 1 opStack[opStackLength] = multiply opStackLength = opStackLength + 1 endif elseif (ops[opIdx] == divide) ; If the current operator is "/" and the next operator is not "^", ; process it. if (ops[opIdx+1] != power) termStack[termStackLength-1] = termStack[termStackLength-1] / terms[termIdx+1] else ; The next operator is "^", so push current operand and operator ; on the stack. termStack[termStackLength] = terms[termIdx+1] termStackLength = termStackLength + 1 opStack[opStackLength] = divide opStackLength = opStackLength + 1 endif elseif (ops[opIdx+1] != power && ops[opIdx+1] != multiply && ops[opIdx+1] != divide) ; If the next operator is not "^", "*", or "/", process the addition. if (ops[opIdx] == add) termStack[termStackLength-1] = termStack[termStackLength-1] + terms[termIdx+1] elseif (ops[opIdx] == subtract) ; If the next operator is not "^", "*", or "/", process the subtraction. termStack[termStackLength-1] = termStack[termStackLength-1] - terms[termIdx+1] endif else ; If the next operator is "^", "*", or "/", push the current ; operand and operator on the stack. termStack[termStackLength] = terms[termIdx+1] termStackLength = termStackLength + 1 opStack[opStackLength] = ops[opIdx] opStackLength = opStackLength + 1 endif ; If the next operator is a "+" or "-", AND the operator on the top ; of the stack is a "*", "/", "+", or "-", then process that operator ; before going on to process the next operator. ; ; Note: This code is not generalized for arbitrary numbers of terms. ; It is specific to the current implementation of at most 5 terms. if (opStackLength > 0) if ((opStack[opStackLength-1] != power) && \ ((ops[opIdx+1] == add) || (ops[opIdx+1] == subtract))) if (opStack[opStackLength-1] == multiply) termStack[termStackLength-2] = termStack[termStackLength-2] * termStack[termStackLength-1] elseif (opStack[opStackLength-1] == divide) termStack[termStackLength-2] = termStack[termStackLength-2] / termStack[termStackLength-1] elseif (opStack[opStackLength-1] == add) termStack[termStackLength-2] = termStack[termStackLength-2] + termStack[termStackLength-1] elseif (opStack[opStackLength-1] == subtract) termStack[termStackLength-2] = termStack[termStackLength-2] - termStack[termStackLength-1] endif opStackLength = opStackLength - 1 termStackLength = termStackLength - 1 endif endif termIdx = termIdx + 1 opIdx = opIdx + 1 i = i + 1 if (termIdx == numTerms) done = true endif endwhile i = termStackLength - 1 j = opStackLength - 1 result = termStack[i] while (i > 0) if (opStack[j] == power) result = termStack[i-1] ^ result elseif (opStack[j] == multiply) result = termStack[i-1] * result elseif (opStack[j] == divide) result = termStack[i-1] / result elseif (opStack[j] == add) result = termStack[i-1] + result elseif (opStack[j] == subtract) result = termStack[i-1] - result endif i = i - 1 j = j - 1 endwhile z = result IF (@v1Assign == "z") v1 = z ELSEIF (@v1Assign == "real(z)") v1 = real(z) ELSEIF (@v1Assign == "imag(z)") v1 = imag(z) ELSEIF (@v1Assign == "atan2(z)") v1 = atan2(z) ELSEIF (@v1Assign == "|z|") v1 = |z| ELSEIF (@v1Assign == "c") v1 = c ELSEIF (@v1Assign == "real(c)") v1 = real(c) ELSEIF (@v1Assign == "imag(c)") v1 = imag(c) ELSEIF (@v1Assign == "atan2(c)") v1 = atan2(c) ELSEIF (@v1Assign == "|c|") v1 = |c| ENDIF IF (@v2Assign == "z") v2 = z ELSEIF (@v2Assign == "real(z)") v2 = real(z) ELSEIF (@v2Assign == "imag(z)") v2 = imag(z) ELSEIF (@v2Assign == "atan2(z)") v2 = atan2(z) ELSEIF (@v2Assign == "|z|") v2 = |z| ELSEIF (@v2Assign == "c") v2 = c ELSEIF (@v2Assign == "real(c)") v2 = real(c) ELSEIF (@v2Assign == "imag(c)") v2 = imag(c) ELSEIF (@v2Assign == "atan2(c)") v2 = atan2(c) ELSEIF (@v2Assign == "|c|") v2 = |c| ENDIF IF (@v3Assign == "z") v3 = z ELSEIF (@v3Assign == "real(z)") v3 = real(z) ELSEIF (@v3Assign == "imag(z)") v3 = imag(z) ELSEIF (@v3Assign == "atan2(z)") v3 = atan2(z) ELSEIF (@v3Assign == "|z|") v3 = |z| ELSEIF (@v3Assign == "c") v3 = c ELSEIF (@v3Assign == "real(c)") v3 = real(c) ELSEIF (@v3Assign == "imag(c)") v3 = imag(c) ELSEIF (@v3Assign == "atan2(c)") v3 = atan2(c) ELSEIF (@v3Assign == "|c|") v3 = |c| ENDIF IF (@v4Assign == "z") v4 = z ELSEIF (@v4Assign == "real(z)") v4 = real(z) ELSEIF (@v4Assign == "imag(z)") v4 = imag(z) ELSEIF (@v4Assign == "atan2(z)") v4 = atan2(z) ELSEIF (@v4Assign == "|z|") v4 = |z| ELSEIF (@v4Assign == "c") v4 = c ELSEIF (@v4Assign == "real(c)") v4 = real(c) ELSEIF (@v4Assign == "imag(c)") v4 = imag(c) ELSEIF (@v4Assign == "atan2(c)") v4 = atan2(c) ELSEIF (@v4Assign == "|c|") v4 = |c| ENDIF IF (@v5Assign == "z") v5 = z ELSEIF (@v5Assign == "real(z)") v5 = real(z) ELSEIF (@v5Assign == "imag(z)") v5 = imag(z) ELSEIF (@v5Assign == "atan2(z)") v5 = atan2(z) ELSEIF (@v5Assign == "|z|") v5 = |z| ELSEIF (@v5Assign == "c") v5 = c ELSEIF (@v5Assign == "real(c)") v5 = real(c) ELSEIF (@v5Assign == "imag(c)") v5 = imag(c) ELSEIF (@v5Assign == "atan2(c)") v5 = atan2(c) ELSEIF (@v5Assign == "|c|") v5 = |c| ENDIF bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) switch: type = "Fractotum3" startSeed = #pixel bailout = @bailout test = @test v1Func = @v1Func v2Func = @v2Func v3Func = @v3Func v4Func = @v4Func v5Func = @v5Func bailfunc = @bailfunc v1InitFunc = @v1InitFunc v2InitFunc = @v2InitFunc v3InitFunc = @v3InitFunc v4InitFunc = @v4InitFunc v5InitFunc = @v5InitFunc v1Param = @v1Param v2Param = @v2Param v3Param = @v3Param v4Param = @v4Param v5Param = @v5Param grouping = @grouping v1Assign = @v1Assign v2Assign = @v2Assign v3Assign = @v3Assign v4Assign = @v4Assign v5Assign = @v5Assign v1InitAssign = @v1InitAssign v2InitAssign = @v2InitAssign v3InitAssign = @v3InitAssign v4InitAssign = @v4InitAssign v5InitAssign = @v5InitAssign op1 = @op1 op2 = @op2 op3 = @op3 op4 = @op4 initOptions = @initOptions mode = switchMode switchMode = mode center = @swcenter scale = @swscale varOrder = @varOrder default: title = "Fractotum 3" maxiter = 250 periodicity = 0 method = multipass param Version caption = "Formula Version" default = 143 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Switch Parameters" endheading param mode caption = "Current Mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch To" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the \ switch function." endparam heading caption = "Start/Seed" endheading param startSeed caption = "Start/Seed" default = (0,0) hint = "Perturbation for the Mandelbrot, \ seed for the Julia." endparam heading caption = "Bailout Parameters" endheading float param bailout caption = "Bailout" default = 250.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param test caption = "Bailout Test Mode" default = 0 hint = "Changes the bailout test mode" enum = "|z|" "real" "imag" "or" "and" "manh" "manr" "function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc heading caption = "Strange Parameters" endheading param swscale caption = "Deform 1(sw)" default = 1.0 hint = "Changing this value can change the shape or size \ of the fractal in the switch window depending on \ other parameter choices. Sometimes it is inactive." visible = @mode == "Mandelbrot" endparam complex param swcenter caption = "Deform 2(sw)" default = (0.0,0.0) hint = "Changing this value can change the shape or position \ of the fractal in the switch window depending on \ other parameter choices. Sometimes it is inactive." visible = @mode == "Mandelbrot" endparam param scale caption = "Deform 1" default = 1.0 hint = "Changing this value can change the shape or size \ of the fractal in the main window in Julia mode \ depending on other parameter choices. \ Sometimes it is inactive." visible = @mode == "Julia" endparam complex param center caption = "Deform 2" default = (0.0,0.0) hint = "Changing this value can change the shape or position \ of the fractal in the main window in Julia mode \ depending on other parameter choices. \ Sometimes it is inactive." visible = @mode == "Julia" endparam heading caption = "Change Operators" endheading param op1 caption = "1st Operator" default = 1 enum = "+" "-" "*" "/" "^" endparam param op2 caption = "2nd Operator" default = 2 enum = "+" "-" "*" "/" "^" endparam param op3 caption = "3rd Operator" default = 1 enum = "+" "-" "*" "/" "^" endparam param op4 caption = "4th Operator" default = 2 enum = "+" "-" "*" "/" "^" endparam heading caption = "Assign Variables" endheading param v1Assign caption = "Assign V1" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 1" endparam param v2Assign caption = "Assign V2" default = 6 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 2" endparam param v3Assign caption = "Assign V3" default = 7 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 3" endparam param v4Assign caption = "Assign V4" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 4" endparam param v5Assign caption = "Assign V5" default = 0 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" hint = "Chooses the definition of variable 5" endparam heading caption = "Variable Parameters" endheading param grouping caption = "Grouping" default = 0 enum = "vvvvv""(vv)vvv""v(vv)vv"\ "vv(vv)v""vvv(vv)""(vv)(vv)v"\ "(vv)v(vv)""v(vv)(vv)" hint = "Shows which variable positions are \ parenthesized. The actual variables in those \ positions are determined by the 'Variable \ Ordering' parameter." endparam int param varOrder caption = "Variable Ordering" default = 12345 min = 12345 max = 54321 hint = "Changes the order of the variables. \ Variables can be repeated. Any order from 11111 \ to 55555 can be entered." endparam param v1Param caption = "V1 Param" default = (0,0) endparam param v2Param caption = "V2 Param" default = (0,0) endparam param v3Param caption = "V3 Param" default = (0,0) endparam param v4Param caption = "V4 Param" default = (0,0) endparam param v5Param caption = "V5 Param" default = (0,0) endparam heading caption = "Variable Functions" endheading func v1Func Caption = "V1 Function" default = sqr () endfunc func v2Func Caption = "V2 Function" default = ident () endfunc func v3Func Caption = "V3 Function" default = ident () endfunc func v4Func Caption = "V4 Function" default = ident () endfunc func v5Func Caption = "V5 Function" default = ident () endfunc param initOptions caption = "Initialization Options" default = false endparam heading caption = "Variable Initialization" visible = (@initOptions) endheading param v1InitAssign caption = "Assign Init V1" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" visible = (@initOptions) hint = "Chooses the initialization definition of\ variable 1" endparam param v2InitAssign caption = "Assign Init V2" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" visible = (@initOptions) hint = "Chooses the initialization definition of\ variable 2" endparam param v3InitAssign caption = "Assign Init V3" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" visible = (@initOptions) hint = "Chooses the initialization definition of\ variable 3" endparam param v4InitAssign caption = "Assign Init V4" default = 5 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" visible = (@initOptions) hint = "Chooses the initialization definition of\ variable 4" endparam param v5InitAssign caption = "Assign Init V5" default = 0 enum = "z""real(z)""imag(z)""atan2(z)""|z|"\ "c""real(c)""imag(c)""atan2(c)""|c|" visible = (@initOptions) hint = "Chooses the initialization definition of\ variable 5" endparam heading caption = "Initialization Functions" visible = (@initOptions) endheading func @v1InitFunc Caption = "V1 Init Function" default = ident () visible = (@initOptions) endfunc func @v2InitFunc Caption = "V2 Init Function" default = ident () visible = (@initOptions) endfunc func @v3InitFunc Caption = "V3 Init Function" default = ident () visible = (@initOptions) endfunc func @v4InitFunc Caption = "V4 Init Function" default = ident () visible = (@initOptions) endfunc func @v5InitFunc Caption = "V5 Init Function" default = ident () visible = (@initOptions) endfunc } *********************************************************** MandalaGrande { ; Toby Marshall, Mar 2003 ; ver 1.1 (added bailout tests) ; A modified and enhanced version of "mandala gamma" ; Use the switch to explore the perimeter of the M set. ; The real component of "exponent1" determines the ; number of arms in the Julia figure. Inside colorings ; are useful with the Mandala formulae. ; ; Many thanks to Frederik Slijkerman for permission ; to use his bailout tests. ; init: complex c = #pixel complex z = @startSeed x = z IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: IF (@invert == true) x = 1/z ELSEIF (@invert == false) x = z ENDIF IF (@op == "-") z = fn1(fn2((x^@power1-fn4(c^@power3-@kludge)))-@budge)^fn3(@pow/((c^@power2)-@nudge)) ELSEIF (@op == "+") z = fn1(fn2((x^@power1+fn4(c^@power3-@kludge)))-@budge)^fn3(@pow/((c^@power2)-@nudge)) ELSEIF (@op == "/") z = fn1(fn2((x^@power1/fn4(c^@power3-@kludge)))-@budge)^fn3(@pow/((c^@power2)-@nudge)) ELSEIF (@op == "*") z = fn1(fn2((x^@power1*fn4(c^@power3-@kludge)))-@budge)^fn3(@pow/((c^@power2)-@nudge)) ELSEIF (@op == "^") z = fn1(fn2((x^@power1^fn4(c^@power3-@kludge)))-@budge)^fn3(@pow/((c^@power2)-@nudge)) ENDIF bailout: (@bail == 0 && |z| <= @bailout) || \ (@bail == 1 && sqr(real(z)) <= @bailout) || \ (@bail == 2 && sqr(imag(z)) <= @bailout) || \ (@bail == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@bail == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@bail == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@bail == 6 && (sqr(real(z) + imag(z)) <= @bailout) || \ (@bail == 7 && real(@bailfunc(z)) <=@bailout)) switch: type = "MandalaGrande" startSeed = #pixel bailout = bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 bailfunc = @bailfunc start = @start budge = @budge nudge = @nudge kludge = @kludge bail = @bail power1 = @power1 power2 = @power2 power3 = @power3 pow = @pow op = @op invert = @invert mode = switchMode switchMode = mode scale = switchScale center = switchCenter default: periodicity = 0 title = "Mandala Grande" method = multipass param Version caption = "Formula Version" default = 1.1 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Switch Parameters" endheading param mode caption = "Current Mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch To" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param switchScale caption = "Switch Scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param switchCenter caption = "Switch Center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "Scale Reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "Center Reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam heading caption = "Bailout Parameters" endheading float param bailout caption = "Bailout" default = 7.0 endparam param bail caption = "Bailout Test" enum = "|z|" "real" "imag" "or" "and" "manh" "manr""function(z)" hint = "Changes the bailout test mode." default = 0 endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@bail == "function(z)") endfunc heading caption = "Formula Parameters" endheading complex param startSeed caption = "Start/Seed" default = (1,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param op caption = "Operator" enum = "-""+""/""*""^" default = 3 endparam param invert caption = "Invert Z" default = false endparam complex param power1 caption = "Z Exponent" default = (3.0,0.0) hint = "The real component determines the number \ of arms in the figure. The imaginary component \ changes the scale of the elements moving around the figure." endparam complex param power2 caption = "C1 Exponent" default = (1.0,0.0) endparam complex param power3 caption = "C2 Exponent" default = (1.0,0.0) endparam complex param budge caption = "Budge" default = (0.0,0.0) endparam complex param kludge caption = "Kludge" default = (0.0,0.0) endparam complex param nudge caption = "Nudge" default = (0.0,0.0) endparam complex param pow caption = "Power" default = (1.0,0.0) endparam heading caption = "Formula Functions" endheading func fn1 caption = "Global Function" default = flip () endfunc func fn2 caption = "Z Function" default = conj () endfunc func fn3 caption = "C1 Function" default = log () endfunc func fn4 caption = "C2 Function" default = ident () endfunc } *********************************************************** MandalaDiLusso { ; Toby Marshall, Mar 2003 ; ver 1.1 (added bailout tests) ; A modified and enhanced version of "mandala delta" ; Use the switch to explore the perimeter of the M set. ; The real component of "exponent1" determines the ; number of arms in the Julia figure. Inside colorings ; are useful with the Mandala formuale. ; ; Many thanks to Frederik Slijkerman for permission ; to use his bailout tests. ; init: complex c = #pixel complex z = @startSeed x = z IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: IF (@invert == true) x = 1/z ELSEIF (@invert == false) x = z ENDIF IF (@op == "-") z = fn1(fn2((x^@power1-fn4(c^@power3-@kludge)))-@budge)^fn3((c^@power2)-@nudge) ELSEIF (@op == "+") z = fn1(fn2((x^@power1+fn4(c^@power3-@kludge)))-@budge)^fn3((c^@power2)-@nudge) ELSEIF (@op == "/") z = fn1(fn2((x^@power1/fn4(c^@power3-@kludge)))-@budge)^fn3((c^@power2)-@nudge) ELSEIF (@op == "*") z = fn1(fn2((x^@power1*fn4(c^@power3-@kludge)))-@budge)^fn3((c^@power2)-@nudge) ELSEIF (@op == "^") z = fn1(fn2((x^@power1^fn4(c^@power3-@kludge)))-@budge)^fn3((c^@power2)-@nudge) ENDIF bailout: (@bail == 0 && |z| <= @bailout) || \ (@bail == 1 && sqr(real(z)) <= @bailout) || \ (@bail == 2 && sqr(imag(z)) <= @bailout) || \ (@bail == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@bail == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@bail == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@bail == 6 && (sqr(real(z) + imag(z)) <= @bailout) || \ (@bail == 7 && real(@bailfunc(z)) <=@bailout)) switch: type = "MandalaDiLusso" startSeed = #pixel bailout = bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 bailfunc = @bailfunc start = @start budge = @budge nudge = @nudge kludge = @kludge bail = @bail power1 = @power1 power2 = @power2 power3 = @power3 op = @op invert = @invert mode = switchMode switchMode = mode scale = switchScale center = switchCenter default: periodicity = 0 title = "Mandala di Lusso" method = multipass param Version caption = "Formula Version" default = 1.1 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Switch Parameters" endheading param mode caption = "Current Mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch To" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param switchScale caption = "Switch Scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param switchCenter caption = "Switch Center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "Scale Reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "Center Reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam heading caption = "Bailout Parameters" endheading float param bailout caption = "Bailout" default = 7.0 endparam param bail caption = "Bailout Test" enum = "|z|" "real" "imag" "or" "and" "manh" "manr""function(z)" hint = "Changes the bailout test mode." default = 0 endparam func bailfunc caption = "Bailout Funciton" default = ident () visible = (@bail == "function(z)") endfunc heading caption = "Formula Parameters" endheading complex param startSeed caption = "Start/Seed" default = (1,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param op caption = "Operator" enum = "-""+""/""*""^" default = 3 endparam param invert caption = "Invert Z" default = false endparam complex param power1 caption = "Z Exponent" default = (3.0,0.0) hint = "The real component determines the number \ of arms in the figure. The imaginary component \ changes the scale of the elements moving around the figure." endparam complex param power2 caption = "C1 Exponent" default = (1.0,0.0) endparam complex param power3 caption = "C2 Exponent" default = (1.0,0.0) endparam complex param budge caption = "Budge" default = (0.0,0.0) endparam complex param kludge caption = "Kludge" default = (0.0,0.0) endparam complex param nudge caption = "Nudge" default = (0.0,0.0) endparam heading caption = "Formula Functions" endheading func fn1 caption = "Global Function" default = ident () endfunc func fn2 caption = "Z Function" default = abs () endfunc func fn3 caption = "C1 Function" default = log () endfunc func fn4 caption = "C2 Function" default = ident () endfunc } ******************************************************************************************** MandalaNuova { ; Toby Marshall, Mar 2003 ; ver 1.1 (added bailout tests) ; A modified and enhanced version of "mandala zeta" ; Use the switch to explore the perimeter of the M set. ; The real component of "exponent1" determines the ; number of arms in the Julia figure. Inside colorings ; are useful with the Mandala formuale. ; ; Many thanks to Frederik Slijkerman for permission ; to use his bailout tests. ; init: complex c = #pixel complex z = @startSeed x = z IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: IF (@invert == true) x = 1/z ELSEIF (@invert == false) x = z ENDIF IF (@opc == "+") IF (@op == "-") z = fn1((fn2((x^@power1-(fn4(imag(c^@power3-@kludge))+@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "+") z = fn1((fn2((x^@power1+(fn4(imag(c^@power3-@kludge))+@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "/") z = fn1((fn2((x^@power1/(fn4(imag(c^@power3-@kludge))+@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "*") z = fn1((fn2((x^@power1*(fn4(imag(c^@power3-@kludge))+@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "^") z = fn1((fn2((x^@power1^(fn4(imag(c^@power3-@kludge))+@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ENDIF ELSEIF (@opc == "*") IF (@op == "-") z = fn1((fn2((x^@power1-(fn4(imag(c^@power3-@kludge))*@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "+") z = fn1((fn2((x^@power1+(fn4(imag(c^@power3-@kludge))*@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "/") z = fn1((fn2((x^@power1/(fn4(imag(c^@power3-@kludge))*@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "*") z = fn1((fn2((x^@power1*(fn4(imag(c^@power3-@kludge))*@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "^") z = fn1((fn2((x^@power1^(fn4(imag(c^@power3-@kludge))*@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ENDIF ELSEIF (@opc == "^") IF (@op == "-") z = fn1((fn2((x^@power1-(fn4(imag(c^@power3-@kludge))^@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "+") z = fn1((fn2((x^@power1+(fn4(imag(c^@power3-@kludge))^@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "/") z = fn1((fn2((x^@power1/(fn4(imag(c^@power3-@kludge))^@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "*") z = fn1((fn2((x^@power1*(fn4(imag(c^@power3-@kludge))^@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ELSEIF (@op == "^") z = fn1((fn2((x^@power1^(fn4(imag(c^@power3-@kludge))^@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((c^@power2)-@nudge) ENDIF ENDIF bailout: (@bail == 0 && |z| <= @bailout) || \ (@bail == 1 && sqr(real(z)) <= @bailout) || \ (@bail == 2 && sqr(imag(z)) <= @bailout) || \ (@bail == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@bail == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@bail == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@bail == 6 && (sqr(real(z) + imag(z)) <= @bailout) || \ (@bail == 7 && real(@bailfunc(z)) <=@bailout)) switch: type = "MandalaNuova" startSeed = #pixel bailout = bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 bailfunc = @bailfunc start = @start budge = @budge nudge = @nudge kludge = @kludge fudge = @fudge bail = @bail power1 = @power1 power2 = @power2 power3 = @power3 power4 = @power4 op = @op opc = @opc invert = @invert mode = switchMode switchMode = mode scale = switchScale center = switchCenter default: periodicity = 0 title = "Mandala Nuova" method = multipass param Version caption = "Formula Version" default = 1.1 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Switch Parameters" endheading param mode caption = "Current Mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch To" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param switchScale caption = "Switch Scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param switchCenter caption = "Switch Center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "Scale Reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "Center Reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam heading caption = "Bailout Parameters" endheading float param bailout caption = "Bailout" default = 7.0 endparam param bail caption = "Bailout Test" enum = "|z|" "real" "imag" "or" "and" "manh" "manr" "function(z)" hint = "Changes the bailout test mode." default = 0 endparam func bailfunc caption = "Bailout Funciton" default = ident () visible = (@bail == "function(z)") endfunc heading caption = "Formula Parameters" endheading complex param startSeed caption = "Start/Seed" default = (1,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param op caption = "Operator" enum = "-""+""/""*""^" default = 3 endparam param opc caption = "Real/Imag Operator" enum = "+""*""^" default = 1 endparam param invert caption = "Invert Z" default = false endparam complex param power1 caption = "Z Exponent" default = (3.0,0.0) hint = "The real component determines the number \ of arms in the figure. The imaginary component \ changes the scale of the elements moving around the figure." endparam complex param power2 caption = "C1 Exponent" default = (1.0,0.0) endparam complex param power3 caption = "C(imag) Exponent" default = (1.0,0.0) endparam complex param power4 caption = "C(real) Exponent" default = (1.0,0.0) endparam complex param budge caption = "Budge" default = (0.0,0.0) endparam complex param fudge caption = "Fudge" default = (0.0,0.0) endparam complex param kludge caption = "Kludge" default = (0.0,0.0) endparam complex param nudge caption = "Nudge" default = (0.0,0.0) endparam heading caption = "Formula Functions" endheading func fn1 caption = "Global Function" default = ident () endfunc func fn2 caption = "Z Function" default = abs () endfunc func fn3 caption = "C1 Function" default = log () endfunc func fn4 caption = "C(imag) Function" default = ident () endfunc func fn5 caption = "C(real) Function" default = ident () endfunc } ******************************************************************************************** MandalaDecorata { ; Toby Marshall, Mar 2003 ; ver 1.1 (added bailout tests) ; A modified and enhanced version of "mandala epsilon" ; Use the switch to explore the perimeter of the M set. ; The real component of "exponent1" determines the ; number of arms in the Julia figure. Inside colorings ; are useful with the Mandala formuale. ; ; Many thanks to Frederik Slijkerman for permission ; to use his bailout tests. ; init: complex c = #pixel complex z = @startSeed x = z IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: IF (@invert == true) x = 1/z ELSEIF (@invert == false) x = z ENDIF IF (@opc == "+") IF (@op == "-") z = fn1((fn2((x^@power1-(fn4(imag(c^@power3-@kludge))+@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "+") z = fn1((fn2((x^@power1+(fn4(imag(c^@power3-@kludge))+@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "/") z = fn1((fn2((x^@power1/(fn4(imag(c^@power3-@kludge))+@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "*") z = fn1((fn2((x^@power1*(fn4(imag(c^@power3-@kludge))+@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "^") z = fn1((fn2((x^@power1^(fn4(imag(c^@power3-@kludge))+@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ENDIF ELSEIF (@opc == "*") IF (@op == "-") z = fn1((fn2((x^@power1-(fn4(imag(c^@power3-@kludge))*@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "+") z = fn1((fn2((x^@power1+(fn4(imag(c^@power3-@kludge))*@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "/") z = fn1((fn2((x^@power1/(fn4(imag(c^@power3-@kludge))*@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "*") z = fn1((fn2((x^@power1*(fn4(imag(c^@power3-@kludge))*@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "^") z = fn1((fn2((x^@power1^(fn4(imag(c^@power3-@kludge))*@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ENDIF ELSEIF (@opc == "^") IF (@op == "-") z = fn1((fn2((x^@power1-(fn4(imag(c^@power3-@kludge))^@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "+") z = fn1((fn2((x^@power1+(fn4(imag(c^@power3-@kludge))^@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "/") z = fn1((fn2((x^@power1/(fn4(imag(c^@power3-@kludge))^@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "*") z = fn1((fn2((x^@power1*(fn4(imag(c^@power3-@kludge))^@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ELSEIF (@op == "^") z = fn1((fn2((x^@power1^(fn4(imag(c^@power3-@kludge))^@fn5(real(c^@power4-@fudge)))))\ -@budge))^fn3((@pow/c^@power2)-@nudge) ENDIF ENDIF bailout: (@bail == 0 && |z| <= @bailout) || \ (@bail == 1 && sqr(real(z)) <= @bailout) || \ (@bail == 2 && sqr(imag(z)) <= @bailout) || \ (@bail == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@bail == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@bail == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@bail == 6 && (sqr(real(z) + imag(z)) <= @bailout) || \ (@bail == 7 && real(@bailfunc(z)) <=@bailout)) switch: type = "MandalaDecorata" startSeed = #pixel bailout = bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 bailfunc = @bailfunc start = @start budge = @budge nudge = @nudge kludge = @kludge fudge = @fudge bail = @bail power1 = @power1 power2 = @power2 power3 = @power3 power4 = @power4 pow = @pow op = @op opc = @opc invert = @invert mode = switchMode switchMode = mode scale = switchScale center = switchCenter default: periodicity = 0 title = "Mandala Decorata" method = multipass param Version caption = "Formula Version" default = 1.1 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Switch Parameters" endheading param mode caption = "Current Mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch To" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param switchScale caption = "Switch Scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param switchCenter caption = "Switch Center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "Scale Reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "Center Reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam heading caption = "Bailout Parameters" endheading float param bailout caption = "Bailout" default = 7.0 endparam param bail caption = "Bailout Test" enum = "|z|" "real" "imag" "or" "and" "manh" "manr" "function(z)" hint = "Changes the bailout test mode." default = 0 endparam func bailfunc caption = "Bailout Funciton" default = ident () visible = (@bail == "function(z)") endfunc heading caption = "Formula Parameters" endheading complex param startSeed caption = "Start/Seed" default = (1,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param op caption = "Operator" enum = "-""+""/""*""^" default = 3 endparam param opc caption = "Real/Imag Operator" enum = "+""*""^" default = 1 endparam param invert caption = "Invert Z" default = false endparam complex param pow caption = "Power" default = (1.0,0.0) endparam complex param power1 caption = "Z Exponent" default = (3.0,0.0) hint = "The real component determines the number \ of arms in the figure. The imaginary component \ changes the scale of the elements moving around the figure." endparam complex param power2 caption = "C1 Exponent" default = (1.0,0.0) endparam complex param power3 caption = "C(imag) Exponent" default = (1.0,0.0) endparam complex param power4 caption = "C(real) Exponent" default = (1.0,0.0) endparam complex param budge caption = "Budge" default = (0.0,0.0) endparam complex param fudge caption = "Fudge" default = (0.0,0.0) endparam complex param kludge caption = "Kludge" default = (0.0,0.0) endparam complex param nudge caption = "Nudge" default = (0.0,0.0) endparam heading caption = "Formula Functions" endheading func fn1 caption = "Global Function" default = ident () endfunc func fn2 caption = "Z Function" default = abs () endfunc func fn3 caption = "C1 Function" default = log () endfunc func fn4 caption = "C(imag) Function" default = ident () endfunc func fn5 caption = "C(real) Function" default = ident () endfunc } *********************************************************** barnsley1menh { ; ; Adapted from Frederik Slijkerman's formula by Toby Marshall ; Apr. 2003 ver 1.2 (1.1 added two new functions, 1.2 added ; two new parameters) ; ;Many thanks to him for allowing me to publish this. ; ; Here is Frederik's "Barnsley 1" formula enhanced ; with extra functions and parameters. Higher bailouts need inside ; colorings. Try "Overall Function" set to "cabs" for some nifty ; spirals. ; ; init: z = pixel + @start x = z loop: IF (@invert == true) x = 1/z ELSEIF (@invert == false) x = z ENDIF IF real(fn1(z)) >= 0 z = (fn2(x^@e1) - @p1) * fn4(pixel - @p3) ELSE z = (fn3(x^@e2) + @p2) * @fn5(pixel - @p4) ENDIF bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) default: title = "Barnsley 1 (Mandelbrot) Enhanced" maxiter = 149 method = multipass param version caption = "Formula Version" default = 1.2 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Bailout" endheading param bailout caption = "Bailout value" default = 4.0 min = 1.0 endparam param test caption = "Bailout Test" default = 0 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc heading caption = "Parameters" endheading param invert caption = "Invert Z" default = false endparam param start caption = "Perturbation" default = (0,0) endparam complex param p1 caption = "Parameter 1" default = (1.0, 0) endparam complex param p2 caption = "Parameter 2" default = (1.0 , 0) endparam complex param p3 caption = "Parameter 3" default = (0, 0) endparam complex param p4 caption = "Parameter 4" default = (0 , 0) endparam complex param e1 caption = "Exponent 1" default = (1.0, 0) endparam complex param e2 caption = "Exponent 2" default = (1.0, 0) endparam heading caption = "Functions" endheading func fn1 caption = "Overall Function" default = ident () endfunc func fn2 caption = "Function 1" default = ident () endfunc func fn3 caption = "Function 2" default = ident () endfunc func fn4 caption = "Function 3" default = ident () endfunc func fn5 caption = "Function 4" default = ident () endfunc switch: type = "barnsley1jenh" bailout = bailout test = test p1 = @p1 p2 = @p2 p3 = @p3 p4 = @p4 e1 = @e1 e2 = @e2 fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 bailfunc = @bailfunc start = pixel invert = @invert } barnsley1jenh { ; ; Adapted from Frederik Slijkerman's formula by Toby Marshall ; Apr. 2003 ver 1.2 (1.1 added two new functions, 1.2 added ; two new parameters) ; ;Many thanks to him for allowing me to publish this. ; ; Here is Frederik's "Barnsley 1" formula enhanced ; with extra functions and parameters. Higher bailouts need inside ; colorings. Try "Overall Function" set to "cabs" for some nifty ; spirals. ; init: z = pixel x = z loop: IF (@invert == true) x = 1/z ELSEIF (@invert == false) x = z ENDIF IF real(fn1(z)) >= 0 z = (fn2(x^@e1) - @p1) * fn4(@start - @p3) ELSE z = (fn3(x^@e2) + @p2) * @fn5(@start - @p4) ENDIF bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) default: title = "Barnsley 1 (Julia) Enhanced" maxiter = 149 param version caption = "Formula Version" default = 1.2 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Bailout" endheading param bailout caption = "Bailout value" default = 4.0 min = 1.0 endparam param test caption = "Bailout Test" default = 0 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc heading caption = "Parameters" endheading param invert caption = "Invert Z" default = false endparam param start caption = "Seed" default = (0.6 , 1.1) endparam complex param p1 caption = "Parameter 1" default = (1.0, 0) endparam complex param p2 caption = "Parameter 2" default = (1.0 , 0) endparam complex param p3 caption = "Parameter 3" default = (0, 0) endparam complex param p4 caption = "Parameter 4" default = (0 , 0) endparam complex param e1 caption = "Exponent 1" default = (1.0, 0) endparam complex param e2 caption = "Exponent 2" default = (1.0, 0) endparam heading caption = "Functions" endheading func fn1 caption = "Overall Function" default = ident () endfunc func fn2 caption = "Function 1" default = ident () endfunc func fn3 caption = "Function 2" default = ident () endfunc func fn4 caption = "Function 3" default = ident () endfunc func fn5 caption = "Function 4" default = ident () endfunc switch: type = "barnsley1menh" bailout = bailout test = test p1 = @p1 p2 = @p2 p3 = @p3 p4 = @p4 e1 = @e1 e2 = @e2 fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 bailfunc = @bailfunc invert = @invert } *********************************************************** PowerBrew { ; Toby Marshall, May 2003 ; version 1.0 ; Yet another of the seemingly endless "brews". This one ; has the Julia switch built in. Thanks to Dave Makin for ; that ingenious bit of engineering and to Frederik ; Slijkerman for his great bailout tests. init: complex frog = @frog*(0.0,1.0) complex c = #pixel complex z = @startSeed IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: IF (@invert == true) z = 1/z ELSE z = z ENDIF qq = fn1(c^@exp5 + @maid) vv = (real(fn3(z^@exp1)+ @eye)) ww = fn4(imag (@fn5(z^@exp2) + frog)) xx = @fn6(c^@exp4 +@hen) yy = @fn7(z^@exp3 + @bat) IF (@group == 0); inner IF (@op3 == 0); divide IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww / xx / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww / xx / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww / xx / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww / xx / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww / xx / yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww * xx / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww * xx / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww * xx / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww * xx / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww * xx / yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww - xx / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww - xx / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww - xx / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww - xx / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww - xx / yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww + xx / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww + xx / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww + xx / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww + xx / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww + xx / yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww ^ xx / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww ^ xx / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww ^ xx / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww ^ xx / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww ^ xx / yy ENDIF ENDIF ELSEIF (@op3 == 1); multiply IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww / xx * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww / xx * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww / xx * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww / xx * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww / xx * yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww * xx * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww * xx * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww * xx * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww * xx * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww * xx * yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww - xx * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww - xx * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww - xx * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww - xx * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww - xx * yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww + xx * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww + xx * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww + xx * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww + xx * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww + xx * yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww ^ xx * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww ^ xx * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww ^ xx * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww ^ xx * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww ^ xx * yy ENDIF ENDIF ELSEIF (@op3 == 2); subtract IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww / xx - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww / xx - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww / xx - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww / xx - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww / xx - yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww * xx - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww * xx - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww * xx - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww * xx - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww * xx - yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww - xx - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww - xx - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww - xx - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww - xx - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww - xx - yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww + xx - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww + xx - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww + xx - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww + xx - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww + xx - yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww ^ xx - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww ^ xx - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww ^ xx - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww ^ xx - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww ^ xx - yy ENDIF ENDIF ELSEIF (@op3 == 3); add IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww / xx + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww / xx + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww / xx + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww / xx + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww / xx + yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww * xx + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww * xx + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww * xx + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww * xx + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww * xx + yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww - xx + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww - xx + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww - xx + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww - xx + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww - xx + yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww + xx + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww + xx + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww + xx + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww + xx + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww + xx + yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww ^ xx + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww ^ xx + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww ^ xx + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww ^ xx + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww ^ xx + yy ENDIF ENDIF ELSEIF (@op3 == 04); exponent IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww / xx ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww / xx ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww / xx ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww / xx ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww / xx ^ yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww * xx ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww * xx ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww * xx ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww * xx ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww * xx ^ yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww - xx ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww - xx ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww - xx ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww - xx ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww - xx ^ yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww + xx ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww + xx ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww + xx ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww + xx ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww + xx ^ yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / ww ^ xx ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * ww ^ xx ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - ww ^ xx ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + ww ^ xx ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ ww ^ xx ^ yy ENDIF ENDIF ENDIF ELSEIF (@group == 1); middle 1 IF (@op3 == 0); divide IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) / xx / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) / xx / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) / xx / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) / xx / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) / xx / yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) * xx / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) * xx / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) * xx / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) * xx / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) * xx / yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) - xx / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) - xx / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) - xx / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) - xx / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) - xx / yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) + xx / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) + xx / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) + xx / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) + xx / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) + xx / yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) ^ xx / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) ^ xx / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) ^ xx / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) ^ xx / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) ^ xx / yy ENDIF ENDIF ELSEIF (@op3 == 1); multiply IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) / xx * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) / xx * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) / xx * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) / xx * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) / xx * yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) * xx * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) * xx * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) * xx * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) * xx * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) * xx * yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) - xx * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) - xx * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) - xx * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) - xx * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) - xx * yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) + xx * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) + xx * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) + xx * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) + xx * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) + xx * yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) ^ xx * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) ^ xx * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) ^ xx * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) ^ xx * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) ^ xx * yy ENDIF ENDIF ELSEIF (@op3 == 2); subtract IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) / xx - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) / xx - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) / xx - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) / xx - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) / xx - yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) * xx - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) * xx - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) * xx - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) * xx - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) * xx - yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) - xx - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) - xx - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) - xx - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) - xx - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) - xx - yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) + xx - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) + xx - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) + xx - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) + xx - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) + xx - yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) ^ xx - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) ^ xx - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) ^ xx - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) ^ xx - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) ^ xx - yy ENDIF ENDIF ELSEIF (@op3 == 3); add IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) / xx + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) / xx + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) / xx + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) / xx + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) / xx + yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) * xx + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) * xx + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) * xx + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) * xx + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) * xx + yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) - xx + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) - xx + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) - xx + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) - xx + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) - xx + yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) + xx + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) + xx + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) + xx + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) + xx + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) + xx + yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) ^ xx + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) ^ xx + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) ^ xx + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) ^ xx + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) ^ xx + yy ENDIF ENDIF ELSEIF (@op3 == 4); exponent IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) / xx ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) / xx ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) / xx ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) / xx ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) / xx ^ yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) * xx ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) * xx ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) * xx ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) * xx ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) * xx ^ yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) - xx ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) - xx ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) - xx ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) - xx ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) - xx ^ yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) + xx ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) + xx ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) + xx ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) + xx ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) + xx ^ yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv) / ww) ^ xx ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv) * ww) ^ xx ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv) - ww) ^ xx ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv) + ww) ^ xx ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv) ^ ww) ^ xx ^ yy ENDIF ENDIF ENDIF ELSEIF (@group == 2); middle 2 IF (@op3 == 0); divide IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww / xx) / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww / xx) / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww / xx) / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww / xx) / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww / xx) / yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww * xx) / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww * xx) / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww * xx) / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww * xx) / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww * xx) / yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww - xx) / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww - xx) / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww - xx) / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww - xx) / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww - xx) / yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww + xx) / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww + xx) / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww + xx) / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww + xx) / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww + xx) / yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww ^ xx) / yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww ^ xx) / yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww ^ xx) / yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww ^ xx) / yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww ^ xx) / yy ENDIF ENDIF ELSEIF (@op3 == 1); multiply IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww / xx) * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww / xx) * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww / xx) * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww / xx) * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww / xx) * yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww * xx) * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww * xx) * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww * xx) * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww * xx) * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww * xx) * yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww - xx) * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww - xx) * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww - xx) * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww - xx) * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww - xx) * yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww + xx) * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww + xx) * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww + xx) * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww + xx) * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww + xx) * yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww ^ xx) * yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww ^ xx) * yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww ^ xx) * yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww ^ xx) * yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww ^ xx) * yy ENDIF ENDIF ELSEIF (@op3 == 2); subtract IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww / xx) - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww / xx) - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww / xx) - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww / xx) - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww / xx) - yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww * xx) - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww * xx) - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww * xx) - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww * xx) - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww * xx) - yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww - xx) - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww - xx) - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww - xx) - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww - xx) - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww - xx) - yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww + xx) - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww + xx) - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww + xx) - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww + xx) - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww + xx) - yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww ^ xx) - yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww ^ xx) - yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww ^ xx) - yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww ^ xx) - yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww ^ xx) - yy ENDIF ENDIF ELSEIF (@op3 == 3); add IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww / xx) + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww / xx) + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww / xx) + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww / xx) + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww / xx) + yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww * xx) + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww * xx) + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww * xx) + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww * xx) + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww * xx) + yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww - xx) + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww - xx) + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww - xx) + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww - xx) + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww - xx) + yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww + xx) + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww + xx) + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww + xx) + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww + xx) + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww + xx) + yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww ^ xx) + yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww ^ xx) + yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww ^ xx) + yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww ^ xx) + yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww ^ xx) + yy ENDIF ENDIF ELSEIF (@op3 == 04); exponent IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww / xx) ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww / xx) ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww / xx) ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww / xx) ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww / xx) ^ yy ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww * xx) ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww * xx) ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww * xx) ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww * xx) ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww * xx) ^ yy ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww - xx) ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww - xx) ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww - xx) ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww - xx) ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww - xx) ^ yy ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww + xx) ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww + xx) ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww + xx) ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww + xx) ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww + xx) ^ yy ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww ^ xx) ^ yy ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww ^ xx) ^ yy ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww ^ xx) ^ yy ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww ^ xx) ^ yy ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww ^ xx) ^ yy ENDIF ENDIF ENDIF ELSEIF (@group == 3); middle 3 IF (@op3 == 0); divide IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww / xx / yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww / xx / yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww / xx / yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww / xx / yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww / xx / yy) ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww * xx / yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww * xx / yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww * xx / yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww * xx / yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww * xx / yy) ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww - xx / yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww - xx / yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww - xx / yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww - xx / yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww - xx / yy) ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww + xx / yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww + xx / yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww + xx / yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww + xx / yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww + xx / yy) ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww ^ xx / yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww ^ xx / yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww ^ xx / yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww ^ xx / yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww ^ xx / yy) ENDIF ENDIF ELSEIF (@op3 == 1); multiply IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww / xx * yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww / xx * yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww / xx * yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww / xx * yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww / xx * yy) ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww * xx * yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww * xx * yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww * xx * yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww * xx * yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww * xx * yy) ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww - xx * yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww - xx * yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww - xx * yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww - xx * yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww - xx * yy) ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww + xx * yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww + xx * yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww + xx * yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww + xx * yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww + xx * yy) ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww ^ xx * yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww ^ xx * yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww ^ xx * yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww ^ xx * yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww ^ xx * yy) ENDIF ENDIF ELSEIF (@op3 == 2); subtract IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww / xx - yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww / xx - yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww / xx - yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww / xx - yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww / xx - yy) ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww * xx - yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww * xx - yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww * xx - yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww * xx - yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww * xx - yy) ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww - xx - yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww - xx - yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww - xx - yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww - xx - yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww - xx - yy) ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww + xx - yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww + xx - yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww + xx - yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww + xx - yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww + xx - yy) ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww ^ xx - yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww ^ xx - yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww ^ xx - yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww ^ xx - yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww ^ xx - yy) ENDIF ENDIF ELSEIF (@op3 == 3); add IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww / xx + yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww / xx + yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww / xx + yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww / xx + yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww / xx + yy) ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww * xx + yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww * xx + yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww * xx + yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww * xx + yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww * xx + yy) ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww - xx + yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww - xx + yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww - xx + yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww - xx + yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww - xx + yy) ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww + xx + yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww + xx + yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww + xx + yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww + xx + yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww + xx + yy) ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww ^ xx + yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww ^ xx + yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww ^ xx + yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww ^ xx + yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww ^ xx + yy) ENDIF ENDIF ELSEIF (@op3 == 04); exponent IF (@op2 == 0); divide IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww / xx ^ yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww / xx ^ yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww / xx ^ yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww / xx ^ yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww / xx ^ yy) ENDIF ELSEIF (@op2 == 1); multiply IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww * xx ^ yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww * xx ^ yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww * xx ^ yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww * xx ^ yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww * xx ^ yy) ENDIF ELSEIF (@op2 == 2); subtract IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww - xx ^ yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww - xx ^ yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww - xx ^ yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww - xx ^ yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww - xx ^ yy) ENDIF ELSEIF (@op2 == 3); add IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww + xx ^ yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww + xx ^ yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww + xx ^ yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww + xx ^ yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww + xx ^ yy) ENDIF ELSEIF (@op2 == 4); exponent IF (@op1 == 0); divide z = qq^(fn2(vv)) / (ww ^ xx ^ yy) ELSEIF (@op1 == 1); multiply z = qq^(fn2(vv)) * (ww ^ xx ^ yy) ELSEIF (@op1 == 2); subtract z = qq^(fn2(vv)) - (ww ^ xx ^ yy) ELSEIF (@op1 == 3); add z = qq^(fn2(vv)) + (ww ^ xx ^ yy) ELSEIF (@op1 == 4); exponent z = qq^(fn2(vv)) ^ (ww ^ xx ^ yy) ENDIF ENDIF ENDIF ENDIF bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) switch: type = "PowerBrew" startSeed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 eye = @eye frog = @frog hen = @hen maid = @maid bat = @bat op1 = @op1 op2 = @op2 op3 = @op3 start = @start group = @group exp1 = @exp1 exp2 = @exp2 exp3 = @exp3 exp4 = @exp4 exp5 = @exp5 test = @test bailfunc = @bailfunc invert = @invert mode = switchMode switchMode = mode center = @swcenter scale = @swscale default: title = "Power Brew" maxiter = 1000 method = multipass periodicity = 0 magn = 0.5 param version caption = "Formula Version" default = 1.0 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Switch Parameters" endheading param mode caption = "Current Mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param swscale caption = "Switch Scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param swcenter caption = "Switch Center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "Scale Reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "Center Reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam heading caption = "Bailout Parameters" endheading param bailout caption = "Bailout" default = 20.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param test caption = "Bailout Test" default = 0 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc heading caption = "Formula Parameters" endheading complex param startSeed caption = "Start/Seed" default = (0.5,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param op1 caption = "Operator 1" enum = "/""*""-""+""^" default = 1 endparam param op2 caption = "Operator 2" enum = "/""*""-""+""^" default = 3 endparam param op3 caption = "Operator 3" enum = "/""*""-""+""^" default = 1 endparam param group caption = "Grouping" default = 0 enum = "1""2""3""4" endparam param eye caption = "Eye of Newt" default = -1.0 endparam param frog caption = "Frog's Breath" default = 0.0 endparam param hen caption = "Henbane" default = (-.5,0) endparam param bat caption = "Bat Wings" default = (0,0) endparam param maid caption = "Maiden's Tears" default = (0,0) endparam param exp1 caption = "Exponent 1" default = (1,0) endparam param exp2 caption = "Exponent 2" default = (1,0) endparam param exp3 caption = "Exponent 3" default = (1,0) endparam param exp4 caption = "Exponent 4" default = (1,0) endparam param exp5 caption = "Exponent 5" default = (1,0) endparam param invert caption = "Invert Z" default = false endparam heading caption = "Formula Functions" endheading func fn1 Caption = "Function 1" default = ident () endfunc func fn2 Caption = "Function 2" default = flip () endfunc func fn3 Caption = "Function 3" default = ident () endfunc func fn4 Caption = "Function 4" default = ident () endfunc func fn5 Caption = "Function 5" default = ident () endfunc func fn6 Caption = "Function 6" default = ident () endfunc func fn7 Caption = "Function 7" default = ident () endfunc } ********************************************************** turbinado { ; Toby Marshall ; June 2003, ver 1.0 ; A simple but (hopefully) interesting ; loop. Use the built-in Julia switch. ; ; Thanks to Frederik Slijkerman for ; the bailout tests and Dave Makin for ; the internal Julia switch. init: complex z = @startSeed complex c = #pixel IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: IF (@invert == true) z = 1/z ELSE z = z ENDIF z = fn3(fn1(z-@p1)/fn2(c)) bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) default: title = "Turbinado" method = multipass maxiter = 250 periodicity = 0 magn = .65 angle = 90 param version caption = "Formula Version" default = 1.0 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Switch Parameters" endheading param mode caption = "Current Mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param swscale caption = "Switch Scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param swcenter caption = "Switch Center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "Scale Reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "Center Reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam heading caption = "Bailout Parameters" endheading float param bailout caption = "Bailout" default = 5.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param test caption = "Bailout Test" default = 0 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc heading caption = "Formula Parameters" endheading complex param startSeed caption = "Start/Seed" default = (0.5,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param p1 caption = "Z Parameter" default = (0, 0) endparam param invert caption = "Invert Z" default = false endparam heading caption = "Formula Functions" endheading func fn3 caption = "Global Function" default = ident () endfunc func fn1 caption = "Z Function" default = sin () endfunc func fn2 caption = "C Function" default = tan () endfunc switch: type = "turbinado" startSeed = #pixel bailout = @bailout p1 = @p1 bailfunc = @bailfunc test = @test invert = @invert mode = switchMode switchMode = mode center = @swcenter scale = @swscale fn1 = fn1 fn2 = fn2 fn3 = fn3 } ********************************************************* turbinado2 { ; Toby Marshall ; June 2003, ver 1.0 ; A simple but (hopefully) interesting ; loop. Use the built-in Julia switch. ; Adds a variable and operator to ; "Turbinado". ; ; Thanks to Frederik Slijkerman for ; the bailout tests and Dave Makin for ; the internal Julia switch. init: complex z = @startSeed complex c = #pixel IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: IF (@invert == true) z = 1/z ELSE z = z ENDIF IF (@op == "+") z = fn3((fn1(z+c)-p1)/fn2(c)) ELSEIF (@op == "-") z = fn3((fn1(z-c)-p1)/fn2(c)) ELSEIF (@op == "*") z = fn3((fn1(z*c)-p1)/fn2(c)) ELSEIF (@op == "/") z = fn3((fn1(z/c)-p1)/fn2(c)) ELSEIF (@op == "^") z = fn3((fn1(z^c)-p1)/fn2(c)) ENDIF bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) default: title = "Turbinado 2" method = multipass maxiter = 250 periodicity = 0 param version caption = "Formula Version" default = 1.0 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Switch Parameters" endheading param mode caption = "Current Mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param swscale caption = "Switch Scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param swcenter caption = "Switch Center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "Scale Reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "Center Reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam heading caption = "Bailout Parameters" endheading float param bailout caption = "Bailout" default = 5.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param test caption = "Bailout Test" default = 0 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc heading caption = "Formula Parameters" endheading complex param startSeed caption = "Start/Seed" default = (0.5,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param op caption = "Operator" enum = "+""-""*""/""^" default = 2 endparam param p1 caption = "Z Parameter" default = (0, 0) endparam param invert caption = "Invert Z" default = false endparam heading caption = "Formula Functions" endheading func fn3 caption = "Global Function" default = ident () endfunc func fn1 caption = "Z Function" default = sin () endfunc func fn2 caption = "C Function" default = tan () endfunc switch: type = "turbinado2" startSeed = #pixel bailout = @bailout p1 = @p1 op = @op bailfunc = @bailfunc test = @test invert = @invert mode = switchMode switchMode = mode center = @swcenter scale = @swscale fn1 = fn1 fn2 = fn2 fn3 = fn3 } ********************************************************** turbinado3 { ; Toby Marshall ; June 2003, ver 1.0 ; A simple but (hopefully) interesting ; loop. Use the built-in Julia switch. ; This one loses the "Operator" parameter ; but gains another Z variable. Try ; playing around with the 2nd Z function ; for some new possibilities. ; ; Thanks to Frederik Slijkerman for ; the bailout tests and Dave Makin for ; the internal Julia switch. init: complex z = @startSeed complex c = #pixel IF @mode == "Julia" z = #pixel c = @startSeed IF @scale != 1.0 z = z/@scale ENDIF IF @center != (0,0) z = z + @center ENDIF ENDIF loop: IF (@invert == true) z = 1/z ELSE z = z ENDIF z = fn3((fn1(z+(c+fn4(z-@p2)))-p1)/fn2(c)) bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) default: title = "Turbinado 3" method = multipass maxiter = 250 periodicity = 0 param version caption = "Formula Version" default = 1.0 hint = "You should never see this parameter; it's used internally to track \ which version of the formula was used to create your image, so that \ if a bug is found which breaks backwards-compatibility, the formula \ can adapt transparently." visible = false endparam heading caption = "Switch Parameters" endheading param mode caption = "Current Mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." endparam param swscale caption = "Switch Scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param swcenter caption = "Switch Center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "Scale Reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "Center Reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam heading caption = "Bailout Parameters" endheading float param bailout caption = "Bailout" default = 5.0 hint = "It is worth your while to check higher \ (and lower) bailouts as this will definitely \ affect the character of the image elements by \ determining how completely they are drawn" endparam param test caption = "Bailout Test" default = 0 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc heading caption = "Formula Parameters" endheading complex param startSeed caption = "Start/Seed" default = (0.5,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param p1 caption = "1st Z Param" default = (0, 0) endparam param p2 caption = "2nd Z Param" default = (0, 0) endparam param invert caption = "Invert Z" default = false endparam heading caption = "Formula Functions" endheading func fn3 caption = "Global Function" default = ident () endfunc func fn1 caption = "1st Z Function" default = sin () endfunc func fn4 caption = "2nd Z Function" default = ident () endfunc func fn2 caption = "C Function" default = tan () endfunc switch: type = "turbinado3" startSeed = #pixel bailout = @bailout p1 = @p1 p2 = @p2 bailfunc = @bailfunc test = @test invert = @invert mode = switchMode switchMode = mode center = @swcenter scale = @swscale fn1 = fn1 fn2 = fn2 fn3 = fn3 fn4 = @fn4 } ******************************************************** mt-gnarl(gnostic)+tm { ; Mark Townsend, 15 Aug 1999 ; ; This is nothing more than an elaboration of ; Mark Townsend's "gnarl" formula. I've ; split the existing variables and functions ; into pairs which work independently on the ; two terms of the loop equation. In addition ; some parameters have been further extended by ; changing them into complex params with both a ; real and an imaginary component. ; ; To get equivalent results to Mark's "gnarl" ; the real component of the parameter pairs ; and the "a" and "b" paired functions should ; be changed together. ; ; In addition I have added some new params, ; operators and another function. ; ; My great thanks to Mark for allowing me to ; incorporate his work here. ; ; Tweaks by Toby Marshall, July 2003 ; Version 1.1 (Added exponential functions) ; Version 1.2 (Added a few more params, Aug. 2003) ; Version 1.3 (Added shading parameters, Aug. 2003) init: z = 0 p = #pixel / @scale float x = real(p^@exx) float y = imag(p^@exy) float xx = 0 int iter = 0 a = 0 b = 0 c = 0 d = 0 g = 0 f = 0 loop: iter = iter + 1 xx = x IF @style == "1" a = y b = xx c = y d = xx ELSEIF @style == "2" a = y b = xx c = y d = y ELSEIF @style == "3" a = y b = y c = y d = y ELSEIF @style == "4" a = y b = xx c = xx d = xx ELSEIF @style == "5" a = y b = y c = y d = xx ELSEIF @style == "6" a = y b = xx c = xx d = y ELSEIF @style == "7" a = y b = y c = xx d = y ELSEIF @style == "8" a = y b = y c = xx d = xx ELSEIF @style == "9" a = xx b = xx c = y d = xx ELSEIF @style == "10" a = xx b = xx c = y d = y ELSEIF @style == "11" a = xx b = y c = y d = y ELSEIF @style == "12" a = xx b = xx c = xx d = xx ELSEIF @style == "13" a = xx b = y c = y d = xx ELSEIF @style == "14" a = xx b = xx c = xx d = y ELSEIF @style == "15" a = xx b = y c = xx d = y ELSEIF @style == "16" a = xx b = y c = xx d = xx ENDIF IF @style2 == "1" g = y f = xx ELSEIF @style2 == "2" g = y f = y ELSEIF @style2 == "3" g = xx f = y ELSEIF @style2 == "4" g = xx f = xx ENDIF IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ENDIF ENDIF ENDIF IF @op == "x+y" z =@fn5(x^@ex*@mx+@px) + @fn4(y^@ey*@my+@py) ELSEIF @op == "x-y" z =@fn5(x^@ex*@mx+@px) - @fn4(y^@ey*@my+@py) ELSEIF @op == "y-x" z =@fn4(y^@ey*@my+@py) - @fn5(x^@ex*@mx+@px) ELSEIF @op == "x*y" z =@fn5(x^@ex*@mx+@px) * @fn4(y^@ey*@my+@py) ELSEIF @op == "x/y" z =@fn5(x^@ex*@mx+@px) / @fn4(y^@ey*@my+@py) ELSEIF @op == "y/x" z =@fn4(y^@ey*@my+@py) / @fn5(x^@ex*@mx+@px) ELSEIF @op == "x^y" z =@fn5(x^@ex*@mx+@px) ^ @fn4(y^@ey*@my+@py) ELSEIF @op == "y^x" z =@fn4(y^@ey*@my+@py) ^ @fn5(x^@ex*@mx+@px) ENDIF bailout: iter < #maxiter default: title = "Gnostic Gnarl" maxiter = 20 magn = 0.15 param version caption = "Formula Version" default = 1.3 visible = false endparam heading caption = "Parameters" endheading param flavor caption = "Flavor" enum = "1""2""3""4" default = 1 endparam param style caption = "Style" enum = "1""2""3""4""5""6""7""8"\ "9""10""11""12""13""14""15""16" default = 0 endparam param style2 caption = "Twist" enum = "1""2""3""4" default = 0 endparam param op caption = "Main Operator" enum = "x+y""x-y""y-x""x*y""x/y""y/x""x^y""y^x" default = 0 endparam param realop caption = "Real Operator" enum = "+""-""*""/""^" default = 2 endparam param imagop caption = "Imaginary Operator" enum = "+""-""*""/""^" default = 2 endparam param a1 caption = "Alpha 1" default = 2.7 endparam param a2 caption = "Alpha 2" default = 2.7 endparam param b1 caption = "Beta 1" default = 2.7 endparam param b2 caption = "Beta 2" default = 2.7 endparam param h1 caption = "Step size 1" default = 0.1 endparam param h2 caption = "Step size 2" default = 0.1 endparam param scale caption = "Scale" default = 1.0 endparam heading caption = "Shading Parameters" visible = @shad endheading complex param ex caption = "X Shading 1" default = (1.0,0.0) visible = @shad endparam complex param mx caption = "X Shading 2" default = (1.0,0.0) visible = @shad endparam complex param px caption = "X Shading 3" default = (0.0,0.0) visible = @shad endparam complex param ey caption = "Y Shading 1" default = (1.0,0.0) visible = @shad endparam complex param my caption = "Y Shading 2" default = (1.0,0.0) visible = @shad endparam complex param py caption = "Y Shading 3" default = (0.0,0.0) visible = @shad endparam param shad caption = "Shading Parameters" default = false endparam heading caption = "Exponential Parameters" visible = @exp endheading complex param exx caption = "Exponent X" default = (1.0 , 0.0) visible = @exp endparam complex param exy caption = "Exponent Y" default = (1.0 , 0.0) visible = @exp endparam complex param ex1 caption = "Exponent 1" default = (1.0 , 0.0) visible = @exp endparam complex param ex2 caption = "Exponent 2" default = (1.0 , 0.0) visible = @exp endparam complex param ex3 caption = "Exponent 3" default = (1.0 , 0.0) visible = @exp endparam complex param ex4 caption = "Exponent 4" default = (1.0 , 0.0) visible = @exp endparam complex param ex5 caption = "Exponent 5" default = (1.0 , 0.0) visible = @exp endparam complex param ex6 caption = "Exponent 6" default = (1.0 , 0.0) visible = @exp endparam param exp caption = "Exponential Parameters" default = false endparam heading caption = "Functions" endheading func fn1a caption = "Function 1a" default = sin() endfunc func fn1b caption = "Function 1b" default = sin() endfunc func fn2a caption = "Function 2a" default = sin() endfunc func fn2b caption = "Function 2b" default = sin() endfunc func fn3a caption = "Function 3a" default = sin() endfunc func fn3b caption = "Function 3b" default = sin() endfunc func fn4 caption = "Global Function 1" default = flip() endfunc func fn5 caption = "Global Function 2" default = ident() endfunc } ********************************************************** mt-gnarl(gneo1)+tm { ; Mark Townsend, 15 Aug 1999 ; ; This is an elaboration of Mark Townsend's "gnarl" ; formula with an additional variable. I've ; split the existing variables and functions ; into pairs which work independently on the ; two terms of the loop equation. In addition ; some parameters have been further extended by ; changing them into complex params with both ; a real and an imaginary component. ; ; In addition I've added some new params, ; operators and functions. ; ; My great thanks to Mark for allowing me to ; incorporate his work here. ; ; Tweaks by Toby Marshall, July 2003 ; Version 1.1 (Added exponential parameters) ; Version 1.2 (Added a few more params, Aug. 2003) ; Version 1.3 (Added shading parameters, Aug. 2003) ; init: z = 0 p = #pixel / @scale float x = real(p^@exx) float y = imag(p^@exy) float xx = 0 int iter = 0 a = 0 b = 0 c = 0 d = 0 g = 0 f = 0 h = 0 j = 0 loop: iter = iter + 1 xx = x IF @style == "1" a = y b = xx c = y d = xx ELSEIF @style == "2" a = y b = xx c = y d = y ELSEIF @style == "3" a = y b = y c = y d = y ELSEIF @style == "4" a = y b = xx c = xx d = xx ELSEIF @style == "5" a = y b = y c = y d = xx ELSEIF @style == "6" a = y b = xx c = xx d = y ELSEIF @style == "7" a = y b = y c = xx d = y ELSEIF @style == "8" a = y b = y c = xx d = xx ELSEIF @style == "9" a = xx b = xx c = y d = xx ELSEIF @style == "10" a = xx b = xx c = y d = y ELSEIF @style == "11" a = xx b = y c = y d = y ELSEIF @style == "12" a = xx b = xx c = xx d = xx ELSEIF @style == "13" a = xx b = y c = y d = xx ELSEIF @style == "14" a = xx b = xx c = xx d = y ELSEIF @style == "15" a = xx b = y c = xx d = y ELSEIF @style == "16" a = xx b = y c = xx d = xx ENDIF IF @style2 == "1" g = y f = xx ELSEIF @style2 == "2" g = y f = y ELSEIF @style2 == "3" g = xx f = y ELSEIF @style2 == "4" g = xx f = xx ENDIF IF @style3 == "1" h = y j = xx ELSEIF @style3 == "2" h = y j = y ELSEIF @style3 == "3" h = xx j = y ELSEIF @style3 == "4" h = xx j = xx ENDIF IF @nuop == "+" IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ENDIF ELSEIF @nuop == "-" IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ENDIF ELSEIF @nuop == "*" IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ENDIF ELSEIF @nuop == "/" IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ENDIF ELSEIF @nuop == "^" IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ENDIF ENDIF IF @op == "x+y" z =@fn5(x^@ex*@mx+@px) + @fn4(y^@ey*@my+@py) ELSEIF @op == "x-y" z =@fn5(x^@ex*@mx+@px) - @fn4(y^@ey*@my+@py) ELSEIF @op == "y-x" z =@fn4(y^@ey*@my+@py) - @fn5(x^@ex*@mx+@px) ELSEIF @op == "x*y" z =@fn5(x^@ex*@mx+@px) * @fn4(y^@ey*@my+@py) ELSEIF @op == "x/y" z =@fn5(x^@ex*@mx+@px) / @fn4(y^@ey*@my+@py) ELSEIF @op == "y/x" z =@fn4(y^@ey*@my+@py) / @fn5(x^@ex*@mx+@px) ELSEIF @op == "x^y" z =@fn5(x^@ex*@mx+@px) ^ @fn4(y^@ey*@my+@py) ELSEIF @op == "y^x" z =@fn4(y^@ey*@my+@py) ^ @fn5(x^@ex*@mx+@px) ENDIF bailout: iter < #maxiter default: title = "Gneo Gnarl 1" maxiter = 20 magn = 0.15 param version caption = "Formula Version" default = 1.3 visible = false endparam heading caption = "Parameters" endheading param flavor caption = "Flavor" enum = "1""2""3""4" default = 1 endparam param style caption = "Style" enum = "1""2""3""4""5""6""7""8"\ "9""10""11""12""13""14""15""16" default = 0 endparam param style2 caption = "Twist" enum = "1""2""3""4" default = 0 endparam param style3 caption = "Spin" enum = "1""2""3""4" default = 0 endparam param op caption = "Main Operator" enum = "x+y""x-y""y-x""x*y""x/y"\ "y/x""x^y""y^x" default = 0 endparam param realop caption = "Real Operator" enum = "+""-""*""/""^" default = 2 endparam param imagop caption = "Imaginary Operator" enum = "+""-""*""/""^" default = 2 endparam param nuop caption = "Last Operator" enum = "+""-""*""/""^" default = 0 endparam float param a1 caption = "Alpha 1" default = 2.7 endparam float param a2 caption = "Alpha 2" default = 2.7 endparam float param b1 caption = "Beta 1" default = 2.7 endparam float param b2 caption = "Beta 2" default = 2.7 endparam float param d1 caption = "Delta 1" default = 0 endparam float param d2 caption = "Delta 2" default = 0 endparam float param h1 caption = "Step size 1" default = 0.1 endparam float param h2 caption = "Step size 2" default = 0.1 endparam float param scale caption = "Scale" default = 1.0 endparam heading caption = "Shading Parameters" visible = @shad endheading complex param ex caption = "X Shading 1" default = (1.0,0.0) visible = @shad endparam complex param mx caption = "X Shading 2" default = (1.0,0.0) visible = @shad endparam complex param px caption = "X Shading 3" default = (0.0,0.0) visible = @shad endparam complex param ey caption = "Y Shading 1" default = (1.0,0.0) visible = @shad endparam complex param my caption = "Y Shading 2" default = (1.0,0.0) visible = @shad endparam complex param py caption = "Y Shading 3" default = (0.0,0.0) visible = @shad endparam param shad caption = "Shading Parameters" default = false endparam heading caption = "Exponential Parameters" visible = @exp endheading complex param exx caption = "Exponent X" default = (1.0 , 0.0) visible = @exp endparam complex param exy caption = "Exponent Y" default = (1.0 , 0.0) visible = @exp endparam complex param ex1 caption = "Exponent 1" default = (1.0 , 0.0) visible = @exp endparam complex param ex2 caption = "Exponent 2" default = (1.0 , 0.0) visible = @exp endparam complex param ex3 caption = "Exponent 3" default = (1.0 , 0.0) visible = @exp endparam complex param ex4 caption = "Exponent 4" default = (1.0 , 0.0) visible = @exp endparam complex param ex5 caption = "Exponent 5" default = (1.0 , 0.0) visible = @exp endparam complex param ex6 caption = "Exponent 6" default = (1.0 , 0.0) visible = @exp endparam complex param ex7 caption = "Exponent 7" default = (1.0 , 0.0) visible = @exp endparam complex param ex8 caption = "Exponent 8" default = (1.0 , 0.0) visible = @exp endparam param exp caption = "Exponential Parameters" default = false endparam heading caption = "Functions" endheading func fn1a caption = "Function 1a" default = sin() endfunc func fn1b caption = "Function 1b" default = sin() endfunc func fn2a caption = "Function 2a" default = sin() endfunc func fn2b caption = "Function 2b" default = sin() endfunc func fn3a caption = "Function 3a" default = sin() endfunc func fn3b caption = "Function 3b" default = sin() endfunc func fn6a caption = "Function 4a" default = ident() endfunc func fn6b caption = "Function 4b" default = ident() endfunc func fn4 caption = "Global Function 1" default = flip() endfunc func fn5 caption = "Global Function 2" default = ident() endfunc } ********************************************************** mt-gnarl(gneo2)+tm { ; Mark Townsend, 15 Aug 1999 ; ; This is an elaboration of Mark Townsend's "gnarl" ; formula with an additional variable. It differs ; from "Gneo 1" internally in the way the variables ; are processed in the loop, and adds yet another ; choice of operators. ; ; I've split the existing variables and functions ; of the original Gnarl formula into pairs which ; work independently on the two terms of the loop ; equation. In addition some parameters have been ; further extended by changing them into complex ; params with both a real and an imaginary component. ; ; In addition I've added some new params, ; operators and functions. ; ; My great thanks to Mark for allowing me to ; incorporate his work here. ; ; Tweaks by Toby Marshall, July 2003 ; Version 1.1 (Added exponential parameters) ; Version 1.2 (Added a few more params, Aug. 2003) ; Version 1.3 (Added shading parameters, Aug. 2003) ; init: z = 0 p = #pixel / @scale float x = real(p^@exx) float y = imag(p^@exy) float xx = 0 int iter = 0 a = 0 b = 0 c = 0 d = 0 g = 0 f = 0 h = 0 j = 0 complex v = g^@ex6 + @fn6a(h^@ex7 - @d1) complex w = f^@ex5 + @fn6b(j^@ex8 - @d2) loop: iter = iter + 1 xx = x IF @style == "1" a = y b = xx c = y d = xx ELSEIF @style == "2" a = y b = xx c = y d = y ELSEIF @style == "3" a = y b = y c = y d = y ELSEIF @style == "4" a = y b = xx c = xx d = xx ELSEIF @style == "5" a = y b = y c = y d = xx ELSEIF @style == "6" a = y b = xx c = xx d = y ELSEIF @style == "7" a = y b = y c = xx d = y ELSEIF @style == "8" a = y b = y c = xx d = xx ELSEIF @style == "9" a = xx b = xx c = y d = xx ELSEIF @style == "10" a = xx b = xx c = y d = y ELSEIF @style == "11" a = xx b = y c = y d = y ELSEIF @style == "12" a = xx b = xx c = xx d = xx ELSEIF @style == "13" a = xx b = y c = y d = xx ELSEIF @style == "14" a = xx b = xx c = xx d = y ELSEIF @style == "15" a = xx b = y c = xx d = y ELSEIF @style == "16" a = xx b = y c = xx d = xx ENDIF IF @style2 == "1" g = y f = xx ELSEIF @style2 == "2" g = y f = y ELSEIF @style2 == "3" g = xx f = y ELSEIF @style2 == "4" g = xx f = xx ENDIF IF @style3 == "1" h = y j = xx ELSEIF @style3 == "2" h = y j = y ELSEIF @style3 == "3" h = xx j = y ELSEIF @style3 == "4" h = xx j = xx ENDIF IF @nuop1 == "+" v = g^@ex6 + @fn6a(h^@ex7 - @d1) ELSEIF @nuop1 == "-" v = g^@ex6 - @fn6a(h^@ex7 - @d1) ELSEIF @nuop1 == "*" v = g^@ex6 * @fn6a(h^@ex7 - @d1) ELSEIF @nuop1 == "/" v = g^@ex6 / @fn6a(h^@ex7 - @d1) ELSEIF @nuop1 == "^" v = g^@ex6 ^ @fn6a(h^@ex7 - @d1) ENDIF IF @nuop2 == "+" w = f^@ex5 + @fn6b(j^@ex8 - @d2) ELSEIF @nuop2 == "-" w = f^@ex5 - @fn6b(j^@ex8 - @d2) ELSEIF @nuop2 == "*" w = f^@ex5 * @fn6b(j^@ex8 - @d2) ELSEIF @nuop2 == "/" w = f^@ex5 / @fn6b(j^@ex8 - @d2) ELSEIF @nuop2 == "^" w = f^@ex5 ^ @fn6b(j^@ex8 - @d2) ENDIF IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ENDIF ENDIF ENDIF IF @op == "x+y" z =@fn5(x^@ex*@mx+@px) + @fn4(y^@ey*@my+@py) ELSEIF @op == "x-y" z =@fn5(x^@ex*@mx+@px) - @fn4(y^@ey*@my+@py) ELSEIF @op == "y-x" z =@fn4(y^@ey*@my+@py) - @fn5(x^@ex*@mx+@px) ELSEIF @op == "x*y" z =@fn5(x^@ex*@mx+@px) * @fn4(y^@ey*@my+@py) ELSEIF @op == "x/y" z =@fn5(x^@ex*@mx+@px) / @fn4(y^@ey*@my+@py) ELSEIF @op == "y/x" z =@fn4(y^@ey*@my+@py) / @fn5(x^@ex*@mx+@px) ELSEIF @op == "x^y" z =@fn5(x^@ex*@mx+@px) ^ @fn4(y^@ey*@my+@py) ELSEIF @op == "y^x" z =@fn4(y^@ey*@my+@py) ^ @fn5(x^@ex*@mx+@px) ENDIF bailout: iter < #maxiter default: title = "Gneo Gnarl 2" maxiter = 20 magn = 0.15 param version caption = "Formula Version" default = 1.3 visible = false endparam heading caption = "Parameters" endheading param flavor caption = "Flavor" enum = "1""2""3""4" default = 1 endparam param style caption = "Style" enum = "1""2""3""4""5""6""7""8"\ "9""10""11""12""13""14""15""16" default = 0 endparam param style2 caption = "Twist" enum = "1""2""3""4" default = 0 endparam param style3 caption = "Spin" enum = "1""2""3""4" default = 0 endparam param op caption = "Main Operator" enum = "x+y""x-y""y-x""x*y""x/y"\ "y/x""x^y""y^x" default = 0 endparam param realop caption = "R Operator" enum = "+""-""*""/""^" default = 2 endparam param imagop caption = "I Operator" enum = "+""-""*""/""^" default = 2 endparam param nuop1 caption = "R Operator 2" enum = "+""-""*""/""^" default = 0 endparam param nuop2 caption = "I Operator 2" enum = "+""-""*""/""^" default = 0 endparam param a1 caption = "Alpha 1" default = 2.7 endparam param a2 caption = "Alpha 2" default = 2.7 endparam param b1 caption = "Beta 1" default = 2.7 endparam param b2 caption = "Beta 2" default = 2.7 endparam param d1 caption = "Delta 1" default = 0 endparam param d2 caption = "Delta 2" default = 0 endparam param h1 caption = "Step size 1" default = 0.1 endparam param h2 caption = "Step size 2" default = 0.1 endparam param scale caption = "Scale" default = 1.0 endparam heading caption = "Shading Parameters" visible = @shad endheading complex param ex caption = "X Shading 1" default = (1.0,0.0) visible = @shad endparam complex param mx caption = "X Shading 2" default = (1.0,0.0) visible = @shad endparam complex param px caption = "X Shading 3" default = (0.0,0.0) visible = @shad endparam complex param ey caption = "Y Shading 1" default = (1.0,0.0) visible = @shad endparam complex param my caption = "Y Shading 2" default = (1.0,0.0) visible = @shad endparam complex param py caption = "Y Shading 3" default = (0.0,0.0) visible = @shad endparam param shad caption = "Shading Parameters" default = false endparam heading caption = "Exponential Parameters" visible = @exp endheading complex param exx caption = "Exponent X" default = (1.0 , 0.0) visible = @exp endparam complex param exy caption = "Exponent Y" default = (1.0 , 0.0) visible = @exp endparam complex param ex1 caption = "Exponent 1" default = (1.0 , 0.0) visible = @exp endparam complex param ex2 caption = "Exponent 2" default = (1.0 , 0.0) visible = @exp endparam complex param ex3 caption = "Exponent 3" default = (1.0 , 0.0) visible = @exp endparam complex param ex4 caption = "Exponent 4" default = (1.0 , 0.0) visible = @exp endparam complex param ex5 caption = "Exponent 5" default = (1.0 , 0.0) visible = @exp endparam complex param ex6 caption = "Exponent 6" default = (1.0 , 0.0) visible = @exp endparam complex param ex7 caption = "Exponent 7" default = (1.0 , 0.0) visible = @exp endparam complex param ex8 caption = "Exponent 8" default = (1.0 , 0.0) visible = @exp endparam param exp caption = "Exponential Parameters" default = false endparam heading caption = "Functions" endheading func fn1a caption = "Function 1a" default = sin() endfunc func fn1b caption = "Function 1b" default = sin() endfunc func fn2a caption = "Function 2a" default = sin() endfunc func fn2b caption = "Function 2b" default = sin() endfunc func fn3a caption = "Function 3a" default = sin() endfunc func fn3b caption = "Function 3b" default = sin() endfunc func fn6a caption = "Function 4a" default = ident() endfunc func fn6b caption = "Function 4b" default = ident() endfunc func fn4 caption = "Global Function 1" default = flip() endfunc func fn5 caption = "Global Function 2" default = ident() endfunc } *************************************************************************** mt-vine+tm { ; Mark Townsend, 26 Jun 1999 ; ; More variations of Pickover's Popcorn. I took ; the formulas from the sorce code of Rudy Rucker's ; program Vine. ; ; This "Vine Ripened" takes Mark Townsend's original ; Vine formula and adds some functionality. Many ; thanks to Mark for allowing me to use his code. ; ; Toby Marshall, July 2003 ; Version 1.1 (Added a few params, Aug. 2003) ; Version 1.2 (Added shading parameters, Aug. 2003) ; init: z = 0 float x = real(#pixel^@exx) float y = imag(#pixel^@exy) float xx = 0 float newx = 0 float newy = 0 int iter = 0 int i = 0 loop: iter = iter + 1 xx = x IF @twist == "1" if @flavor == 0 x = x - @h1 * sin(y + sin(@a1 * y )) y = y + @h2 * sin(xx + sin(@a2 * xx)) elseif @flavor == 1 x = x - @h1 * sin(y^@b1 + sin(@a1 * y)) y = y + @h2 * sin(xx^@b2 + sin(@a2 * xx)) elseif @flavor == 2 x = x - @h1 * sin(y + sin(@a1 * (y + sin(@a1 * y)))) y = y + @h2 * sin(xx + sin(@a2 * (xx + sin(@a2 * xx)))) else newx = y newy = x i = 0 while i < @flavor i = i + 1 newx = y + sin(@a1 * newx) newy = x + sin(@a2 * newy) endwhile x = x - @h1 * sin(newx) y = y + @h2 * sin(newy) endif ELSEIF @twist == "2" if @flavor == 0 x = x + @h1 * sin(y + sin(@a1 * y )) y = y - @h2 * sin(xx + sin(@a2 * xx)) elseif @flavor == 1 x = x + @h1 * sin(y^@b1 + sin(@a1 * y)) y = y - @h2 * sin(xx^@b2 + sin(@a2 * xx)) elseif @flavor == 2 x = x + @h1 * sin(y + sin(@a1 * (y + sin(@a1 * y)))) y = y - @h2 * sin(xx + sin(@a2 * (xx + sin(@a2 * xx)))) else newx = y newy = x i = 0 while i < @flavor i = i + 1 newx = y + sin(@a1 * newx) newy = x + sin(@a2 * newy) endwhile x = x - @h1 * sin(newx) y = y + @h2 * sin(newy) endif ELSEIF @twist == "3" if @flavor == 0 x = x + @h1 * sin(y + sin(@a1 * y )) y = y + @h2 * sin(xx + sin(@a2 * xx)) elseif @flavor == 1 x = x + @h1 * sin(y^@b1 + sin(@a1 * y)) y = y + @h2 * sin(xx^@b2 + sin(@a2 * xx)) elseif @flavor == 2 x = x + @h1 * sin(y + sin(@a1 * (y + sin(@a1 * y)))) y = y + @h2 * sin(xx + sin(@a2 * (xx + sin(@a2 * xx)))) else newx = y newy = x i = 0 while i < @flavor i = i + 1 newx = y + sin(@a1 * newx) newy = x + sin(@a2 * newy) endwhile x = x - @h1 * sin(newx) y = y + @h2 * sin(newy) endif ELSEIF @twist == "4" if @flavor == 0 x = x - @h1 * sin(y + sin(@a1 * y )) y = y - @h2 * sin(xx + sin(@a2 * xx)) elseif @flavor == 1 x = x - @h1 * sin(y^@b1 + sin(@a1 * y)) y = y - @h2 * sin(xx^@b2 + sin(@a2 * xx)) elseif @flavor == 2 x = x - @h1 * sin(y + sin(@a1 * (y + sin(@a1 * y)))) y = y - @h2 * sin(xx + sin(@a2 * (xx + sin(@a2 * xx)))) else newx = y newy = x i = 0 while i < @flavor i = i + 1 newx = y + sin(@a1 * newx) newy = x + sin(@a2 * newy) endwhile x = x - @h1 * sin(newx) y = y + @h2 * sin(newy) endif ENDIF IF @op == "x+y" z =@fn1(x^@ex*@mx+@px) + @fn2(y^@ey*@my+@py) ELSEIF @op == "x-y" z =@fn1(x^@ex*@mx+@px) - @fn2(y^@ey*@my+@py) ELSEIF @op == "y-x" z =@fn2(y^@ey*@my+@py) - @fn1(x^@ex*@mx+@px) ELSEIF @op == "x*y" z =@fn1(x^@ex*@mx+@px) * @fn2(y^@ey*@my+@py) ELSEIF @op == "x/y" z =@fn1(x^@ex*@mx+@px) / @fn2(y^@ey*@my+@py) ELSEIF @op == "y/x" z =@fn2(y^@ey*@my+@py) / @fn1(x^@ex*@mx+@px) ELSEIF @op == "x^y" z =@fn1(x^@ex*@mx+@px) ^ @fn2(y^@ey*@my+@py) ELSEIF @op == "y^x" z =@fn2(y^@ey*@my+@py) ^ @fn1(x^@ex*@mx+@px) ENDIF bailout: iter < #maxiter default: title = "Vine Ripened" maxiter = 20 magn = 0.15 param version caption = "Formula Version" default = 1.2 visible = false endparam heading caption = "Parameters" endheading param flavor caption = "Flavor" default = 0 min = 0 endparam param op caption = "Main Operator" enum = "x+y""x-y""y-x""x*y""x/y"\ "y/x""x^y""y^x" default = 0 endparam param twist caption = "Twist" enum = "1""2""3""4" default = 0 endparam param a1 caption = "Alpha 1" default = 2.7 endparam param a2 caption = "Alpha 2" default = 2.7 endparam param b1 caption = "Beta 1 (flavor 1)" default = 2.0 hint = "This parameter has an effect only with a^@ex1 \ flavor of 1" endparam param b2 caption = "Beta 2 (flavor 1)" default = 2.0 hint = "This parameter has an effect only with a^@ex1 \ flavor of 1" endparam param h1 caption = "Step size 1" default = 0.1 endparam param h2 caption = "Step size 2" default = 0.1 endparam complex param exx caption = "Exponent X" default = (1.0 , 0.0) endparam complex param exy caption = "Exponent Y" default = (1.0 , 0.0) endparam heading caption = "Shading Parameters" visible = @shad endheading complex param ex caption = "X Shading 1" default = (1.0,0.0) visible = @shad endparam complex param mx caption = "X Shading 2" default = (1.0,0.0) visible = @shad endparam complex param px caption = "X Shading 3" default = (0.0,0.0) visible = @shad endparam complex param ey caption = "Y Shading 1" default = (1.0,0.0) visible = @shad endparam complex param my caption = "Y Shading 2" default = (1.0,0.0) visible = @shad endparam complex param py caption = "Y Shading 3" default = (0.0,0.0) visible = @shad endparam param shad caption = "Shading Parameters" default = false endparam heading caption = "Functions" endheading func fn1 caption = "Function 1" default = ident () endfunc func fn2 caption = "Function 2" default = flip () endfunc } *************************************************************************************** mt-gnarl(gnome)+tm { ; Mark Townsend, 15 Aug 1999 ; ; This is nothing more than an elaboration of ; Mark Townsend's "gnarl" formula. I've ; split the existing variables and functions ; into pairs which work independently on the ; two terms of the loop equation. In addition ; some parameters have been further extended by ; changing them into complex params with both a ; real and an imaginary component. ; ; In addition I have added some new params, ; operators and functions, as well as an extra ; pair of variables. ; ; My great thanks to Mark for allowing me to ; incorporate his work here. ; ; Tweaks by Toby Marshall, July 2003 ; Version 1.1 (Added exponential parameters) ; Version 1.2 (Added a few more params, Aug. 2003) ; Version 1.3 (Added shading parameters, Aug. 2003) ; init: z = 0 p = #pixel / @scale float x = real(p^@exx) float y = imag(p^@exy) float xx = 0 int iter = 0 a = 0 b = 0 c = 0 d = 0 g = 0 f = 0 r = x+y s = y+x loop: iter = iter + 1 xx = x IF @style == "1" a = y b = xx c = y d = xx ELSEIF @style == "2" a = y b = xx c = y d = y ELSEIF @style == "3" a = y b = y c = y d = y ELSEIF @style == "4" a = y b = xx c = xx d = xx ELSEIF @style == "5" a = y b = y c = y d = xx ELSEIF @style == "6" a = y b = xx c = xx d = y ELSEIF @style == "7" a = y b = y c = xx d = y ELSEIF @style == "8" a = y b = y c = xx d = xx ELSEIF @style == "9" a = xx b = xx c = y d = xx ELSEIF @style == "10" a = xx b = xx c = y d = y ELSEIF @style == "11" a = xx b = y c = y d = y ELSEIF @style == "12" a = xx b = xx c = xx d = xx ELSEIF @style == "13" a = xx b = y c = y d = xx ELSEIF @style == "14" a = xx b = xx c = xx d = y ELSEIF @style == "15" a = xx b = y c = xx d = y ELSEIF @style == "16" a = xx b = y c = xx d = xx ENDIF IF @style2 == "1" g = y f = xx ELSEIF @style2 == "2" g = y f = y ELSEIF @style2 == "3" g = xx f = y ELSEIF @style2 == "4" g = xx f = xx ENDIF IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5))))) ENDIF ENDIF ENDIF IF @opx == "+" r = (x^@eex1*@mx1+@px1)+@fn6(y^@eey1*@my1+@py1) ELSEIF @opx == "-" r = (x^@eex1*@mx1+@px1)-@fn6(y^@eey1*@my1+@py1) ELSEIF @opx == "*" r = (x^@eex1*@mx1+@px1)*@fn6(y^@eey1*@my1+@py1) ELSEIF @opx == "/" r = (x^@eex1*@mx1+@px1)/@fn6(y^@eey1*@my1+@py1) ELSEIF @opx == "^" r = (x^@eex1*@mx1+@px1)^@fn6(y^@eey1*@my1+@py1) ENDIF IF @opy == "+" s = (y^@eey2*@my2+@py2)+@fn7(x^@eex2*@mx2+@px2) ELSEIF @opy == "-" s = (y^@eey2*@my2+@py2)-@fn7(x^@eex2*@mx2+@px2) ELSEIF @opy == "*" s = (y^@eey2*@my2+@py2)*@fn7(x^@eex2*@mx2+@px2) ELSEIF @opy == "/" s = (y^@eey2*@my2+@py2)/@fn7(x^@eex2*@mx2+@px2) ELSEIF @opy == "^" s = (y^@eey2*@my2+@py2)^@fn7(x^@eex2*@mx2+@px2) ENDIF IF @op == "x+y" z =@fn5(r) + @fn4(s) ELSEIF @op == "x-y" z =@fn5(r) - @fn4(s) ELSEIF @op == "y-x" z =@fn4(s) - @fn5(r) ELSEIF @op == "x*y" z =@fn5(r) * @fn4(s) ELSEIF @op == "x/y" z =@fn5(r) / @fn4(s) ELSEIF @op == "y/x" z =@fn4(s) / @fn5(r) ELSEIF @op == "x^y" z =@fn5(r) ^ @fn4(s) ELSEIF @op == "y^x" z =@fn4(s) ^ @fn5(r) ENDIF bailout: iter < #maxiter default: title = "Gnome's Gnarl" maxiter = 20 magn = 0.15 param version caption = "Formula Version" default = 1.3 visible = false endparam heading caption = "Parameters" endheading param flavor caption = "Flavor" enum = "1""2""3""4" default = 1 endparam param style caption = "Style" enum = "1""2""3""4""5""6""7""8"\ "9""10""11""12""13""14""15""16" default = 0 endparam param style2 caption = "Twist" enum = "1""2""3""4" default = 0 endparam param op caption = "Main Operator" enum = "x+y""x-y""y-x""x*y""x/y""y/x""x^y""y^x" default = 0 endparam param realop caption = "Real Operator" enum = "+""-""*""/""^" default = 2 endparam param imagop caption = "Imaginary Operator" enum = "+""-""*""/""^" default = 2 endparam param opx caption = "X Operator" enum = "+""-""*""/""^" default = 2 endparam param opy caption = "Y Operator" enum = "+""-""*""/""^" default = 3 endparam param a1 caption = "Alpha 1" default = 2.7 endparam param a2 caption = "Alpha 2" default = 2.7 endparam param b1 caption = "Beta 1" default = 2.7 endparam param b2 caption = "Beta 2" default = 2.7 endparam param h1 caption = "Step size 1" default = 0.1 endparam param h2 caption = "Step size 2" default = 0.1 endparam param scale caption = "Scale" default = 1.0 endparam heading caption = "Shading Parameters" visible = @shad endheading complex param eex1 caption = "X1 Shading A" default = (1.0,0.0) visible = @shad endparam complex param mx1 caption = "X1 Shading B" default = (1.0,0.0) visible = @shad endparam complex param px1 caption = "X1 Shading C" default = (0.0,0.0) visible = @shad endparam complex param eex2 caption = "X2 Shading A" default = (1.0,0.0) visible = @shad endparam complex param mx2 caption = "X2 Shading B" default = (1.0,0.0) visible = @shad endparam complex param px2 caption = "X2 Shading C" default = (0.0,0.0) visible = @shad endparam complex param eey1 caption = "Y1 Shading A" default = (1.0,0.0) visible = @shad endparam complex param my1 caption = "Y1 Shading B" default = (1.0,0.0) visible = @shad endparam complex param py1 caption = "Y1 Shading C" default = (0.0,0.0) visible = @shad endparam complex param eey2 caption = "Y2 Shading A" default = (1.0,0.0) visible = @shad endparam complex param my2 caption = "Y2 Shading B" default = (1.0,0.0) visible = @shad endparam complex param py2 caption = "Y2 Shading C" default = (0.0,0.0) visible = @shad endparam param shad caption = "Shading Parameters" default = false endparam heading caption = "Exponential Parameters" visible = @exp endheading complex param exx caption = "Exponent X" default = (1.0 , 0.0) visible = @exp endparam complex param exy caption = "Exponent Y" default = (1.0 , 0.0) visible = @exp endparam complex param ex1 caption = "Exponent 1" default = (1.0 , 0.0) visible = @exp endparam complex param ex2 caption = "Exponent 2" default = (1.0 , 0.0) visible = @exp endparam complex param ex3 caption = "Exponent 3" default = (1.0 , 0.0) visible = @exp endparam complex param ex4 caption = "Exponent 4" default = (1.0 , 0.0) visible = @exp endparam complex param ex5 caption = "Exponent 5" default = (1.0 , 0.0) visible = @exp endparam complex param ex6 caption = "Exponent 6" default = (1.0 , 0.0) visible = @exp endparam param exp caption = "Exponential Parameters" default = false endparam heading caption = "Functions" endheading func fn1a caption = "Function 1a" default = sin() endfunc func fn1b caption = "Function 1b" default = sin() endfunc func fn2a caption = "Function 2a" default = sin() endfunc func fn2b caption = "Function 2b" default = sin() endfunc func fn3a caption = "Function 3a" default = sin() endfunc func fn3b caption = "Function 3b" default = sin() endfunc func fn6 caption = "Shading function 1" default = ident() endfunc func fn7 caption = "Shading Function 2" default = ident() endfunc func fn4 caption = "Global Function 1" default = flip() endfunc func fn5 caption = "Global Function 2" default = ident() endfunc } ********************************************************** mt-gnarl(gnast)+tm { ; Mark Townsend, 15 Aug 1999 ; ; This is nothing more than an elaboration of ; Mark Townsend's "gnarl" formula with two ; additional pairs of variables, with some added ; params, operators and functions to match. ; ; I've split the existing variables and functions ; of the original Gnarl formula into pairs which ; work independently on the two terms of the loop ; equation. In addition some parameters have been ; further extended by changing them into complex ; params with both a real and an imaginary component. ; ; My great thanks to Mark for allowing me to ; incorporate his work here. ; ; Tweaks by Toby Marshall, July 2003 ; Version 1.1 (Added exponential parameters) ; Version 1.2 (Added a few more params, Aug. 2003) ; Version 1.3 (Added shading parameters, Aug. 2003) ; init: z = 0 p = #pixel / @scale float x = real(p^@exx) float y = imag(p^@exy) float xx = 0 int iter = 0 a = 0 b = 0 c = 0 d = 0 g = 0 f = 0 h = 0 j = 0 r = x + y s = y + x loop: iter = iter + 1 xx = x IF @style == "1" a = y b = xx c = y d = xx ELSEIF @style == "2" a = y b = xx c = y d = y ELSEIF @style == "3" a = y b = y c = y d = y ELSEIF @style == "4" a = y b = xx c = xx d = xx ELSEIF @style == "5" a = y b = y c = y d = xx ELSEIF @style == "6" a = y b = xx c = xx d = y ELSEIF @style == "7" a = y b = y c = xx d = y ELSEIF @style == "8" a = y b = y c = xx d = xx ELSEIF @style == "9" a = xx b = xx c = y d = xx ELSEIF @style == "10" a = xx b = xx c = y d = y ELSEIF @style == "11" a = xx b = y c = y d = y ELSEIF @style == "12" a = xx b = xx c = xx d = xx ELSEIF @style == "13" a = xx b = y c = y d = xx ELSEIF @style == "14" a = xx b = xx c = xx d = y ELSEIF @style == "15" a = xx b = y c = xx d = y ELSEIF @style == "16" a = xx b = y c = xx d = xx ENDIF IF @style2 == "1" g = y f = xx ELSEIF @style2 == "2" g = y f = y ELSEIF @style2 == "3" g = xx f = y ELSEIF @style2 == "4" g = xx f = xx ENDIF IF @style3 == "1" h = y j = xx ELSEIF @style3 == "2" h = y j = y ELSEIF @style3 == "3" h = xx j = y ELSEIF @style3 == "4" h = xx j = xx ENDIF IF @nuop == "+" IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 + @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 + @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ENDIF ELSEIF @nuop == "-" IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 - @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 - @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ENDIF ELSEIF @nuop == "*" IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 * @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 * @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ENDIF ELSEIF @nuop == "/" IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 / @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 / @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ENDIF ELSEIF @nuop == "^" IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 + g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 - g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 * g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 / g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (c^@ex3 + @fn3a(@b1 ^ g^@ex6 ^ @fn6a(h^@ex7 - @d1)))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ f^@ex5 ^ @fn6b(j^@ex8 - @d2)))))) ENDIF ENDIF ENDIF ENDIF IF @opx == "+" r = (x^@eex1*@mx1+@px1)+@fn7(y^@eey1*@my1+@py1) ELSEIF @opx == "-" r = (x^@eex1*@mx1+@px1)-@fn7(y^@eey1*@my1+@py1) ELSEIF @opx == "*" r = (x^@eex1*@mx1+@px1)*@fn7(y^@eey1*@my1+@py1) ELSEIF @opx == "/" r = (x^@eex1*@mx1+@px1)/@fn7(y^@eey1*@my1+@py1) ELSEIF @opx == "^" r = (x^@eex1*@mx1+@px1)^@fn7(y^@eey1*@my1+@py1) ENDIF IF @opy == "+" s = (y^@eey2*@my2+@py2)+@fn8(x^@eex2*@mx2+@px2) ELSEIF @opy == "-" s = (y^@eey2*@my2+@py2)-@fn8(x^@eex2*@mx2+@px2) ELSEIF @opy == "*" s = (y^@eey2*@my2+@py2)*@fn8(x^@eex2*@mx2+@px2) ELSEIF @opy == "/" s = (y^@eey2*@my2+@py2)/@fn8(x^@eex2*@mx2+@px2) ELSEIF @opy == "^" s = (y^@eey2*@my2+@py2)^@fn8(x^@eex2*@mx2+@px2) ENDIF IF @op == "x+y" z =@fn5(r) + @fn4(s) ELSEIF @op == "x-y" z =@fn5(r) - @fn4(s) ELSEIF @op == "y-x" z =@fn4(s) - @fn5(r) ELSEIF @op == "x*y" z =@fn5(r) * @fn4(s) ELSEIF @op == "x/y" z =@fn5(r) / @fn4(s) ELSEIF @op == "y/x" z =@fn4(s) / @fn5(r) ELSEIF @op == "x^y" z =@fn5(r) ^ @fn4(s) ELSEIF @op == "y^x" z =@fn4(s) ^ @fn5(r) ENDIF bailout: iter < #maxiter default: title = "Gnarl's Gnast" maxiter = 20 magn = 0.15 param version caption = "Formula Version" default = 1.3 visible = false endparam heading caption = "Parameters" endheading param flavor caption = "Flavor" enum = "1""2""3""4" default = 1 endparam param style caption = "Style" enum = "1""2""3""4""5""6""7""8"\ "9""10""11""12""13""14""15""16" default = 0 endparam param style2 caption = "Twist" enum = "1""2""3""4" default = 0 endparam param style3 caption = "Spin" enum = "1""2""3""4" default = 0 endparam param op caption = "Main Operator" enum = "x+y""x-y""y-x""x*y""x/y"\ "y/x""x^y""y^x" default = 0 endparam param realop caption = "Real Operator" enum = "+""-""*""/""^" default = 2 endparam param imagop caption = "Imaginary Operator" enum = "+""-""*""/""^" default = 2 endparam param opx caption = "X Operator" enum = "+""-""*""/""^" default = 2 endparam param opy caption = "Y Operator" enum = "+""-""*""/""^" default = 3 endparam param nuop caption = "Last Operator" enum = "+""-""*""/""^" default = 0 endparam float param a1 caption = "Alpha 1" default = 2.7 endparam float param a2 caption = "Alpha 2" default = 2.7 endparam float param b1 caption = "Beta 1" default = 2.7 endparam float param b2 caption = "Beta 2" default = 2.7 endparam float param d1 caption = "Delta 1" default = 0 endparam float param d2 caption = "Delta 2" default = 0 endparam float param h1 caption = "Step size 1" default = 0.1 endparam float param h2 caption = "Step size 2" default = 0.1 endparam float param scale caption = "Scale" default = 1.0 endparam heading caption = "Shading Parameters" visible = @shad endheading complex param eex1 caption = "X1 Shading A" default = (1.0,0.0) visible = @shad endparam complex param mx1 caption = "X1 Shading B" default = (1.0,0.0) visible = @shad endparam complex param px1 caption = "X1 Shading C" default = (0.0,0.0) visible = @shad endparam complex param eex2 caption = "X2 Shading A" default = (1.0,0.0) visible = @shad endparam complex param mx2 caption = "X2 Shading B" default = (1.0,0.0) visible = @shad endparam complex param px2 caption = "X2 Shading C" default = (0.0,0.0) visible = @shad endparam complex param eey1 caption = "Y1 Shading A" default = (1.0,0.0) visible = @shad endparam complex param my1 caption = "Y1 Shading B" default = (1.0,0.0) visible = @shad endparam complex param py1 caption = "Y1 Shading C" default = (0.0,0.0) visible = @shad endparam complex param eey2 caption = "Y2 Shading A" default = (1.0,0.0) visible = @shad endparam complex param my2 caption = "Y2 Shading B" default = (1.0,0.0) visible = @shad endparam complex param py2 caption = "Y2 Shading C" default = (0.0,0.0) visible = @shad endparam param shad caption = "Shading Parameters" default = false endparam heading caption = "Exponential Parameters" visible = @exp endheading complex param exx caption = "Exponent X" default = (1.0 , 0.0) visible = @exp endparam complex param exy caption = "Exponent Y" default = (1.0 , 0.0) visible = @exp endparam complex param ex1 caption = "Exponent 1" default = (1.0 , 0.0) visible = @exp endparam complex param ex2 caption = "Exponent 2" default = (1.0 , 0.0) visible = @exp endparam complex param ex3 caption = "Exponent 3" default = (1.0 , 0.0) visible = @exp endparam complex param ex4 caption = "Exponent 4" default = (1.0 , 0.0) visible = @exp endparam complex param ex5 caption = "Exponent 5" default = (1.0 , 0.0) visible = @exp endparam complex param ex6 caption = "Exponent 6" default = (1.0 , 0.0) visible = @exp endparam complex param ex7 caption = "Exponent 7" default = (1.0 , 0.0) visible = @exp endparam complex param ex8 caption = "Exponent 8" default = (1.0 , 0.0) visible = @exp endparam param exp caption = "Exponential Parameters" default = false endparam heading caption = "Functions" endheading func fn1a caption = "Function 1a" default = sin() endfunc func fn1b caption = "Function 1b" default = sin() endfunc func fn2a caption = "Function 2a" default = sin() endfunc func fn2b caption = "Function 2b" default = sin() endfunc func fn3a caption = "Function 3a" default = sin() endfunc func fn3b caption = "Function 3b" default = sin() endfunc func fn6a caption = "Function 4a" default = ident() endfunc func fn6b caption = "Function 4b" default = ident() endfunc func fn7 caption = "Shading Function 1" default = ident() endfunc func fn8 caption = "Shading Function 2" default = ident() endfunc func fn4 caption = "Global Function 1" default = flip() endfunc func fn5 caption = "Global Function 2" default = ident() endfunc } ********************************************************** Melodia{ ; ; In this formula three independent sections define Z, ; and those are combined in selectable ways with various ; selectable functions and parameters at the bottom of ; the loop. ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because Z is recalculated a number of times in ; the loop this can be somewhat slow. ; ; Switch hint: If you find that the "action" is ; happening outside the switch window try resetting ; the "Switch Scale" parameter to 0.5 ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.1 (fixed param visibility) init: z = @startseed complex z1 = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z4 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex c1 = (0,0) complex c2 = (0,0) complex c3 = (0,0) complex x = (0,0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Define the Z and C variable modes for the Z1 section if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif if @xc1 == "c" c1 = c elseif @xc1 == "|c|" c1 = |c| elseif @xc1 == "atan2(c)" c1 = atan2(c) elseif @xc1 == "real(c)" c1 = real(c) elseif @xc1 == "imag(c)" c1 = imag(c) endif ; Define the Z1 variable if @op1 == "+"; Z1 operator z1 = @fn1a(a1-@z1)*@zm1+@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "-" z1 = @fn1a(a1-@z1)*@zm1-@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert-" z1 = @fn1b((c1-@c1)*@cm1)^@ec1-@fn1a(a1-@z1)*@zm1 elseif @op1 == "*" z1 = @fn1a(a1-@z1)*@zm1*@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "/" z1 = @fn1a(a1-@z1)*@zm1/@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert/" z1 = @fn1b((c1-@c1)*@cm1)^@ec1/@fn1a(a1-@z1)*@zm1 elseif @op1 == "^" z1 = @fn1a(a1-@z1)*@zm1^@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert^" z1 = @fn1b((c1-@c1)*@cm1)^@ec1^@fn1a(a1-@z1)*@zm1 endif ; Define the Z and C variable modes for the Z2 section if @xz2 == "z" a2 = z elseif @xz2 == "|z|" a2 = |z| elseif @xz2 == "atan2(z)" a2 = atan2(z) elseif @xz2 == "real(z)" a2 = real(z) elseif @xz2 == "imag(z)" a2 = imag(z) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable if @op2 == "+"; Z2 operator z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Define the Z and C variable modes for the Z3 section if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif if @xc3 == "c" c3 = c elseif @xc3 == "|c|" c3 = |c| elseif @xc3 == "atan2(c)" c3 = atan2(c) elseif @xc3 == "real(c)" c3 = real(c) elseif @xc3 == "imag(c)" c3 = imag(c) endif ; Define the Z3 variable if @op3 == "+"; Z3 operator z3 = @fn3a(a3-@z3)/@zm3+@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "-" z3 = @fn3a(a3-@z3)/@zm3-@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert-" z3 = @fn3b((c3-@c3)*@cm3)^@ec3-@fn3a(a3-@z3)*@zm3 elseif @op3 == "*" z3 = @fn3a(a3-@z3)/@zm3*@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "/" z3 = @fn3a(a3-@z3)/@zm3/@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert/" z3 = @fn3b((c3-@c3)*@cm3)^@ec3/@fn3a(a3-@z3)*@zm3 elseif @op3 == "^" z3 = @fn3a(a3-@z3)/@zm3^@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert^" z3 = @fn3b((c3-@c3)*@cm3)^@ec3^@fn3a(a3-@z3)*@zm3 endif ; Define how the Z1 and Z2 sections are combined in X if @pz1 == "+"; Z1\Z2 Operator x = z1+z2 elseif @pz1 == "-" x = z1-z2 elseif @pz1 == "invert-" x = z2-z1 elseif @pz1 == "*" x = z1*z2 elseif @pz1 == "/" x = z1/z2 elseif @pz1 == "invert/" x = z2/z1 elseif @pz1 == "^" x = z1^z2 elseif @pz1 == "invert^" x = z2^z1 endif ; Define how the Z3 section is combined with X if @op4 == "+"; Z4 Operator z4 = @fn4(x)+z3 elseif @op4 == "-" z4 = @fn4(x)-z3 elseif @op4 == "invert-" z4 = z3-@fn4(x) elseif @op4 == "invert/" z4 = z3/@fn4(x) elseif @op4 == "^" z4 = @fn4(x)^z3 elseif @op4 == "invert^" z4 = z3^@fn4(x) endif z = z4 bailout: |z| <= @bailout default: title = "Melodia" maxiter = 500 periodicity = 0 param version caption = "Version" default = 110 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Z1 Section" endheading param op1 caption = "Z1 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the single Z and single C \ variables in the Z1 section interact" endparam param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z1 section" endparam param xc1 caption = "Z1 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z1 section" endparam complex param z1 caption = "Z1 Param 1" default = (0,0) visible = @np endparam complex param zm1 caption = "Z1 Param 2" default = (1,0) visible = @np endparam complex param c1 caption = "Z1 Param 3" default = (0,0) visible = @np endparam complex param cm1 caption = "Z1 Param 4" default = (1,0) visible = @np endparam complex param ec1 caption = "Z1 Param 5" default = (1,0) visible = @np endparam func fn1a caption = "Z1 Function Z" default = ident() endfunc func fn1b caption = "Z1 Function C" default = ident() endfunc heading caption = "Z2 Section" endheading param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the single Z and single C \ variables in the Z2 section interact" endparam param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z2 section" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section" endheading param op3 caption = "Z3 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the single Z and single C \ variables in the Z1 section interact" endparam param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z3 section" endparam param xc3 caption = "Z3 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z3 section" endparam complex param z3 caption = "Z3 Param 1" default = (0,0) visible = @np endparam complex param zm3 caption = "Z3 Param 2" default = (1,0) visible = @np endparam complex param c3 caption = "Z3 Param 3" default = (0,0) visible = @np endparam complex param cm3 caption = "Z3 Param 4" default = (1,0) visible = @np endparam complex param ec3 caption = "Z3 Param 5" default = (1,0) visible = @np endparam func fn3a caption = "Z3 Function Z" default = ident() endfunc func fn3b caption = "Z3 Function C" default = ident() endfunc heading caption = "Final" endheading param pz1 caption = "Z1\Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the Z1 and Z2 sections are \ combined in the final section" visible = @np endparam param op4 caption = "Final Operator" enum = "+""-""invert-""invert/""^""invert^" default = 1 hint = "Determines how the combined Z1 and Z2 sections \ are subsequently combined with the Z3 section" endparam func fn4 caption = "Final function" default = ident() hint = "Applies a final function to the Z1/Z2 section \ combination" endfunc switch: type = "Melodia" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc op1 = @op1 xz1 = @xz1 xc1 = @xc1 z1 = @z1 zm1 = @zm1 c1 = @c1 cm1 = @cm1 ec1 = @ec1 fn1a = @fn1a fn1b = @fn1b op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b op3 = @op3 xz3 = @xz3 xc3 = @xc3 z3 = @z3 zm3 = @zm3 c3 = @c3 cm3 = @cm3 ec3 = @ec3 fn3a = @fn3a fn3b = @fn3b pz1 = @pz1 fn4 = @fn4 op4 = @op4 mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } Harmonia { ; This formula redefines the Z variable a number of ; times in the loop, and combines the result in ; different selectable ways with selectable functions ; and params. ; ; "Harmonia" has four different sections where Z ; is computed in the loop. It has two selectable ; Real/Imaginary(Z) sections and two "straight" ; sections. ; ; Schematic: Z1 (selectable mode), Z2, Z3 (selectable mode) ; and Z4. All sections are independent ; ; The two selectable sections have three options for Z: ; Complex Z, Real/Imaginary Z or R/I + Complex Z. Select ; with the "Mode parameter. ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because Z is recalculated a number of times in the ; loop this formula can be somewhat slow. ; ; Switch hint: If you find that the "action" is ; happening outside the switch window try resetting ; the "Switch Scale" parameter to 0.5 ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.2 (fixed param ; visibility) init: z = @startseed complex z1 = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z4 = (0,0) complex zri1 = (0,0) complex zri3 = (0,0) complex zri1a = (0,0) complex zri3a = (0,0) complex ari1 = (0,0) complex ari3 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex c1 = (0,0) complex c2 = (0,0) complex c3 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) complex imz3 = @imz3*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z/@scale endif if @center != (0.0,0.0) z = z + @center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Define the Z mode for "zri1" if @xza1 == "z" ari1 = z elseif @xza1 == "|z|" ari1 = |z| elseif @xza1 == "atan2(z)" ari1 = atan2(z) elseif @xza1 == "real(z)" ari1 = real(z) elseif @xza1 == "imag(z)" ari1 = imag(z) endif ; Split Z into R/I components and combine as "zri1" to be plugged in later if @moderi1 == "+"; R/I combination Z1 if @opri1=="+"; Z1 param operator zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "-" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "invert-" if @opri1=="+" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)+@priz1) elseif @opri1=="-" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)-@priz1) elseif @opri1=="*" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)*@priz1) elseif @opri1=="/" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)/@priz1) elseif @opri1=="^" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)/@priz1) endif elseif @moderi1 == "*" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "/" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "invert/" if @opri1=="+" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)+@priz1) elseif @opri1=="-" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)-@priz1) elseif @opri1=="*" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)*@priz1) elseif @opri1=="/" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)/@priz1) elseif @opri1=="^" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)/@priz1) endif elseif @moderi1 == "^" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "invert^" if @opri1=="+" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)+@priz1) elseif @opri1=="-" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)-@priz1) elseif @opri1=="*" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)*@priz1) elseif @opri1=="/" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)/@priz1) elseif @opri1=="^" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)/@priz1) endif endif ; Process Zri1 variable with a C section if @act == "none" zri1a = zri1 elseif @act == "+" zri1a = zri1 + @fnact(c-@act1)^@act2 elseif @act == "-" zri1a = zri1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" zri1a = @fnact(c-@act1)^@act2 - zri1 elseif @act == "*" zri1a = zri1 * @fnact(c-@act1)^@act2 elseif @act == "/" zri1a = zri1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" zri1a = @fnact(c-@act1)^@act2 / zri1 elseif @act == "^" zri1a = zri1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" zri1a = @fnact(c-@act1)^@act2 ^ zri1 endif ; Define the Z mode for "zri3" if @xza3 == "z" ari3 = z elseif @xza3 == "|z|" ari3 = |z| elseif @xza3 == "atan2(z)" ari3 = atan2(z) elseif @xza3 == "real(z)" ari3 = real(z) elseif @xza3 == "imag(z)" ari3 = imag(z) endif ; Split Z into R/I components and combine as "zri3" to be plugged in later if @moderi3 == "+"; R/I combination Z3 if @opri3=="+"; Z3 param operator zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "-" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "invert-" if @opri3=="+" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)+@priz3) elseif @opri3=="-" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)-@priz3) elseif @opri3=="*" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)*@priz3) elseif @opri3=="/" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) elseif @opri3=="^" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) endif elseif @moderi3 == "*" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "/" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "invert/" if @opri3=="+" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)+@priz3) elseif @opri3=="-" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)-@priz3) elseif @opri3=="*" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)*@priz3) elseif @opri3=="/" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) elseif @opri3=="^" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) endif elseif @moderi3 == "^" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "invert^" if @opri3=="+" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)+@priz3) elseif @opri3=="-" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)-@priz3) elseif @opri3=="*" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)*@priz3) elseif @opri3=="/" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) elseif @opri3=="^" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) endif endif ; Process Zri3 variable with a C section if @act3 == "none" zri3a = zri3 elseif @act3 == "+" zri3a = zri3 + @fnact3(c-@act13)^@act23 elseif @act3 == "-" zri3a = zri3 - @fnact3(c-@act13)^@act23 elseif @act3 == "invert-" zri3a = @fnact3(c-@act13)^@act23 - zri3 elseif @act3 == "*" zri3a = zri3 * @fnact3(c-@act13)^@act23 elseif @act3 == "/" zri3a = zri3 / @fnact3(c-@act13)^@act23 elseif @act3 == "invert/" zri3a = @fnact3(c-@act13)^@act23 / zri3 elseif @act3 == "^" zri3a = zri3 ^ @fnact3(c-@act13)^@act23 elseif @act3 == "invert^" zri3a = @fnact3(c-@act13)^@act23 ^ zri3 endif ; Defines Z (mode and variables) for Z1 and Z3 sections if @rienable == "1:Z,3:Z" if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif elseif @rienable == "1:RI(Z),3:Z" if @xz1 == "z" a1 = zri1a elseif @xz1 == "|z|" a1 = |zri1a| elseif @xz1 == "atan2(z)" a1 = atan2(zri1a) elseif @xz1 == "real(z)" a1 = real(zri1a) elseif @xz1 == "imag(z)" a1 = imag(zri1a) endif if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif elseif @rienable == "1:RI(Z)+Z,3:Z" if @xz1 == "z" a1 = zri1a + @fnzz1(z) elseif @xz1 == "|z|" a1 = |zri1a|+ @fnzz1(z) elseif @xz1 == "atan2(z)" a1 = atan2(zri1a)+ @fnzz1(z) elseif @xz1 == "real(z)" a1 = real(zri1a)+ @fnzz1(z) elseif @xz1 == "imag(z)" a1 = imag(zri1a)+ @fnzz1(z) endif if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif elseif @rienable == "1:Z,3:RI(Z)" if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif if @xz3 == "z" a3 = zri3 elseif @xz3 == "|z|" a3 = |zri3| elseif @xz3 == "atan2(z)" a3 = atan2(zri3) elseif @xz3 == "real(z)" a3 = real(zri3) elseif @xz3 == "imag(z)" a3 = imag(zri3) endif elseif @rienable == "1:Z,3:RI(Z)+Z" if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif if @xz3 == "z" a3 = zri3a + @fnzz3(z) elseif @xz3 == "|z|" a3 = |zri3a|+ @fnzz3(z) elseif @xz3 == "atan2(z)" a3 = atan2(zri3a)+ @fnzz3(z) elseif @xz3 == "real(z)" a3 = real(zri3a)+ @fnzz3(z) elseif @xz3 == "imag(z)" a3 = imag(zri3a)+ @fnzz3(z) endif elseif @rienable == "1:RI(Z),3:RI(Z)" if @xz1 == "z" a1 = zri1a elseif @xz1 == "|z|" a1 = |zri1a| elseif @xz1 == "atan2(z)" a1 = atan2(zri1a) elseif @xz1 == "real(z)" a1 = real(zri1a) elseif @xz1 == "imag(z)" a1 = imag(zri1a) endif if @xz3 == "z" a3 = zri3a elseif @xz3 == "|z|" a3 = |zri3a| elseif @xz3 == "atan2(z)" a3 = atan2(zri3a) elseif @xz3 == "real(z)" a3 = real(zri3a) elseif @xz3 == "imag(z)" a3 = imag(zri3a) endif elseif @rienable == "1:RI(Z)+Z,3:RI(Z)" if @xz1 == "z" a1 = zri1a + @fnzz1(z) elseif @xz1 == "|z|" a1 = |zri1a|+ @fnzz1(z) elseif @xz1 == "atan2(z)" a1 = atan2(zri1a)+ @fnzz1(z) elseif @xz1 == "real(z)" a1 = real(zri1a)+ @fnzz1(z) elseif @xz1 == "imag(z)" a1 = imag(zri1a)+ @fnzz1(z) endif if @xz3 == "z" a3 = zri3a elseif @xz3 == "|z|" a3 = |zri3a| elseif @xz3 == "atan2(z)" a3 = atan2(zri3a) elseif @xz3 == "real(z)" a3 = real(zri3a) elseif @xz3 == "imag(z)" a3 = imag(zri3a) endif elseif @rienable == "1:RI(Z),3:RI(Z)+Z" if @xz1 == "z" a1 = zri1a elseif @xz1 == "|z|" a1 = |zri1a| elseif @xz1 == "atan2(z)" a1 = atan2(zri1a) elseif @xz1 == "real(z)" a1 = real(zri1a) elseif @xz1 == "imag(z)" a1 = imag(zri1a) endif if @xz3 == "z" a3 = zri3a + @fnzz3(z) elseif @xz3 == "|z|" a3 = |zri3a|+ @fnzz3(z) elseif @xz3 == "atan2(z)" a3 = atan2(zri3a)+ @fnzz3(z) elseif @xz3 == "real(z)" a3 = real(zri3a)+ @fnzz3(z) elseif @xz3 == "imag(z)" a3 = imag(zri3a)+ @fnzz3(z) endif elseif @rienable == "1:RI(Z)+Z,3:RI(Z)+Z" if @xz1 == "z" a1 = zri1a + @fnzz1(z) elseif @xz1 == "|z|" a1 = |zri1a|+ @fnzz1(z) elseif @xz1 == "atan2(z)" a1 = atan2(zri1a)+ @fnzz1(z) elseif @xz1 == "real(z)" a1 = real(zri1a)+ @fnzz1(z) elseif @xz1 == "imag(z)" a1 = imag(zri1a)+ @fnzz1(z) endif if @xz3 == "z" a3 = zri3a + @fnzz3(z) elseif @xz3 == "|z|" a3 = |zri3a|+ @fnzz3(z) elseif @xz3 == "atan2(z)" a3 = atan2(zri3a)+ @fnzz3(z) elseif @xz3 == "real(z)" a3 = real(zri3a)+ @fnzz3(z) elseif @xz3 == "imag(z)" a3 = imag(zri3a)+ @fnzz3(z) endif endif ; Define the mode of C in the Z1 section if @xc1 == "c" c1 = c elseif @xc1 == "|c|" c1 = |c| elseif @xc1 == "atan2(c)" c1 = atan2(c) elseif @xc1 == "real(c)" c1 = real(c) elseif @xc1 == "imag(c)" c1 = imag(c) endif ; Define the Z1 variable in the Z1 section if @op1 == "+"; Z1 operator z1 = @fn1a(a1-@z1)*@zm1+@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "-" z1 = @fn1a(a1-@z1)*@zm1-@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert-" z1 = @fn1b((c1-@c1)*@cm1)^@ec1-@fn1a(a1-@z1)*@zm1 elseif @op1 == "*" z1 = @fn1a(a1-@z1)*@zm1*@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "/" z1 = @fn1a(a1-@z1)*@zm1/@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert/" z1 = @fn1b((c1-@c1)*@cm1)^@ec1/@fn1a(a1-@z1)*@zm1 elseif @op1 == "^" z1 = @fn1a(a1-@z1)*@zm1^@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert^" z1 = @fn1b((c1-@c1)*@cm1)^@ec1^@fn1a(a1-@z1)*@zm1 endif ; Define the modes of Z and C in the Z2 section if @xz2 == "z" a2 = z elseif @xz2 == "|z|" a2 = |z| elseif @xz2 == "atan2(z)" a2 = atan2(z) elseif @xz2 == "real(z)" a2 = real(z) elseif @xz2 == "imag(z)" a2 = imag(z) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable in the Z2 section if @op2 == "+"; Z2 operator z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Define the C mode in the Z3 section if @xc3 == "c" c3 = c elseif @xc3 == "|c|" c3 = |c| elseif @xc3 == "atan2(c)" c3 = atan2(c) elseif @xc3 == "real(c)" c3 = real(c) elseif @xc3 == "imag(c)" c3 = imag(c) endif ; Define the Z3 variable in the Z3 section if @op3 == "+"; Z3 operator z3 = @fn3a(a3-@z3)/@zm3+@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "-" z3 = @fn3a(a3-@z3)/@zm3-@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert-" z3 = @fn3b((c3-@c3)*@cm3)^@ec3-@fn3a(a3-@z3)*@zm3 elseif @op3 == "*" z3 = @fn3a(a3-@z3)/@zm3*@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "/" z3 = @fn3a(a3-@z3)/@zm3/@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert/" z3 = @fn3b((c3-@c3)*@cm3)^@ec3/@fn3a(a3-@z3)*@zm3 elseif @op3 == "^" z3 = @fn3a(a3-@z3)/@zm3^@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert^" z3 = @fn3b((c3-@c3)*@cm3)^@ec3^@fn3a(a3-@z3)*@zm3 endif ; Choose how to combine Z1 and Z2 in X if @pz1 == "+"; Z1\Z2 Operator x = z1+z2 elseif @pz1 == "-" x = z1-z2 elseif @pz1 == "invert-" x = z2-z1 elseif @pz1 == "*" x = z1*z2 elseif @pz1 == "/" x = z1/z2 elseif @pz1 == "invert/" x = z2/z1 elseif @pz1 == "^" x = z1^z2 elseif @pz1 == "invert^" x = z2^z1 endif ; Choose how to combine Z3 with X if @op4 == "+"; Z4 Operator z4 = @fn4(x)+z3 elseif @op4 == "-" z4 = @fn4(x)-z3 elseif @op4 == "invert-" z4 = z3-@fn4(x) elseif @op4 == "invert/" z4 = z3/@fn4(x) elseif @op4 == "^" z4 = @fn4(x)^z3 elseif @op4 == "invert^" z4 = z3^@fn4(x) endif z = z4 + ((z-@fz1)/@fz2)^@fz3 bailout: |z|<=@bailout default: title = "Harmonia" maxiter = 500 periodicity = 0 param version caption = "Version" default = 120 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 4 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Mode Parameters" endheading param rienable caption = "Mode" enum = "1:Z,3:Z""1:RI(Z),3:Z""1:RI(Z)+Z,3:Z""1:Z,3:RI(Z)""1:Z,3:RI(Z)+Z"\ "1:RI(Z),3:RI(Z)""1:RI(Z)+Z,3:RI(Z)""1:RI(Z),3:RI(Z)+Z""1:RI(Z)+Z,3:RI(Z)+Z" default = 0 hint = "Determines the modes for the Z1 and Z3 sections, whether \ complex(z), real/imag(z) or a combination of the two." endparam func fnzz1 caption = "R/I(Z1) Function" default = ident() hint = "Applies a function if the mode selected includes 'RI1Z'" visible = (@rienable == 2 || @rienable == 6 || @rienable == 8) endfunc param xza1 caption = "R/I(Z1) Mode" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the mode of Z before it is split into real \ and imaginary components" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) endparam param moderi1 caption = "R/I(Z1) Op" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the real and imaginary Z sections are \ combined" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @np endparam param opri1 caption = "R/I(Z1) Param Op" enum = "+""-""*""/""^" default = 0 hint = "Determines the way a differential parameter is processed \ in the real(z) section" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam float param riz1 caption = "Re(Z1) Param 2" default = 1.0 visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam float param imz1 caption = "Im(Z1) Param 2" default = 1.0 visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam func fna caption = "Re(Z1) Function" default = ident() visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc func fnb caption = "Im(Z1) Function" default = ident() visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc heading caption = "" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) endheading param act caption = "R/I(Z1) Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "When active applies a C variable to the R/I(Z) section \ and determines how it operates" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) hint = "Processes the R/I variable by a C expression" endparam func fnact caption = "R/I(Z1) Accent Fn" default = ident () hint = "Applies a function to the above C variable" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 endfunc complex param act1 caption = "R/I(Z1) Accent P1" default = (0,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam complex param act2 caption = "R/I(Z1) Accent P2" default = (1,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam heading caption = "" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endheading heading caption = "" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endheading func fnzz3 caption = "R/I(Z3) Function" default = ident() hint = "Applies a function if the mode selected includes 'RI3Z'" visible = (@rienable == 4 || @rienable == 7 || @rienable == 8 ) endfunc param xza3 caption = "R/I(Z3) Mode" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the mode of Z before it is split into real \ and imaginary components" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endparam param moderi3 caption = "R/I(Z3) Op" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the real and imaginary Z sections are \ combined" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endparam param opri3 caption = "R/I(Z3) Param Op" enum = "+""-""*""/""^" default = 0 hint = "Determines the way a differential parameter is processed \ in the real(z) section" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endparam complex param priz3 caption = "Re(Z3) Param 1" default = (0,1) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam complex param pimz3 caption = "Im(Z3) Param 1" default = (0,1) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam float param riz3 caption = "Re(Z3) Param 2" default = 1.0 visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam float param imz3 caption = "Im(Z3) Param 2" default = 1.0 visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam complex param rzm3 caption = "Re(Z3) Param 3" default = (1,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam complex param izm3 caption = "Im(Z3) Param 3" default = (1,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam func fna3 caption = "Re(Z3) Function" default = ident() visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc func fnb3 caption = "Im(Z3) Function" default = ident() visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc heading caption = "" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) endheading param act3 caption = "R/I(Z3) Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) hint = "When active applies a C variable to the R/I(Z) section \ and determines how it operates" endparam func fnact3 caption = "R/I(Z3) Accent Fn" default = ident () hint = "Applies a function to the above C variable" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act3 != 0 endfunc complex param act13 caption = "R/I(Z3) Accent P1" default = (0,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam complex param act23 caption = "R/I(Z3) Accent P2" default = (1,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam heading caption = "Z1 Section" endheading param op1 caption = "Z1 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the single Z and single C \ variables in the Z1 section interact" endparam param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z1 section" endparam param xc1 caption = "Z1 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z1 section" endparam complex param z1 caption = "Z1 Param 1" default = (0,0) visible = @np endparam complex param zm1 caption = "Z1 Param 2" default = (1,0) visible = @np endparam complex param c1 caption = "Z1 Param 3" default = (0,0) visible = @np endparam complex param cm1 caption = "Z1 Param 4" default = (1,0) visible = @np endparam complex param ec1 caption = "Z1 Param 5" default = (1,0) visible = @np endparam func fn1a caption = "Z1 Function Z" default = ident() endfunc func fn1b caption = "Z1 Function C" default = ident() endfunc heading caption = "Z2 Section" endheading param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the single Z and single C \ variables in the Z2 section interact" endparam param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z2 section" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section" endheading param op3 caption = "Z3 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the single Z and single C \ variables in the Z1 section interact" endparam param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z3 section" endparam param xc3 caption = "Z3 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z3 section" endparam complex param z3 caption = "Z3 Param 1" default = (0,0) visible = @np endparam complex param zm3 caption = "Z3 Param 2" default = (1,0) visible = @np endparam complex param c3 caption = "Z3 Param 3" default = (0,0) visible = @np endparam complex param cm3 caption = "Z3 Param 4" default = (1,0) visible = @np endparam complex param ec3 caption = "Z3 Param 5" default = (1,0) visible = @np endparam func fn3a caption = "Z3 Function Z" default = ident() endfunc func fn3b caption = "Z3 Function C" default = ident() endfunc heading caption = "Final" endheading param pz1 caption = "Z1\Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the Z1 and Z2 sections are \ combined in the final section" visible = @np endparam param op4 caption = "Final Operator" enum = "+""-""invert-""invert/""^""invert^" default = 1 hint = "Determines how the combined Z1 and Z2 sections \ are subsequently combined with the Z3 section" endparam func fn4 caption = "Final function" default = ident() hint = "Applies a final function to the Z1/Z2 section \ combination" endfunc complex param fz1 caption = "Final Z Param 1" default = (0,0) visible = @np endparam complex param fz2 caption = "Final Z Param 2" default = (1,0) visible = @np endparam complex param fz3 caption = "Final Z Param 3" default = (1,0) visible = @np endparam switch: type = "Harmonia" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc pz1 = @pz1 op1 = @op1 rienable = @rienable moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 fna = @fna fnb = @fnb fnzz1 = @fnzz1 act = @act fnact = @fnact act1 = @act1 act2 = @act2 xza3 = @xza3 moderi3 = @moderi3 opri3 = @opri3 priz3 = @priz3 pimz3 = @pimz3 riz3 = @riz3 imz3 = @imz3 fna3 = @fna3 fnb3 = @fnb3 fnzz3 = @fnzz3 act3 = @act3 fnact3 = @fnact3 act13 = @act13 act23 = @act23 xz1 = @xz1 xc1 = @xc1 z1 = @z1 zm1 = @zm1 c1 = @c1 cm1 = @cm1 ec1 = @ec1 fn1a = @fn1a fn1b = @fn1b op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b op3 = @op3 xz3 = @xz3 xc3 = @xc3 z3 = @z3 zm3 = @zm3 c3 = @c3 cm3 = @cm3 ec3 = @ec3 fn3a = @fn3a fn3b = @fn3b op4 = @op4 fn4 = @fn4 fz1 = @fz1 fz2 = @fz2 fz3 = @fz3 mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } Polyphonia { ; This formula redefines the Z variable a number of ; times in the loop, and combines the result in ; different selectable ways with selectable functions ; and params. ; ; "Polyphonia" has four different sections where Z ; is computed in the loop. It has two selectable ; Real/Imaginary(Z) sections and two "straight" ; sections. ; ; Schematic: Z1 (selectable mode), Z2, Z3 (selectable mode) ; and Z4. The final Z in Z1 feeds the initial Z in Z3. ; ; The two selectable sections have three options for Z: ; Complex Z, Real/Imaginary Z or R/I + Complex Z. Select ; with the "Mode parameter. ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because Z is recalculated a number of times in the ; loop this formula can be somewhat slow. ; ; Switch hint: If you find that the "action" is ; happening outside the switch window try resetting ; the "Switch Scale" parameter to 0.5 ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.2 (fixed param ; visibility) init: z = @startseed complex z1 = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z4 = (0,0) complex zri1 = (0,0) complex zri3 = (0,0) complex zri1a = (0,0) complex zri3a = (0,0) complex ari1 = (0,0) complex ari3 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex c1 = (0,0) complex c2 = (0,0) complex c3 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) complex imz3 = @imz3*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z/@scale endif if @center != (0.0,0.0) z = z + @center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Define the Z mode for "zri1" if @xza1 == "z" ari1 = z elseif @xza1 == "|z|" ari1 = |z| elseif @xza1 == "atan2(z)" ari1 = atan2(z) elseif @xza1 == "real(z)" ari1 = real(z) elseif @xza1 == "imag(z)" ari1 = imag(z) endif ; Split Z into R/I components and combine as "zri1" to be plugged in later if @moderi1 == "+"; R/I combination Z1 if @opri1=="+"; Z1 param operator zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "-" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "invert-" if @opri1=="+" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)+@priz1) elseif @opri1=="-" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)-@priz1) elseif @opri1=="*" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)*@priz1) elseif @opri1=="/" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)/@priz1) elseif @opri1=="^" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)/@priz1) endif elseif @moderi1 == "*" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "/" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "invert/" if @opri1=="+" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)+@priz1) elseif @opri1=="-" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)-@priz1) elseif @opri1=="*" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)*@priz1) elseif @opri1=="/" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)/@priz1) elseif @opri1=="^" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)/@priz1) endif elseif @moderi1 == "^" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "invert^" if @opri1=="+" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)+@priz1) elseif @opri1=="-" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)-@priz1) elseif @opri1=="*" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)*@priz1) elseif @opri1=="/" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)/@priz1) elseif @opri1=="^" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)/@priz1) endif endif ; Process Zri1 variable with a C section if @act == "none" zri1a = zri1 elseif @act == "+" zri1a = zri1 + @fnact(c-@act1)^@act2 elseif @act == "-" zri1a = zri1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" zri1a = @fnact(c-@act1)^@act2 - zri1 elseif @act == "*" zri1a = zri1 * @fnact(c-@act1)^@act2 elseif @act == "/" zri1a = zri1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" zri1a = @fnact(c-@act1)^@act2 / zri1 elseif @act == "^" zri1a = zri1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" zri1a = @fnact(c-@act1)^@act2 ^ zri1 endif ; Define the Z mode for "zri3"--it is seeded from the product of "z1" if @xza3 == "z" ari3 = z1 elseif @xza3 == "|z|" ari3 = |z1| elseif @xza3 == "atan2(z)" ari3 = atan2(z1) elseif @xza3 == "real(z)" ari3 = real(z1) elseif @xza3 == "imag(z)" ari3 = imag(z1) endif ; Split Z into R/I components and combine as "zri3" to be plugged in later if @moderi3 == "+"; R/I combination Z3 if @opri3=="+"; Z3 param operator zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "-" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "invert-" if @opri3=="+" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)+@priz3) elseif @opri3=="-" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)-@priz3) elseif @opri3=="*" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)*@priz3) elseif @opri3=="/" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) elseif @opri3=="^" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) endif elseif @moderi3 == "*" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "/" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "invert/" if @opri3=="+" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)+@priz3) elseif @opri3=="-" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)-@priz3) elseif @opri3=="*" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)*@priz3) elseif @opri3=="/" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) elseif @opri3=="^" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) endif elseif @moderi3 == "^" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "invert^" if @opri3=="+" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)+@priz3) elseif @opri3=="-" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)-@priz3) elseif @opri3=="*" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)*@priz3) elseif @opri3=="/" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) elseif @opri3=="^" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) endif endif ; Process Zri3 variable with a C section if @act3 == "none" zri3a = zri3 elseif @act3 == "+" zri3a = zri3 + @fnact3(c-@act13)^@act23 elseif @act3 == "-" zri3a = zri3 - @fnact3(c-@act13)^@act23 elseif @act3 == "invert-" zri3a = @fnact3(c-@act13)^@act23 - zri3 elseif @act3 == "*" zri3a = zri3 * @fnact3(c-@act13)^@act23 elseif @act3 == "/" zri3a = zri3 / @fnact3(c-@act13)^@act23 elseif @act3 == "invert/" zri3a = @fnact3(c-@act13)^@act23 / zri3 elseif @act3 == "^" zri3a = zri3 ^ @fnact3(c-@act13)^@act23 elseif @act3 == "invert^" zri3a = @fnact3(c-@act13)^@act23 ^ zri3 endif ; Defines Z (mode and variables) for Z1 and Z3 sections if @rienable == "1:Z,3:Z" if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif elseif @rienable == "1:RI(Z),3:Z" if @xz1 == "z" a1 = zri1a elseif @xz1 == "|z|" a1 = |zri1a| elseif @xz1 == "atan2(z)" a1 = atan2(zri1a) elseif @xz1 == "real(z)" a1 = real(zri1a) elseif @xz1 == "imag(z)" a1 = imag(zri1a) endif if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif elseif @rienable == "1:RI(Z)+Z,3:Z" if @xz1 == "z" a1 = zri1a + @fnzz1(z) elseif @xz1 == "|z|" a1 = |zri1a|+ @fnzz1(z) elseif @xz1 == "atan2(z)" a1 = atan2(zri1a)+ @fnzz1(z) elseif @xz1 == "real(z)" a1 = real(zri1a)+ @fnzz1(z) elseif @xz1 == "imag(z)" a1 = imag(zri1a)+ @fnzz1(z) endif if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif elseif @rienable == "1:Z,3:RI(Z)" if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif if @xz3 == "z" a3 = zri3 elseif @xz3 == "|z|" a3 = |zri3| elseif @xz3 == "atan2(z)" a3 = atan2(zri3) elseif @xz3 == "real(z)" a3 = real(zri3) elseif @xz3 == "imag(z)" a3 = imag(zri3) endif elseif @rienable == "1:Z,3:RI(Z)+Z" if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif if @xz3 == "z" a3 = zri3a + @fnzz3(z) elseif @xz3 == "|z|" a3 = |zri3a|+ @fnzz3(z) elseif @xz3 == "atan2(z)" a3 = atan2(zri3a)+ @fnzz3(z) elseif @xz3 == "real(z)" a3 = real(zri3a)+ @fnzz3(z) elseif @xz3 == "imag(z)" a3 = imag(zri3a)+ @fnzz3(z) endif elseif @rienable == "1:RI(Z),3:RI(Z)" if @xz1 == "z" a1 = zri1a elseif @xz1 == "|z|" a1 = |zri1a| elseif @xz1 == "atan2(z)" a1 = atan2(zri1a) elseif @xz1 == "real(z)" a1 = real(zri1a) elseif @xz1 == "imag(z)" a1 = imag(zri1a) endif if @xz3 == "z" a3 = zri3a elseif @xz3 == "|z|" a3 = |zri3a| elseif @xz3 == "atan2(z)" a3 = atan2(zri3a) elseif @xz3 == "real(z)" a3 = real(zri3a) elseif @xz3 == "imag(z)" a3 = imag(zri3a) endif elseif @rienable == "1:RI(Z)+Z,3:RI(Z)" if @xz1 == "z" a1 = zri1a + @fnzz1(z) elseif @xz1 == "|z|" a1 = |zri1a|+ @fnzz1(z) elseif @xz1 == "atan2(z)" a1 = atan2(zri1a)+ @fnzz1(z) elseif @xz1 == "real(z)" a1 = real(zri1a)+ @fnzz1(z) elseif @xz1 == "imag(z)" a1 = imag(zri1a)+ @fnzz1(z) endif if @xz3 == "z" a3 = zri3a elseif @xz3 == "|z|" a3 = |zri3a| elseif @xz3 == "atan2(z)" a3 = atan2(zri3a) elseif @xz3 == "real(z)" a3 = real(zri3a) elseif @xz3 == "imag(z)" a3 = imag(zri3a) endif elseif @rienable == "1:RI(Z),3:RI(Z)+Z" if @xz1 == "z" a1 = zri1a elseif @xz1 == "|z|" a1 = |zri1a| elseif @xz1 == "atan2(z)" a1 = atan2(zri1a) elseif @xz1 == "real(z)" a1 = real(zri1a) elseif @xz1 == "imag(z)" a1 = imag(zri1a) endif if @xz3 == "z" a3 = zri3a + @fnzz3(z) elseif @xz3 == "|z|" a3 = |zri3a|+ @fnzz3(z) elseif @xz3 == "atan2(z)" a3 = atan2(zri3a)+ @fnzz3(z) elseif @xz3 == "real(z)" a3 = real(zri3a)+ @fnzz3(z) elseif @xz3 == "imag(z)" a3 = imag(zri3a)+ @fnzz3(z) endif elseif @rienable == "1:RI(Z)+Z,3:RI(Z)+Z" if @xz1 == "z" a1 = zri1a + @fnzz1(z) elseif @xz1 == "|z|" a1 = |zri1a|+ @fnzz1(z) elseif @xz1 == "atan2(z)" a1 = atan2(zri1a)+ @fnzz1(z) elseif @xz1 == "real(z)" a1 = real(zri1a)+ @fnzz1(z) elseif @xz1 == "imag(z)" a1 = imag(zri1a)+ @fnzz1(z) endif if @xz3 == "z" a3 = zri3a + @fnzz3(z) elseif @xz3 == "|z|" a3 = |zri3a|+ @fnzz3(z) elseif @xz3 == "atan2(z)" a3 = atan2(zri3a)+ @fnzz3(z) elseif @xz3 == "real(z)" a3 = real(zri3a)+ @fnzz3(z) elseif @xz3 == "imag(z)" a3 = imag(zri3a)+ @fnzz3(z) endif endif ; Define the mode of C in the Z1 section if @xc1 == "c" c1 = c elseif @xc1 == "|c|" c1 = |c| elseif @xc1 == "atan2(c)" c1 = atan2(c) elseif @xc1 == "real(c)" c1 = real(c) elseif @xc1 == "imag(c)" c1 = imag(c) endif ; Define the Z1 variable in the Z1 section if @op1 == "+"; Z1 operator z1 = @fn1a(a1-@z1)*@zm1+@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "-" z1 = @fn1a(a1-@z1)*@zm1-@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert-" z1 = @fn1b((c1-@c1)*@cm1)^@ec1-@fn1a(a1-@z1)*@zm1 elseif @op1 == "*" z1 = @fn1a(a1-@z1)*@zm1*@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "/" z1 = @fn1a(a1-@z1)*@zm1/@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert/" z1 = @fn1b((c1-@c1)*@cm1)^@ec1/@fn1a(a1-@z1)*@zm1 elseif @op1 == "^" z1 = @fn1a(a1-@z1)*@zm1^@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert^" z1 = @fn1b((c1-@c1)*@cm1)^@ec1^@fn1a(a1-@z1)*@zm1 endif ; Define the modes of Z and C in the Z2 section if @xz2 == "z" a2 = z elseif @xz2 == "|z|" a2 = |z| elseif @xz2 == "atan2(z)" a2 = atan2(z) elseif @xz2 == "real(z)" a2 = real(z) elseif @xz2 == "imag(z)" a2 = imag(z) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable in the Z2 section if @op2 == "+"; Z2 operator z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Define the C mode in the Z3 section if @xc3 == "c" c3 = c elseif @xc3 == "|c|" c3 = |c| elseif @xc3 == "atan2(c)" c3 = atan2(c) elseif @xc3 == "real(c)" c3 = real(c) elseif @xc3 == "imag(c)" c3 = imag(c) endif ; Define the Z3 variable in the Z3 section if @op3 == "+"; Z3 operator z3 = @fn3a(a3-@z3)/@zm3+@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "-" z3 = @fn3a(a3-@z3)/@zm3-@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert-" z3 = @fn3b((c3-@c3)*@cm3)^@ec3-@fn3a(a3-@z3)*@zm3 elseif @op3 == "*" z3 = @fn3a(a3-@z3)/@zm3*@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "/" z3 = @fn3a(a3-@z3)/@zm3/@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert/" z3 = @fn3b((c3-@c3)*@cm3)^@ec3/@fn3a(a3-@z3)*@zm3 elseif @op3 == "^" z3 = @fn3a(a3-@z3)/@zm3^@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert^" z3 = @fn3b((c3-@c3)*@cm3)^@ec3^@fn3a(a3-@z3)*@zm3 endif ; Choose how to combine Z1 and Z2 in X if @pz1 == "+"; Z1\Z2 Operator x = z1+z2 elseif @pz1 == "-" x = z1-z2 elseif @pz1 == "invert-" x = z2-z1 elseif @pz1 == "*" x = z1*z2 elseif @pz1 == "/" x = z1/z2 elseif @pz1 == "invert/" x = z2/z1 elseif @pz1 == "^" x = z1^z2 elseif @pz1 == "invert^" x = z2^z1 endif ; Choose how to combine Z3 with X if @op4 == "+"; Z4 Operator z4 = @fn4(x)+z3 elseif @op4 == "-" z4 = @fn4(x)-z3 elseif @op4 == "invert-" z4 = z3-@fn4(x) elseif @op4 == "invert/" z4 = z3/@fn4(x) elseif @op4 == "^" z4 = @fn4(x)^z3 elseif @op4 == "invert^" z4 = z3^@fn4(x) endif z = z4 + ((z-@fz1)/@fz2)^@fz3 bailout: |z|<=@bailout default: title = "Polyphonia" maxiter = 500 periodicity = 0 param version caption = "Version" default = 120 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Mode Parameters" endheading param rienable caption = "Mode" enum = "1:Z,3:Z""1:RI(Z),3:Z""1:RI(Z)+Z,3:Z""1:Z,3:RI(Z)""1:Z,3:RI(Z)+Z"\ "1:RI(Z),3:RI(Z)""1:RI(Z)+Z,3:RI(Z)""1:RI(Z),3:RI(Z)+Z""1:RI(Z)+Z,3:RI(Z)+Z" default = 0 hint = "Determines the modes for the Z1 and Z3 sections, whether \ complex(z), real/imag(z) or a combination of the two." endparam func fnzz1 caption = "R/I(Z1) Function" default = ident() hint = "Applies a function if the mode selected includes 'RI1Z'" visible = (@rienable == 2 || @rienable == 6 || @rienable == 8) endfunc param xza1 caption = "R/I(Z1) Mode" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the mode of Z before it is split into real \ and imaginary components" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) endparam param moderi1 caption = "R/I(Z1) Op" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the real and imaginary Z sections are \ combined" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) endparam param opri1 caption = "R/I(Z1) Param Op" enum = "+""-""*""/""^" default = 0 hint = "Determines the way a differential parameter is processed \ in the real(z) section" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam float param riz1 caption = "Re(Z1) Param 2" default = 1.0 visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam float param imz1 caption = "Im(Z1) Param 2" default = 1.0 visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam func fna caption = "Re(Z1) Function" default = ident() visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc func fnb caption = "Im(Z1) Function" default = ident() visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc heading caption = "" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) endheading param act caption = "R/I(Z1) Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "When active applies a C variable to the R/I(Z) section \ and determines how it operates" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) hint = "Processes the R/I variable by a C expression" endparam func fnact caption = "R/I(Z1) Accent Fn" default = ident () hint = "Applies a function to the above C variable" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 endfunc complex param act1 caption = "R/I(Z1) Accent P1" default = (0,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam complex param act2 caption = "R/I(Z1) Accent P2" default = (1,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam heading caption = "" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endheading heading caption = "" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endheading func fnzz3 caption = "R/I(Z3) Function" default = ident() hint = "Applies a function if the mode selected includes 'RI3Z'" visible = (@rienable == 4 || @rienable == 7 || @rienable == 8 ) endfunc param xza3 caption = "R/I(Z3) Mode" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the mode of Z before it is split into real \ and imaginary components" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endparam param moderi3 caption = "R/I(Z3) Op" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the real and imaginary Z sections are \ combined" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endparam param opri3 caption = "R/I(Z3) Param Op" enum = "+""-""*""/""^" default = 0 hint = "Determines the way a differential parameter is processed \ in the real(z) section" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endparam complex param priz3 caption = "Re(Z3) Param 1" default = (0,1) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam complex param pimz3 caption = "Im(Z3) Param 1" default = (0,1) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam float param riz3 caption = "Re(Z3) Param 2" default = 1.0 visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam float param imz3 caption = "Im(Z3) Param 2" default = 1.0 visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam complex param rzm3 caption = "Re(Z3) Param 3" default = (1,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam complex param izm3 caption = "Im(Z3) Param 3" default = (1,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam func fna3 caption = "Re(Z3) Function" default = ident() visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc func fnb3 caption = "Im(Z3) Function" default = ident() visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc heading caption = "" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) endheading param act3 caption = "R/I(Z3) Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) hint = "When active applies a C variable to the R/I(Z) section \ and determines how it operates" endparam func fnact3 caption = "R/I(Z3) Accent Fn" default = ident () hint = "Applies a function to the above C variable" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act3 != 0 endfunc complex param act13 caption = "R/I(Z3) Accent P1" default = (0,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam complex param act23 caption = "R/I(Z3) Accent P2" default = (1,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam heading caption = "Z1 Section" endheading param op1 caption = "Z1 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the single Z and single C \ variables in the Z1 section interact" endparam param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z1 section" endparam param xc1 caption = "Z1 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z1 section" endparam complex param z1 caption = "Z1 Param 1" default = (0,0) visible = @np endparam complex param zm1 caption = "Z1 Param 2" default = (1,0) visible = @np endparam complex param c1 caption = "Z1 Param 3" default = (0,0) visible = @np endparam complex param cm1 caption = "Z1 Param 4" default = (1,0) visible = @np endparam complex param ec1 caption = "Z1 Param 5" default = (1,0) visible = @np endparam func fn1a caption = "Z1 Function Z" default = ident() endfunc func fn1b caption = "Z1 Function C" default = ident() endfunc heading caption = "Z2 Section" endheading param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the single Z and single C \ variables in the Z2 section interact" endparam param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z2 section" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section" endheading param op3 caption = "Z3 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the single Z and single C \ variables in the Z1 section interact" endparam param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z3 section" endparam param xc3 caption = "Z3 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z3 section" endparam complex param z3 caption = "Z3 Param 1" default = (0,0) visible = @np endparam complex param zm3 caption = "Z3 Param 2" default = (1,0) visible = @np endparam complex param c3 caption = "Z3 Param 3" default = (0,0) visible = @np endparam complex param cm3 caption = "Z3 Param 4" default = (1,0) visible = @np endparam complex param ec3 caption = "Z3 Param 5" default = (1,0) visible = @np endparam func fn3a caption = "Z3 Function Z" default = ident() endfunc func fn3b caption = "Z3 Function C" default = ident() endfunc heading caption = "Final" endheading param pz1 caption = "Z1\Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the Z1 and Z2 sections are \ combined in the final section" visible = @np endparam param op4 caption = "Final Operator" enum = "+""-""invert-""invert/""^""invert^" default = 1 hint = "Determines how the combined Z1 and Z2 sections \ are subsequently combined with the Z3 section" endparam func fn4 caption = "Final function" default = ident() hint = "Applies a final function to the Z1/Z2 section \ combination" endfunc complex param fz1 caption = "Final Z Param 1" default = (0,0) visible = @np endparam complex param fz2 caption = "Final Z Param 2" default = (1,0) visible = @np endparam complex param fz3 caption = "Final Z Param 3" default = (1,0) visible = @np endparam switch: type = "Polyphonia" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc pz1 = @pz1 op1 = @op1 rienable = @rienable moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 fna = @fna fnb = @fnb fnzz1 = @fnzz1 act = @act fnact = @fnact act1 = @act1 act2 = @act2 xza3 = @xza3 moderi3 = @moderi3 opri3 = @opri3 priz3 = @priz3 pimz3 = @pimz3 riz3 = @riz3 imz3 = @imz3 fna3 = @fna3 fnb3 = @fnb3 fnzz3 = @fnzz3 act3 = @act3 fnact3 = @fnact3 act13 = @act13 act23 = @act23 xz1 = @xz1 xc1 = @xc1 z1 = @z1 zm1 = @zm1 c1 = @c1 cm1 = @cm1 ec1 = @ec1 fn1a = @fn1a fn1b = @fn1b op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b op3 = @op3 xz3 = @xz3 xc3 = @xc3 z3 = @z3 zm3 = @zm3 c3 = @c3 cm3 = @cm3 ec3 = @ec3 fn3a = @fn3a fn3b = @fn3b fn4 = @fn4 fz1 = @fz1 fz2 = @fz2 fz3 = @fz3 op4 = @op4 xza1 = @xza1 mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } SuiteAeolia { ; This formula redefines the Z variable a number ; of times in the loop, and combines the result in ; different selectable ways with selectable ; functions and params. ; ; Aeolia has four Z sections which are combined at ; the end of the loop. One of these (Z1) has Z split ; into real and imaginary components which can be ; combined in different ways to define the final ; variable of that section. The Z section order ; can also be changed. ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because of the complexity of the loop calculation, this ; formula can be quite slow in some modes. ; ; SWITCH HINT: Because in some R/I modes the switch action ; takes place away from the center you might find it useful ; to set the "Switch Scale" param to 0.5 or so in those cases. ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.1 (fixed param visibility) init: z = @startseed complex z1 = (0,0) complex z1a = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z4 = (0,0) complex z5 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex a4 = (0,0) complex c2 = (0,0) complex c3 = (0,0) complex c4 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z/@scale endif if @center != (0.0,0.0) z = z+@center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Determine the mode of Z in the Z1 section (R/I) if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif ; Combine real and imaginary parts of Z in Z1 section rez0 = (@fna(real(a1-@riz1)*@rzm1)+@priz1) rez1 = (@fna(real(a1-@riz1)*@rzm1)-@priz1) rez2 = (@fna(real(a1-@riz1)*@rzm1)*@priz1) rez3 = (@fna(real(a1-@riz1)*@rzm1)/@priz1) rez4 = (@fna(real(a1-@riz1)*@rzm1)^@priz1) imz = (@fnb(imag(a1-imz1)*@izm1)+@pimz1) if @moderi1 == "+"; R/I operator if @opri1=="+"; Z1 param operator z1 = rez0 + imz elseif @opri1=="-" z1 = rez1 + imz elseif @opri1=="*" z1 = rez2 + imz elseif @opri1=="/" z1 = rez3 + imz elseif @opri1=="^" z1 = rez4+imz endif elseif @moderi1 == "-" if @opri1=="+" z1 = rez0-imz elseif @opri1=="-" z1 = rez1-imz elseif @opri1=="*" z1 = rez2-imz elseif @opri1=="/" z1 = rez3-imz elseif @opri1=="^" z1 = rez4-imz endif elseif @moderi1 == "invert-" if @opri1=="+" z1 = imz-rez0 elseif @opri1=="-" z1 = imz-rez1 elseif @opri1=="*" z1 = imz-rez2 elseif @opri1=="/" z1 = imz-rez3 elseif @opri1=="^" z1 = imz-rez4 endif elseif @moderi1 == "*" if @opri1=="+" z1 = rez0*imz elseif @opri1=="-" z1 = rez1*imz elseif @opri1=="*" z1 = rez2*imz elseif @opri1=="/" z1 = rez3*imz elseif @opri1=="^" z1 = rez4*imz endif elseif @moderi1 == "/" if @opri1=="+" z1 = rez0/imz elseif @opri1=="-" z1 = rez1/imz elseif @opri1=="*" z1 = rez2/imz elseif @opri1=="/" z1 = rez3/imz elseif @opri1=="^" z1 = rez4/imz endif elseif @moderi1 == "invert/" if @opri1=="+" z1 = imz/rez0 elseif @opri1=="-" z1 = imz/rez1 elseif @opri1=="*" z1 = imz/rez2 elseif @opri1=="/" z1 = imz/rez3 elseif @opri1=="^" z1 = imz/rez4 endif elseif @moderi1 == "^" if @opri1=="+" z1 = rez0^imz elseif @opri1=="-" z1 = rez1^imz elseif @opri1=="*" z1 = rez2^imz elseif @opri1=="/" z1 = rez3^imz elseif @opri1=="^" z1 = rez4^imz endif elseif @moderi1 == "invert^" if @opri1=="+" z1 = imz^rez0 elseif @opri1=="-" z1 = imz^rez1 elseif @opri1=="*" z1 = imz^rez2 elseif @opri1=="/" z1 = imz^rez3 elseif @opri1=="^" z1 = imz^rez4 endif endif ; Process Z1 variable with a C section if @act == "none" z1a = z1 elseif @act == "+" z1a = z1 + @fnact(c-@act1)^@act2 elseif @act == "-" z1a = z1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" z1a = @fnact(c-@act1)^@act2 - z1 elseif @act == "*" z1a = z1 * @fnact(c-@act1)^@act2 elseif @act == "/" z1a = z1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" z1a = @fnact(c-@act1)^@act2 / z1 elseif @act == "^" z1a = z1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" z1a = @fnact(c-@act1)^@act2 ^ z1 endif ; Define the modes of Z and C in the Z2 section if @xz2 == "z" a2 = z elseif @xz2 == "|z|" a2 = |z| elseif @xz2 == "atan2(z)" a2 = atan2(z) elseif @xz2 == "real(z)" a2 = real(z) elseif @xz2 == "imag(z)" a2 = imag(z) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable if @op2 == "+"; Z2 operator z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Define the modes of Z and C in the Z3 section if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif if @xc3 == "c" c3 = c elseif @xc3 == "|c|" c3 = |c| elseif @xc3 == "atan2(c)" c3 = atan2(c) elseif @xc3 == "real(c)" c3 = real(c) elseif @xc3 == "imag(c)" c3 = imag(c) endif ; Define the Z3 variable if @op3 == "+"; Z3 operator z3 = @fn3a(a3-@z3)*@zm3+@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "-" z3 = @fn3a(a3-@z3)*@zm3-@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert-" z3 = @fn3b((c3-@c3)*@cm3)^@ec3-@fn3a(a3-@z3)*@zm3 elseif @op3 == "*" z3 = @fn3a(a3-@z3)*@zm3*@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "/" z3 = @fn3a(a3-@z3)*@zm3/@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert/" z3 = @fn3b((c3-@c3)*@cm3)^@ec3/@fn3a(a3-@z3)*@zm3 elseif @op3 == "^" z3 = @fn3a(a3-@z3)*@zm3^@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert^" z3 = @fn3b((c3-@c3)*@cm3)^@ec3^@fn3a(a3-@z3)*@zm3 endif ; Decide the positions of the three Z sections if @change == "Z1|Z2|Z3" if @pz1 == "+" x = z1a+z2 elseif @pz1 == "-" x = z1a-z2 elseif @pz1 == "invert-" x = z2-z1a elseif @pz1 == "*" x = z1a*z2 elseif @pz1 == "/" x = z1a/z2 elseif @pz1 == "invert/" x = z2/z1a elseif @pz1 == "^" x = z1a^z2 elseif @pz1 == "invert^" x = z2^z1a endif if @op5 == "+" z5 = @fn5(x)+z3 elseif @op5 == "-" z5 = @fn5(x)-z3 elseif @op5 == "invert-" z5 = z3-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z3 elseif @op5 == "/" z5 = @fn5(x)/z3 elseif @op5 == "invert/" z5 = z3/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z3 elseif @op5 == "invert^" z5 = z3^@fn5(x) endif elseif @change == "Z2|Z3|Z1" if @pz1 == "+" x = z2+z3 elseif @pz1 == "-" x = z2-z3 elseif @pz1 == "invert-" x = z3-z2 elseif @pz1 == "*" x = z2*z3 elseif @pz1 == "/" x = z2/z3 elseif @pz1 == "invert/" x = z3/z2 elseif @pz1 == "^" x = z2^z3 elseif @pz1 == "invert^" x = z3^z2 endif if @op5 == "+" z5 = @fn5(x)+z1a elseif @op5 == "-" z5 = @fn5(x)-z1a elseif @op5 == "invert-" z5 = z1a-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z1a elseif @op5 == "/" z5 = @fn5(x)/z1a elseif @op5 == "invert/" z5 = z1a/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z1a elseif @op5 == "invert^" z5 = z1a^@fn5(x) endif endif ; Define the Z and C modes for the Z4 section if @xz4 == "z" a4 = z elseif @xz4 == "|z|" a4 = |z| elseif @xz4 == "atan2(z)" a4 = atan2(z) elseif @xz4 == "real(z)" a4 = real(z) elseif @xz4 == "imag(z)" a4 = imag(z) endif if @xc4 == "c" c4 = c elseif @xc4 == "|c|" c4 = |c| elseif @xc4 == "atan2(c)" c4 = atan2(c) elseif @xc4 == "real(c)" c4 = real(c) elseif @xc4 == "imag(c)" c4 = imag(c) endif ; Define the Z4 variable if @op4 == "+" z4 = @fn4a(a4-@z4)/@zm4+@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "-" z4 = @fn4a(a4-@z4)/@zm4-@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert-" z4 = @fn4b((c4-@c4)*@cm4)^@ec4-@fn4a(a4-@z4)*@zm4 elseif @op4 == "*" z4 = @fn4a(a4-@z4)/@zm4*@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "/" z4 = @fn4a(a4-@z4)/@zm4/@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert/" z4 = @fn4b((c4-@c4)*@cm4)^@ec4/@fn4a(a4-@z4)*@zm4 elseif @op4 == "^" z4 = @fn4a(a4-@z4)/@zm4^@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert^" z4 = @fn4b((c4-@c4)*@cm4)^@ec4^@fn4a(a4-@z4)*@zm4 endif ; Z4 section [operator] Z5 section-final definition of Z if @final == "+" z = z5+z4 elseif @final == "-" z = z5-z4 elseif @final == "invert -" z = z4-z5 elseif @final == "*" z = z4*z5 endif bailout: |z|<=@bailout default: title = "Suite: Aeolia" center = (0.0,0.0) maxiter = 500 periodicity = 0 param version caption = "Version" default = 110 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Z1 Section (R/I)" endheading param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z1" endparam param moderi1 caption = "Z1 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z1 are combined" endparam param opri1 caption = "Z1 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z1 operates" endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = @np == true endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = @np == true endparam float param riz1 caption = "Re(Z1) Param 2" default = 0 visible = @np == true endparam float param imz1 caption = "Im(Z1) Param 2" default = 0 visible = @np == true endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = @np == true endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = @np == true endparam func fna caption = "Re(Z1) Function" default = cos() endfunc func fnb caption = "Im(Z1) Function" default = cos() endfunc heading caption = "" endheading param act caption = "Z1 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z1 variable by a C expression" endparam func fnact caption = "Z1 Accent Function" default = ident () visible = @act !=0 endfunc complex param act1 caption = "Z1 Accent P1" default = (0,0) visible = @np == true && @act != 0 endparam complex param act2 caption = "Z1 Accent P2" default = (1,0) visible = @np == true && @act != 0 endparam heading caption = "Z2 Section" endheading param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np == true endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np == true endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np == true endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np == true endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np == true endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section" endheading param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc3 caption = "Z3 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op3 caption = "Z3 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z3 caption = "Z3 Param 1" default = (0,0) visible = @np == true endparam complex param zm3 caption = "Z3 Param 2" default = (1,0) visible = @np == true endparam complex param c3 caption = "Z3 Param 3" default = (0,0) visible = @np == true endparam complex param cm3 caption = "Z3 Param 4" default = (1,0) visible = @np == true endparam complex param ec3 caption = "Z3 Param 5" default = (1,0) visible = @np == true endparam func fn3a caption = "Z3 Function Z" default = ident() endfunc func fn3b caption = "Z3 Function C" default = ident() endfunc heading caption = "Z4 Parameters" endheading param xz4 caption = "Z4 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z4 section" endparam param xc4 caption = "Z4 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z4 section" endparam param op4 caption = "Z4 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 3 hint = "Determines how the Z and C parts of Z4 interact" endparam complex param z4 caption = "Z4 Param 1" default = (0,0) visible = @np == true endparam complex param zm4 caption = "Z4 Param 2" default = (1,0) visible = @np == true endparam complex param c4 caption = "Z4 Param 3" default = (0,0) visible = @np == true endparam complex param cm4 caption = "Z4 Param 4" default = (1,0) visible = @np == true endparam complex param ec4 caption = "Z4 Param 5" default = (1,0) visible = @np == true endparam func fn4a caption = "Z4 Function Z" default = ident() endfunc func fn4b caption = "Z4 Function C" default = ident() endfunc heading caption = "Final" endheading param change caption = "Section Order" enum = "Z1|Z2|Z3""Z2|Z3|Z1" default = 0 endparam param pz1 caption = "1st Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines the operator at work between the \ first two sections as shown in 'Section Order'" endparam param op5 caption = "2nd Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines the operator at work between the \ last two sections as shown in 'Section Order'" endparam param final caption = "Final Operator" enum = "+""-""invert -""*" default = 0 hint = "Determines the final interaction of the combined Z sections" endparam func fn5 caption = "Final function" default = ident() endfunc switch: type = "SuiteAeolia" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc act = @act fnact = @fnact act1 = @act1 act2 = @act2 moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 rzm1 = @rzm1 izm1 = @izm1 fna = @fna fnb = @fnb xz1 = @xz1 op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b xz3 = @xz3 xc3 = @xc3 z3 = @z3 zm3 = @zm3 c3 = @c3 cm3 = @cm3 ec3 = @ec3 fn3a = @fn3a fn3b = @fn3b op5 = @op5 fn5 = @fn5 change = @change pz1 = @pz1 final = @final op4 = @op4 xz4 = @xz4 xc4 = @xc4 z4 = @z4 zm4 = @zm4 c4 = @c4 cm4 = @cm4 ec4 = @ec4 fn4a = @fn4a fn4b = @fn4b mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } SuiteDoria { ; This formula redefines the Z variable a number of ; times in the loop, and combines the result in ; different selectable ways with selectable functions ; and params. ; ; Doria has four Z sections which are combined at the ; end of the loop. Two of these (Z1 and Z3) have Z split ; into real and imaginary components which can be combined ; in different ways to define the final variable of those ; sections. ; ; Z1 (R/I) feeds Z2 ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because of the complexity of the loop calculation, this ; formula can be quite slow in some modes. ; ; SWITCH HINT: Because in some R/I modes the switch action ; takes place away from the center you might find it useful ; to set the "Switch Scale" param to 0.5 or so in those cases. ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.1 (fixed param visibility) init: z = @startseed complex z1 = (0,0) complex z1a = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z3a = (0,0) complex z4 = (0,0) complex z5 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex a4 = (0,0) complex c2 = (0,0) complex c4 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) complex imzp3 = @imzp3*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Select the mode for Z in the Z1 section (R/I) if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif ; Combine the Real and Imaginary Z components of Z1 rez0 = (@fna(real(a1-@riz1)*@rzm1)+@priz1) rez1 = (@fna(real(a1-@riz1)*@rzm1)-@priz1) rez2 = (@fna(real(a1-@riz1)*@rzm1)*@priz1) rez3 = (@fna(real(a1-@riz1)*@rzm1)/@priz1) rez4 = (@fna(real(a1-@riz1)*@rzm1)^@priz1) imz = (@fnb(imag(a1-imz1)*@izm1)+@pimz1) if @moderi1 == "+"; R/I combination Z1 if @opri1=="+"; Z1 R/I param operator z1 = rez0 + imz elseif @opri1=="-" z1 = rez1 + imz elseif @opri1=="*" z1 = rez2 + imz elseif @opri1=="/" z1 = rez3 + imz elseif @opri1=="^" z1 = rez4+imz endif elseif @moderi1 == "-" if @opri1=="+" z1 = rez0-imz elseif @opri1=="-" z1 = rez1-imz elseif @opri1=="*" z1 = rez2-imz elseif @opri1=="/" z1 = rez3-imz elseif @opri1=="^" z1 = rez4-imz endif elseif @moderi1 == "invert-" if @opri1=="+" z1 = imz-rez0 elseif @opri1=="-" z1 = imz-rez1 elseif @opri1=="*" z1 = imz-rez2 elseif @opri1=="/" z1 = imz-rez3 elseif @opri1=="^" z1 = imz-rez4 endif elseif @moderi1 == "*" if @opri1=="+" z1 = rez0*imz elseif @opri1=="-" z1 = rez1*imz elseif @opri1=="*" z1 = rez2*imz elseif @opri1=="/" z1 = rez3*imz elseif @opri1=="^" z1 = rez4*imz endif elseif @moderi1 == "/" if @opri1=="+" z1 = rez0/imz elseif @opri1=="-" z1 = rez1/imz elseif @opri1=="*" z1 = rez2/imz elseif @opri1=="/" z1 = rez3/imz elseif @opri1=="^" z1 = rez4/imz endif elseif @moderi1 == "invert/" if @opri1=="+" z1 = imz/rez0 elseif @opri1=="-" z1 = imz/rez1 elseif @opri1=="*" z1 = imz/rez2 elseif @opri1=="/" z1 = imz/rez3 elseif @opri1=="^" z1 = imz/rez4 endif elseif @moderi1 == "^" if @opri1=="+" z1 = rez0^imz elseif @opri1=="-" z1 = rez1^imz elseif @opri1=="*" z1 = rez2^imz elseif @opri1=="/" z1 = rez3^imz elseif @opri1=="^" z1 = rez4^imz endif elseif @moderi1 == "invert^" if @opri1=="+" z1 = imz^rez0 elseif @opri1=="-" z1 = imz^rez1 elseif @opri1=="*" z1 = imz^rez2 elseif @opri1=="/" z1 = imz^rez3 elseif @opri1=="^" z1 = imz^rez4 endif endif ; Process Z1 by a C variable if @act == "none" z1a = z1 elseif @act == "+" z1a = z1 + @fnact(c-@act1)^@act2 elseif @act == "-" z1a = z1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" z1a = @fnact(c-@act1)^@act2 - z1 elseif @act == "*" z1a = z1 * @fnact(c-@act1)^@act2 elseif @act == "/" z1a = z1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" z1a = @fnact(c-@act1)^@act2 / z1 elseif @act == "^" z1a = z1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" z1a = @fnact(c-@act1)^@act2 ^ z1 endif ; Select the Z and C variable modes for the Z2 section if @xz2 == "z" a2 = z1a elseif @xz2 == "|z|" a2 = |z1a| elseif @xz2 == "atan2(z)" a2 = atan2(z1a) elseif @xz2 == "real(z)" a2 = real(z1a) elseif @xz2 == "imag(z)" a2 = imag(z1a) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable if @op2 == "+" z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Select the Z mode for Z3 section (R/I) if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif ; Combine the Real and Imaginary Z components of Z3 rez03 = (@fna3(real(a3-@riz3)*@rzm3)+@priz3) rez13 = (@fna3(real(a3-@riz3)*@rzm3)-@priz3) rez23 = (@fna3(real(a3-@riz3)*@rzm3)*@priz3) rez33 = (@fna3(real(a3-@riz3)*@rzm3)/@priz3) rez43 = (@fna3(real(a3-@riz3)*@rzm3)^@priz3) imz3 = (@fnb3(imag(a3-imzp3)*@izm3)+@pimz3) if @moderi3 == "+"; R/I operator Z3 if @opri3=="+"; Z3 param operator z3 = rez03+imz3 elseif @opri3=="-" z3 = rez13+imz3 elseif @opri3=="*" z3 = rez23+imz3 elseif @opri3=="/" z3 = rez33+imz3 elseif @opri3=="^" z3 = rez43+imz3 endif elseif @moderi3 == "-" if @opri3=="+" z3 = rez03-imz3 elseif @opri3=="-" z3 = rez13-imz3 elseif @opri3=="*" z3 = rez23-imz3 elseif @opri3=="/" z3 = rez33-imz3 elseif @opri3=="^" z3 = rez43-imz3 endif elseif @moderi3 == "invert-" if @opri3=="+" z3 = imz3-rez03 elseif @opri3=="-" z3 = imz3-rez13 elseif @opri3=="*" z3 = imz3-rez23 elseif @opri3=="/" z3 = imz3-rez33 elseif @opri3=="^" z3 = imz3-rez43 endif elseif @moderi3 == "*" if @opri3=="+" z3 = rez03*imz3 elseif @opri3=="-" z3 = rez13*imz3 elseif @opri3=="*" z3 = rez23*imz3 elseif @opri3=="/" z3 = rez33*imz3 elseif @opri3=="^" z3 = rez43*imz3 endif elseif @moderi3 == "/" if @opri3=="+" z3 = rez03/imz3 elseif @opri3=="-" z3 = rez13/imz3 elseif @opri3=="*" z3 = rez23/imz3 elseif @opri3=="/" z3 = rez33/imz3 elseif @opri3=="^" z3 = rez43/imz3 endif elseif @moderi3 == "invert/" if @opri3=="+" z3 = imz3/rez03 elseif @opri3=="-" z3 = imz3/rez13 elseif @opri3=="*" z3 = imz3/rez23 elseif @opri3=="/" z3 = imz3/rez33 elseif @opri3=="^" z3 = imz3/rez43 endif elseif @moderi3 == "^" if @opri3=="+" z3 = rez03^imz3 elseif @opri3=="-" z3 = rez13^imz3 elseif @opri3=="*" z3 = rez23^imz3 elseif @opri3=="/" z3 = rez33^imz3 elseif @opri3=="^" z3 = rez43^imz3 endif elseif @moderi3 == "invert^" if @opri3=="+" z3 = imz3^rez03 elseif @opri3=="-" z3 = imz3^rez13 elseif @opri3=="*" z3 = imz3^rez23 elseif @opri3=="/" z3 = imz3^rez33 elseif @opri3=="^" z3 = imz3^rez43 endif endif ; Process Z3 by a C variable if @act3 == "none" z3a = z3 elseif @act3 == "+" z3a = z3 + @fnact3(c-@act13)^@act23 elseif @act3 == "-" z3a = z3 - @fnact3(c-@act13)^@act23 elseif @act3 == "invert-" z3a = @fnact3(c-@act13)^@act23 - z3 elseif @act3 == "*" z3a = z3 * @fnact3(c-@act13)^@act23 elseif @act3 == "/" z3a = z3 / @fnact3(c-@act13)^@act23 elseif @act3 == "invert/" z3a = @fnact3(c-@act13)^@act23 / z3 elseif @act3 == "^" z3a = z3 ^ @fnact3(c-@act13)^@act23 elseif @act3 == "invert^" z3a = @fnact3(c-@act13)^@act23 ^ z3 endif ; Decide the positions of the three Z blocks if @change == "Z1|Z2|Z3" if @pz1 == "+" x = z1a+z2 elseif @pz1 == "-" x = z1a-z2 elseif @pz1 == "invert-" x = z2-z1a elseif @pz1 == "*" x = z1a*z2 elseif @pz1 == "/" x = z1a/z2 elseif @pz1 == "invert/" x = z2/z1a elseif @pz1 == "^" x = z1a^z2 elseif @pz1 == "invert^" x = z2^z1a endif if @op5 == "+" z5 = @fn5(x)+z3a elseif @op5 == "-" z5 = @fn5(x)-z3a elseif @op5 == "invert-" z5 = z3a-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z3a elseif @op5 == "/" z5 = @fn5(x)/z3a elseif @op5 == "invert/" z5 = z3a/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z3a elseif @op5 == "invert^" z5 = z3a^@fn5(x) endif elseif @change == "Z1|Z3|Z2" if @pz1 == "+" x = z1a+z3a elseif @pz1 == "-" x = z1a-z3a elseif @pz1 == "invert-" x = z3a-z1a elseif @pz1 == "*" x = z1a*z3a elseif @pz1 == "/" x = z1a/z3a elseif @pz1 == "invert/" x = z3a/z1a elseif @pz1 == "^" x = z1a^z3a elseif @pz1 == "invert^" x = z3a^z1a endif if @op5 == "+" z5 = @fn5(x)+z2 elseif @op5 == "-" z5 = @fn5(x)-z2 elseif @op5 == "invert-" z5 = z2-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z2 elseif @op5 == "/" z5 = @fn5(x)/z2 elseif @op5 == "invert/" z5 = z2/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z2 elseif @op5 == "invert^" z5 = z2^@fn5(x) endif endif ; Select the Z and C modes for Z4 section if @xz4 == "z" a4 = z elseif @xz4 == "|z|" a4 = |z| elseif @xz4 == "atan2(z)" a4 = atan2(z) elseif @xz4 == "real(z)" a4 = real(z) elseif @xz4 == "imag(z)" a4 = imag(z) endif if @xc4 == "c" c4 = c elseif @xc4 == "|c|" c4 = |c| elseif @xc4 == "atan2(c)" c4 = atan2(c) elseif @xc4 == "real(c)" c4 = real(c) elseif @xc4 == "imag(c)" c4 = imag(c) endif ; Define the Z4 variable if @op4 == "+" z4 = @fn4a(a4-@z4)/@zm4+@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "-" z4 = @fn4a(a4-@z4)/@zm4-@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert-" z4 = @fn4b((c4-@c4)*@cm4)^@ec4-@fn4a(a4-@z4)*@zm4 elseif @op4 == "*" z4 = @fn4a(a4-@z4)/@zm4*@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "/" z4 = @fn4a(a4-@z4)/@zm4/@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert/" z4 = @fn4b((c4-@c4)*@cm4)^@ec4/@fn4a(a4-@z4)*@zm4 elseif @op4 == "^" z4 = @fn4a(a4-@z4)/@zm4^@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert^" z4 = @fn4b((c4-@c4)*@cm4)^@ec4^@fn4a(a4-@z4)*@zm4 endif ; Z4 section [operator] Z5 section--final definition of Z if @final == "+" z = z5+z4 elseif @final == "-" z = z5-z4 elseif @final == "invert -" z = z4-z5 elseif @final == "*" z = z4*z5 endif bailout: |z|<=@bailout default: title = "Suite: Doria" maxiter = 500 periodicity = 0 param version caption = "Version" default = 110 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Z1 Section (R/I)" endheading param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z1" endparam param moderi1 caption = "Z1 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z1 are combined" endparam param opri1 caption = "Z1 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z1 operates" endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = @np == true endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = @np == true endparam float param riz1 caption = "Re(Z1) Param 2" default = 0 visible = @np == true endparam float param imz1 caption = "Im(Z1) Param 2" default = 0 visible = @np == true endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = @np == true endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = @np == true endparam func fna caption = "Re(Z1) Function" default = cos() endfunc func fnb caption = "Im(Z1) Function" default = cos() endfunc heading caption = "" endheading param act caption = "Z1 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z1 variable by a C expression" endparam func fnact caption = "Z1 Accent Function" default = ident () visible = @act !=0 endfunc complex param act1 caption = "Z1 Accent P1" default = (0,0) visible = @np == true && @act != 0 endparam complex param act2 caption = "Z1 Accent P2" default = (1,0) visible = @np == true && @act != 0 endparam heading caption = "Z2 Section" endheading param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np == true endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np == true endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np == true endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np == true endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np == true endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section (R/I)" endheading param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z3" endparam param moderi3 caption = "Z3 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z3 are combined" endparam param opri3 caption = "Z3 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z3 operates" endparam complex param priz3 caption = "Re(Z3) Param 1" default = (0,1) visible = @np == true endparam complex param pimz3 caption = "Im(Z3) Param 1" default = (0,1) visible = @np == true endparam float param riz3 caption = "Re(Z3) Param 2" default = 0 visible = @np == true endparam float param imzp3 caption = "Im(Z3) Param 2" default = 0 endparam complex param rzm3 caption = "Re(Z3) Param 3" default = (1,0) visible = @np == true endparam complex param izm3 caption = "Im(Z3) Param 3" default = (1,0) visible = @np == true endparam func fna3 caption = "Re(Z3) Function" default = cos() endfunc func fnb3 caption = "Im(Z3) Function" default = cos() endfunc heading caption = "" endheading param act3 caption = "Z3 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z3 variable by a C expression" endparam func fnact3 caption = "Z3 Accent Function" default = ident () visible = @act3 !=0 endfunc complex param act13 caption = "Z3 Accent P1" default = (0,0) visible = @np == true && @act3 != 0 endparam complex param act23 caption = "Z3 Accent P2" default = (1,0) visible = @np == true && @act3 != 0 endparam heading caption = "Z4 Parameters" endheading param xz4 caption = "Z4 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z4 section" endparam param xc4 caption = "Z4 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z4 section" endparam param op4 caption = "Z4 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 3 hint = "Determines how the Z and C parts of Z4 interact" endparam complex param z4 caption = "Z4 Param 1" default = (0,0) visible = @np == true endparam complex param zm4 caption = "Z4 Param 2" default = (1,0) visible = @np == true endparam complex param c4 caption = "Z4 Param 3" default = (0,0) visible = @np == true endparam complex param cm4 caption = "Z4 Param 4" default = (1,0) visible = @np == true endparam complex param ec4 caption = "Z4 Param 5" default = (1,0) visible = @np == true endparam func fn4a caption = "Z4 Function Z" default = ident() endfunc func fn4b caption = "Z4 Function C" default = ident() endfunc heading caption = "Final" endheading param change caption = "Section Order" enum = "Z1|Z2|Z3""Z1|Z3|Z2" default = 0 endparam param pz1 caption = "1st Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines the operator at work between the \ first two sections as shown in 'Section Order'" endparam param op5 caption = "2nd Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines the operator at work between the \ last two sections as shown in 'Section Order'" endparam param final caption = "Final Operator" enum = "+""-""invert -""*" default = 0 hint = "Determines the final interaction of the combined Z sections" endparam func fn5 caption = "Final function" default = ident() endfunc switch: type = "SuiteDoria" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc act = @act fnact = @fnact act1 = @act1 act2 = @act2 moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 rzm1 = @rzm1 izm1 = @izm1 fna = @fna fnb = @fnb xz1 = @xz1 op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b act3 = @act3 fnact3 = @fnact3 act13 = @act13 act23 = @act23 moderi3 = @moderi3 opri3 = @opri3 priz3 = @priz3 pimz3 = @pimz3 riz3 = @riz3 imzp3 = @imzp3 rzm3 = @rzm3 izm3 = @izm3 fna3 = @fna3 fnb3 = @fnb3 xz3 = @xz3 op5 = @op5 fn5 = @fn5 change = @change pz1 = @pz1 final = @final op4 = @op4 xz4 = @xz4 xc4 = @xc4 z4 = @z4 zm4 = @zm4 c4 = @c4 cm4 = @cm4 ec4 = @ec4 fn4a = @fn4a fn4b = @fn4b mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } SuiteMixolydia { ; This formula redefines the Z variable a number of ; times in the loop, and combines the result in ; different selectable ways with selectable functions ; and params. ; ; Mixolydia has four Z sections which are combined at the ; end of the loop. Two of these (Z1 and Z3) have Z split ; into real and imaginary components which can be combined ; in different ways to define the final variable of that ; sections. ; ; All sections are independent. ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because of the complexity of the loop calculation, this ; formula can be quite slow in some modes. ; ; SWITCH HINT: Because in some R/I modes the switch action ; takes place away from the center you might find it useful ; to set the "Switch Scale" param to 0.5 or so in those cases. ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.1 (fixed param visibility) init: z = @startseed complex z1 = (0,0) complex z1a = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z3a = (0,0) complex z4 = (0,0) complex z5 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex a4 = (0,0) complex c2 = (0,0) complex c4 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) complex imzp3 = @imzp3*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Select the mode for Z in the Z1 section (R/I) if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif ; Combine the Real and Imaginary Z components of Z1 rez0 = (@fna(real(a1-@riz1)*@rzm1)+@priz1) rez1 = (@fna(real(a1-@riz1)*@rzm1)-@priz1) rez2 = (@fna(real(a1-@riz1)*@rzm1)*@priz1) rez3 = (@fna(real(a1-@riz1)*@rzm1)/@priz1) rez4 = (@fna(real(a1-@riz1)*@rzm1)^@priz1) imz = (@fnb(imag(a1-imz1)*@izm1)+@pimz1) if @moderi1 == "+"; R/I combination Z1 if @opri1=="+"; Z1 R/I param operator z1 = rez0 + imz elseif @opri1=="-" z1 = rez1 + imz elseif @opri1=="*" z1 = rez2 + imz elseif @opri1=="/" z1 = rez3 + imz elseif @opri1=="^" z1 = rez4+imz endif elseif @moderi1 == "-" if @opri1=="+" z1 = rez0-imz elseif @opri1=="-" z1 = rez1-imz elseif @opri1=="*" z1 = rez2-imz elseif @opri1=="/" z1 = rez3-imz elseif @opri1=="^" z1 = rez4-imz endif elseif @moderi1 == "invert-" if @opri1=="+" z1 = imz-rez0 elseif @opri1=="-" z1 = imz-rez1 elseif @opri1=="*" z1 = imz-rez2 elseif @opri1=="/" z1 = imz-rez3 elseif @opri1=="^" z1 = imz-rez4 endif elseif @moderi1 == "*" if @opri1=="+" z1 = rez0*imz elseif @opri1=="-" z1 = rez1*imz elseif @opri1=="*" z1 = rez2*imz elseif @opri1=="/" z1 = rez3*imz elseif @opri1=="^" z1 = rez4*imz endif elseif @moderi1 == "/" if @opri1=="+" z1 = rez0/imz elseif @opri1=="-" z1 = rez1/imz elseif @opri1=="*" z1 = rez2/imz elseif @opri1=="/" z1 = rez3/imz elseif @opri1=="^" z1 = rez4/imz endif elseif @moderi1 == "invert/" if @opri1=="+" z1 = imz/rez0 elseif @opri1=="-" z1 = imz/rez1 elseif @opri1=="*" z1 = imz/rez2 elseif @opri1=="/" z1 = imz/rez3 elseif @opri1=="^" z1 = imz/rez4 endif elseif @moderi1 == "^" if @opri1=="+" z1 = rez0^imz elseif @opri1=="-" z1 = rez1^imz elseif @opri1=="*" z1 = rez2^imz elseif @opri1=="/" z1 = rez3^imz elseif @opri1=="^" z1 = rez4^imz endif elseif @moderi1 == "invert^" if @opri1=="+" z1 = imz^rez0 elseif @opri1=="-" z1 = imz^rez1 elseif @opri1=="*" z1 = imz^rez2 elseif @opri1=="/" z1 = imz^rez3 elseif @opri1=="^" z1 = imz^rez4 endif endif ; Process Z1 by a C variable if @act == "none" z1a = z1 elseif @act == "+" z1a = z1 + @fnact(c-@act1)^@act2 elseif @act == "-" z1a = z1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" z1a = @fnact(c-@act1)^@act2 - z1 elseif @act == "*" z1a = z1 * @fnact(c-@act1)^@act2 elseif @act == "/" z1a = z1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" z1a = @fnact(c-@act1)^@act2 / z1 elseif @act == "^" z1a = z1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" z1a = @fnact(c-@act1)^@act2 ^ z1 endif ; Select the Z and C variable modes for the Z2 section if @xz2 == "z" a2 = z elseif @xz2 == "|z|" a2 = |z| elseif @xz2 == "atan2(z)" a2 = atan2(z) elseif @xz2 == "real(z)" a2 = real(z) elseif @xz2 == "imag(z)" a2 = imag(z) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable if @op2 == "+" z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Select the Z mode for Z3 section (R/I) if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif ; Combine the Real and Imaginary Z components of Z3 rez03 = (@fna3(real(a3-@riz3)*@rzm3)+@priz3) rez13 = (@fna3(real(a3-@riz3)*@rzm3)-@priz3) rez23 = (@fna3(real(a3-@riz3)*@rzm3)*@priz3) rez33 = (@fna3(real(a3-@riz3)*@rzm3)/@priz3) rez43 = (@fna3(real(a3-@riz3)*@rzm3)^@priz3) imz3 = (@fnb3(imag(a3-imzp3)*@izm3)+@pimz3) if @moderi3 == "+"; R/I operator Z3 if @opri3=="+"; Z3 param operator z3 = rez03+imz3 elseif @opri3=="-" z3 = rez13+imz3 elseif @opri3=="*" z3 = rez23+imz3 elseif @opri3=="/" z3 = rez33+imz3 elseif @opri3=="^" z3 = rez43+imz3 endif elseif @moderi3 == "-" if @opri3=="+" z3 = rez03-imz3 elseif @opri3=="-" z3 = rez13-imz3 elseif @opri3=="*" z3 = rez23-imz3 elseif @opri3=="/" z3 = rez33-imz3 elseif @opri3=="^" z3 = rez43-imz3 endif elseif @moderi3 == "invert-" if @opri3=="+" z3 = imz3-rez03 elseif @opri3=="-" z3 = imz3-rez13 elseif @opri3=="*" z3 = imz3-rez23 elseif @opri3=="/" z3 = imz3-rez33 elseif @opri3=="^" z3 = imz3-rez43 endif elseif @moderi3 == "*" if @opri3=="+" z3 = rez03*imz3 elseif @opri3=="-" z3 = rez13*imz3 elseif @opri3=="*" z3 = rez23*imz3 elseif @opri3=="/" z3 = rez33*imz3 elseif @opri3=="^" z3 = rez43*imz3 endif elseif @moderi3 == "/" if @opri3=="+" z3 = rez03/imz3 elseif @opri3=="-" z3 = rez13/imz3 elseif @opri3=="*" z3 = rez23/imz3 elseif @opri3=="/" z3 = rez33/imz3 elseif @opri3=="^" z3 = rez43/imz3 endif elseif @moderi3 == "invert/" if @opri3=="+" z3 = imz3/rez03 elseif @opri3=="-" z3 = imz3/rez13 elseif @opri3=="*" z3 = imz3/rez23 elseif @opri3=="/" z3 = imz3/rez33 elseif @opri3=="^" z3 = imz3/rez43 endif elseif @moderi3 == "^" if @opri3=="+" z3 = rez03^imz3 elseif @opri3=="-" z3 = rez13^imz3 elseif @opri3=="*" z3 = rez23^imz3 elseif @opri3=="/" z3 = rez33^imz3 elseif @opri3=="^" z3 = rez43^imz3 endif elseif @moderi3 == "invert^" if @opri3=="+" z3 = imz3^rez03 elseif @opri3=="-" z3 = imz3^rez13 elseif @opri3=="*" z3 = imz3^rez23 elseif @opri3=="/" z3 = imz3^rez33 elseif @opri3=="^" z3 = imz3^rez43 endif endif ; Process Z3 by a C variable if @act3 == "none" z3a = z3 elseif @act3 == "+" z3a = z3 + @fnact3(c-@act13)^@act23 elseif @act3 == "-" z3a = z3 - @fnact3(c-@act13)^@act23 elseif @act3 == "invert-" z3a = @fnact3(c-@act13)^@act23 - z3 elseif @act3 == "*" z3a = z3 * @fnact3(c-@act13)^@act23 elseif @act3 == "/" z3a = z3 / @fnact3(c-@act13)^@act23 elseif @act3 == "invert/" z3a = @fnact3(c-@act13)^@act23 / z3 elseif @act3 == "^" z3a = z3 ^ @fnact3(c-@act13)^@act23 elseif @act3 == "invert^" z3a = @fnact3(c-@act13)^@act23 ^ z3 endif ; Decide the positions of the three Z blocks if @change == "Z1|Z2|Z3" if @pz1 == "+" x = z1a+z2 elseif @pz1 == "-" x = z1a-z2 elseif @pz1 == "invert-" x = z2-z1a elseif @pz1 == "*" x = z1a*z2 elseif @pz1 == "/" x = z1a/z2 elseif @pz1 == "invert/" x = z2/z1a elseif @pz1 == "^" x = z1a^z2 elseif @pz1 == "invert^" x = z2^z1a endif if @op5 == "+" z5 = @fn5(x)+z3a elseif @op5 == "-" z5 = @fn5(x)-z3a elseif @op5 == "invert-" z5 = z3a-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z3a elseif @op5 == "/" z5 = @fn5(x)/z3a elseif @op5 == "invert/" z5 = z3a/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z3a elseif @op5 == "invert^" z5 = z3a^@fn5(x) endif elseif @change == "Z1|Z3|Z2" if @pz1 == "+" x = z1a+z3a elseif @pz1 == "-" x = z1a-z3a elseif @pz1 == "invert-" x = z3a-z1a elseif @pz1 == "*" x = z1a*z3a elseif @pz1 == "/" x = z1a/z3a elseif @pz1 == "invert/" x = z3a/z1a elseif @pz1 == "^" x = z1a^z3a elseif @pz1 == "invert^" x = z3a^z1a endif if @op5 == "+" z5 = @fn5(x)+z2 elseif @op5 == "-" z5 = @fn5(x)-z2 elseif @op5 == "invert-" z5 = z2-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z2 elseif @op5 == "/" z5 = @fn5(x)/z2 elseif @op5 == "invert/" z5 = z2/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z2 elseif @op5 == "invert^" z5 = z2^@fn5(x) endif endif ; Select the Z and C modes for Z4 section if @xz4 == "z" a4 = z elseif @xz4 == "|z|" a4 = |z| elseif @xz4 == "atan2(z)" a4 = atan2(z) elseif @xz4 == "real(z)" a4 = real(z) elseif @xz4 == "imag(z)" a4 = imag(z) endif if @xc4 == "c" c4 = c elseif @xc4 == "|c|" c4 = |c| elseif @xc4 == "atan2(c)" c4 = atan2(c) elseif @xc4 == "real(c)" c4 = real(c) elseif @xc4 == "imag(c)" c4 = imag(c) endif ; Define the Z4 variable if @op4 == "+" z4 = @fn4a(a4-@z4)/@zm4+@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "-" z4 = @fn4a(a4-@z4)/@zm4-@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert-" z4 = @fn4b((c4-@c4)*@cm4)^@ec4-@fn4a(a4-@z4)*@zm4 elseif @op4 == "*" z4 = @fn4a(a4-@z4)/@zm4*@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "/" z4 = @fn4a(a4-@z4)/@zm4/@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert/" z4 = @fn4b((c4-@c4)*@cm4)^@ec4/@fn4a(a4-@z4)*@zm4 elseif @op4 == "^" z4 = @fn4a(a4-@z4)/@zm4^@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert^" z4 = @fn4b((c4-@c4)*@cm4)^@ec4^@fn4a(a4-@z4)*@zm4 endif ; Z4 section [operator] Z5 section--final definition of Z if @final == "+" z = z5+z4 elseif @final == "-" z = z5-z4 elseif @final == "invert -" z = z4-z5 elseif @final == "*" z = z4*z5 endif bailout: |z|<=@bailout default: title = "Suite: Mixolydia" maxiter = 500 periodicity = 0 param version caption = "Version" default = 110 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Z1 Section (R/I)" endheading param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z1" endparam param moderi1 caption = "Z1 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z1 are combined" endparam param opri1 caption = "Z1 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z1 operates" endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = @np == true endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = @np == true endparam float param riz1 caption = "Re(Z1) Param 2" default = 0 visible = @np == true endparam float param imz1 caption = "Im(Z1) Param 2" default = 0 visible = @np == true endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = @np == true endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = @np == true endparam func fna caption = "Re(Z1) Function" default = cos() endfunc func fnb caption = "Im(Z1) Function" default = cos() endfunc heading caption = "" endheading param act caption = "Z1 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z1 variable by a C expression" endparam func fnact caption = "Z1 Accent Function" default = ident () visible = @act !=0 endfunc complex param act1 caption = "Z1 Accent P1" default = (0,0) visible = @np == true && @act != 0 endparam complex param act2 caption = "Z1 Accent P2" default = (1,0) visible = @np == true && @act != 0 endparam heading caption = "Z2 Section" endheading param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np == true endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np == true endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np == true endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np == true endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np == true endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section (R/I)" endheading param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z3" endparam param moderi3 caption = "Z3 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z3 are combined" endparam param opri3 caption = "Z3 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z3 operates" endparam complex param priz3 caption = "Re(Z3) Param 1" default = (0,1) visible = @np == true endparam complex param pimz3 caption = "Im(Z3) Param 1" default = (0,1) visible = @np == true endparam float param riz3 caption = "Re(Z3) Param 2" default = 0 visible = @np == true endparam float param imzp3 caption = "Im(Z3) Param 2" default = 0 endparam complex param rzm3 caption = "Re(Z3) Param 3" default = (1,0) visible = @np == true endparam complex param izm3 caption = "Im(Z3) Param 3" default = (1,0) visible = @np == true endparam func fna3 caption = "Re(Z3) Function" default = cos() endfunc func fnb3 caption = "Im(Z3) Function" default = cos() endfunc heading caption = "" endheading param act3 caption = "Z3 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z3 variable by a C expression" endparam func fnact3 caption = "Z3 Accent Function" default = ident () visible = @act3 !=0 endfunc complex param act13 caption = "Z3 Accent P1" default = (0,0) visible = @np == true && @act3 != 0 endparam complex param act23 caption = "Z3 Accent P2" default = (1,0) visible = @np == true && @act3 != 0 endparam heading caption = "Z4 Parameters" endheading param xz4 caption = "Z4 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z4 section" endparam param xc4 caption = "Z4 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z4 section" endparam param op4 caption = "Z4 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 3 hint = "Determines how the Z and C parts of Z4 interact" endparam complex param z4 caption = "Z4 Param 1" default = (0,0) visible = @np == true endparam complex param zm4 caption = "Z4 Param 2" default = (1,0) visible = @np == true endparam complex param c4 caption = "Z4 Param 3" default = (0,0) visible = @np == true endparam complex param cm4 caption = "Z4 Param 4" default = (1,0) visible = @np == true endparam complex param ec4 caption = "Z4 Param 5" default = (1,0) visible = @np == true endparam func fn4a caption = "Z4 Function Z" default = ident() endfunc func fn4b caption = "Z4 Function C" default = ident() endfunc heading caption = "Final" endheading param change caption = "Section Order" enum = "Z1|Z2|Z3""Z1|Z3|Z2" default = 0 endparam param pz1 caption = "1st Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines the operator at work between the \ first two sections as shown in 'Section Order'" endparam param op5 caption = "2nd Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines the operator at work between the \ last two sections as shown in 'Section Order'" endparam param final caption = "Final Operator" enum = "+""-""invert -""*" default = 0 hint = "Determines the final interaction of the combined Z sections" endparam func fn5 caption = "Final function" default = ident() endfunc switch: type = "SuiteMixolydia" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc act = @act fnact = @fnact act1 = @act1 act2 = @act2 moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 rzm1 = @rzm1 izm1 = @izm1 fna = @fna fnb = @fnb xz1 = @xz1 op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b act3 = @act3 fnact3 = @fnact3 act13 = @act13 act23 = @act23 moderi3 = @moderi3 opri3 = @opri3 priz3 = @priz3 pimz3 = @pimz3 riz3 = @riz3 imzp3 = @imzp3 rzm3 = @rzm3 izm3 = @izm3 fna3 = @fna3 fnb3 = @fnb3 xz3 = @xz3 op5 = @op5 fn5 = @fn5 change = @change pz1 = @pz1 final = @final op4 = @op4 xz4 = @xz4 xc4 = @xc4 z4 = @z4 zm4 = @zm4 c4 = @c4 cm4 = @cm4 ec4 = @ec4 fn4a = @fn4a fn4b = @fn4b mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } SuiteIonia { ; This formula redefines the Z variable a number of ; times in the loop, and combines the result in ; different selectable ways with selectable functions ; and params. ; ; Ionia has four Z sections which are combined at the ; end of the loop. Two of these (Z1 & Z3) have Z split ; into real and imaginary components which can be combined ; in different ways to define the final variable of those ; sections. ; ; Z1 (R/I) feeds Z3 (R/I), Z3 feeds Z2. ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because of the complexity of the loop calculation, this ; formula can be quite slow in some modes. ; ; SWITCH HINT: Because in some R/I modes the switch action ; takes place away from the center you might find it useful ; to set the "Switch Scale" param to 0.5 or so in those cases. ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.1 (fixed param visibility) init: z = @startseed complex z1 = (0,0) complex z1a = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z3a = (0,0) complex z4 = (0,0) complex z5 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex a4 = (0,0) complex c2 = (0,0) complex c4 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) complex imzp3 = @imzp3*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Select the mode for Z in the Z1 section (R/I) if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif ; Combine the Real and Imaginary Z components of Z1 rez0 = (@fna(real(a1-@riz1)*@rzm1)+@priz1) rez1 = (@fna(real(a1-@riz1)*@rzm1)-@priz1) rez2 = (@fna(real(a1-@riz1)*@rzm1)*@priz1) rez3 = (@fna(real(a1-@riz1)*@rzm1)/@priz1) rez4 = (@fna(real(a1-@riz1)*@rzm1)^@priz1) imz = (@fnb(imag(a1-imz1)*@izm1)+@pimz1) if @moderi1 == "+"; R/I combination Z1 if @opri1=="+"; Z1 R/I param operator z1 = rez0 + imz elseif @opri1=="-" z1 = rez1 + imz elseif @opri1=="*" z1 = rez2 + imz elseif @opri1=="/" z1 = rez3 + imz elseif @opri1=="^" z1 = rez4+imz endif elseif @moderi1 == "-" if @opri1=="+" z1 = rez0-imz elseif @opri1=="-" z1 = rez1-imz elseif @opri1=="*" z1 = rez2-imz elseif @opri1=="/" z1 = rez3-imz elseif @opri1=="^" z1 = rez4-imz endif elseif @moderi1 == "invert-" if @opri1=="+" z1 = imz-rez0 elseif @opri1=="-" z1 = imz-rez1 elseif @opri1=="*" z1 = imz-rez2 elseif @opri1=="/" z1 = imz-rez3 elseif @opri1=="^" z1 = imz-rez4 endif elseif @moderi1 == "*" if @opri1=="+" z1 = rez0*imz elseif @opri1=="-" z1 = rez1*imz elseif @opri1=="*" z1 = rez2*imz elseif @opri1=="/" z1 = rez3*imz elseif @opri1=="^" z1 = rez4*imz endif elseif @moderi1 == "/" if @opri1=="+" z1 = rez0/imz elseif @opri1=="-" z1 = rez1/imz elseif @opri1=="*" z1 = rez2/imz elseif @opri1=="/" z1 = rez3/imz elseif @opri1=="^" z1 = rez4/imz endif elseif @moderi1 == "invert/" if @opri1=="+" z1 = imz/rez0 elseif @opri1=="-" z1 = imz/rez1 elseif @opri1=="*" z1 = imz/rez2 elseif @opri1=="/" z1 = imz/rez3 elseif @opri1=="^" z1 = imz/rez4 endif elseif @moderi1 == "^" if @opri1=="+" z1 = rez0^imz elseif @opri1=="-" z1 = rez1^imz elseif @opri1=="*" z1 = rez2^imz elseif @opri1=="/" z1 = rez3^imz elseif @opri1=="^" z1 = rez4^imz endif elseif @moderi1 == "invert^" if @opri1=="+" z1 = imz^rez0 elseif @opri1=="-" z1 = imz^rez1 elseif @opri1=="*" z1 = imz^rez2 elseif @opri1=="/" z1 = imz^rez3 elseif @opri1=="^" z1 = imz^rez4 endif endif ; Process Z1 by a C variable if @act == "none" z1a = z1 elseif @act == "+" z1a = z1 + @fnact(c-@act1)^@act2 elseif @act == "-" z1a = z1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" z1a = @fnact(c-@act1)^@act2 - z1 elseif @act == "*" z1a = z1 * @fnact(c-@act1)^@act2 elseif @act == "/" z1a = z1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" z1a = @fnact(c-@act1)^@act2 / z1 elseif @act == "^" z1a = z1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" z1a = @fnact(c-@act1)^@act2 ^ z1 endif ; Select the Z and C variable modes for the Z2 section if @xz2 == "z" a2 = z3a elseif @xz2 == "|z|" a2 = |z3a| elseif @xz2 == "atan2(z)" a2 = atan2(z3a) elseif @xz2 == "real(z)" a2 = real(z3a) elseif @xz2 == "imag(z)" a2 = imag(z3a) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable if @op2 == "+" z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Select the Z mode for Z3 section (R/I) if @xz3 == "z" a3 = z1a elseif @xz3 == "|z|" a3 = |z1a| elseif @xz3 == "atan2(z)" a3 = atan2(z1a) elseif @xz3 == "real(z)" a3 = real(z1a) elseif @xz3 == "imag(z)" a3 = imag(z1a) endif ; Combine the Real and Imaginary Z components of Z3 rez03 = (@fna3(real(a3-@riz3)*@rzm3)+@priz3) rez13 = (@fna3(real(a3-@riz3)*@rzm3)-@priz3) rez23 = (@fna3(real(a3-@riz3)*@rzm3)*@priz3) rez33 = (@fna3(real(a3-@riz3)*@rzm3)/@priz3) rez43 = (@fna3(real(a3-@riz3)*@rzm3)^@priz3) imz3 = (@fnb3(imag(a3-imzp3)*@izm3)+@pimz3) if @moderi3 == "+"; R/I operator Z3 if @opri3=="+"; Z3 param operator z3 = rez03+imz3 elseif @opri3=="-" z3 = rez13+imz3 elseif @opri3=="*" z3 = rez23+imz3 elseif @opri3=="/" z3 = rez33+imz3 elseif @opri3=="^" z3 = rez43+imz3 endif elseif @moderi3 == "-" if @opri3=="+" z3 = rez03-imz3 elseif @opri3=="-" z3 = rez13-imz3 elseif @opri3=="*" z3 = rez23-imz3 elseif @opri3=="/" z3 = rez33-imz3 elseif @opri3=="^" z3 = rez43-imz3 endif elseif @moderi3 == "invert-" if @opri3=="+" z3 = imz3-rez03 elseif @opri3=="-" z3 = imz3-rez13 elseif @opri3=="*" z3 = imz3-rez23 elseif @opri3=="/" z3 = imz3-rez33 elseif @opri3=="^" z3 = imz3-rez43 endif elseif @moderi3 == "*" if @opri3=="+" z3 = rez03*imz3 elseif @opri3=="-" z3 = rez13*imz3 elseif @opri3=="*" z3 = rez23*imz3 elseif @opri3=="/" z3 = rez33*imz3 elseif @opri3=="^" z3 = rez43*imz3 endif elseif @moderi3 == "/" if @opri3=="+" z3 = rez03/imz3 elseif @opri3=="-" z3 = rez13/imz3 elseif @opri3=="*" z3 = rez23/imz3 elseif @opri3=="/" z3 = rez33/imz3 elseif @opri3=="^" z3 = rez43/imz3 endif elseif @moderi3 == "invert/" if @opri3=="+" z3 = imz3/rez03 elseif @opri3=="-" z3 = imz3/rez13 elseif @opri3=="*" z3 = imz3/rez23 elseif @opri3=="/" z3 = imz3/rez33 elseif @opri3=="^" z3 = imz3/rez43 endif elseif @moderi3 == "^" if @opri3=="+" z3 = rez03^imz3 elseif @opri3=="-" z3 = rez13^imz3 elseif @opri3=="*" z3 = rez23^imz3 elseif @opri3=="/" z3 = rez33^imz3 elseif @opri3=="^" z3 = rez43^imz3 endif elseif @moderi3 == "invert^" if @opri3=="+" z3 = imz3^rez03 elseif @opri3=="-" z3 = imz3^rez13 elseif @opri3=="*" z3 = imz3^rez23 elseif @opri3=="/" z3 = imz3^rez33 elseif @opri3=="^" z3 = imz3^rez43 endif endif ; Process Z3 by a C variable if @act3 == "none" z3a = z3 elseif @act3 == "+" z3a = z3 + @fnact3(c-@act13)^@act23 elseif @act3 == "-" z3a = z3 - @fnact3(c-@act13)^@act23 elseif @act3 == "invert-" z3a = @fnact3(c-@act13)^@act23 - z3 elseif @act3 == "*" z3a = z3 * @fnact3(c-@act13)^@act23 elseif @act3 == "/" z3a = z3 / @fnact3(c-@act13)^@act23 elseif @act3 == "invert/" z3a = @fnact3(c-@act13)^@act23 / z3 elseif @act3 == "^" z3a = z3 ^ @fnact3(c-@act13)^@act23 elseif @act3 == "invert^" z3a = @fnact3(c-@act13)^@act23 ^ z3 endif ; Decide the positions of the three Z blocks if @change == "Z1|Z2|Z3" if @pz1 == "+" x = z1a+z2 elseif @pz1 == "-" x = z1a-z2 elseif @pz1 == "invert-" x = z2-z1a elseif @pz1 == "*" x = z1a*z2 elseif @pz1 == "/" x = z1a/z2 elseif @pz1 == "invert/" x = z2/z1a elseif @pz1 == "^" x = z1a^z2 elseif @pz1 == "invert^" x = z2^z1a endif if @op5 == "+" z5 = @fn5(x)+z3a elseif @op5 == "-" z5 = @fn5(x)-z3a elseif @op5 == "invert-" z5 = z3a-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z3a elseif @op5 == "/" z5 = @fn5(x)/z3a elseif @op5 == "invert/" z5 = z3a/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z3a elseif @op5 == "invert^" z5 = z3a^@fn5(x) endif elseif @change == "Z1|Z3|Z2" if @pz1 == "+" x = z1a+z3a elseif @pz1 == "-" x = z1a-z3a elseif @pz1 == "invert-" x = z3a-z1a elseif @pz1 == "*" x = z1a*z3a elseif @pz1 == "/" x = z1a/z3a elseif @pz1 == "invert/" x = z3a/z1a elseif @pz1 == "^" x = z1a^z3a elseif @pz1 == "invert^" x = z3a^z1a endif if @op5 == "+" z5 = @fn5(x)+z2 elseif @op5 == "-" z5 = @fn5(x)-z2 elseif @op5 == "invert-" z5 = z2-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z2 elseif @op5 == "/" z5 = @fn5(x)/z2 elseif @op5 == "invert/" z5 = z2/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z2 elseif @op5 == "invert^" z5 = z2^@fn5(x) endif endif ; Select the Z and C modes for Z4 section if @xz4 == "z" a4 = z elseif @xz4 == "|z|" a4 = |z| elseif @xz4 == "atan2(z)" a4 = atan2(z) elseif @xz4 == "real(z)" a4 = real(z) elseif @xz4 == "imag(z)" a4 = imag(z) endif if @xc4 == "c" c4 = c elseif @xc4 == "|c|" c4 = |c| elseif @xc4 == "atan2(c)" c4 = atan2(c) elseif @xc4 == "real(c)" c4 = real(c) elseif @xc4 == "imag(c)" c4 = imag(c) endif ; Define the Z4 variable if @op4 == "+" z4 = @fn4a(a4-@z4)/@zm4+@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "-" z4 = @fn4a(a4-@z4)/@zm4-@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert-" z4 = @fn4b((c4-@c4)*@cm4)^@ec4-@fn4a(a4-@z4)*@zm4 elseif @op4 == "*" z4 = @fn4a(a4-@z4)/@zm4*@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "/" z4 = @fn4a(a4-@z4)/@zm4/@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert/" z4 = @fn4b((c4-@c4)*@cm4)^@ec4/@fn4a(a4-@z4)*@zm4 elseif @op4 == "^" z4 = @fn4a(a4-@z4)/@zm4^@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert^" z4 = @fn4b((c4-@c4)*@cm4)^@ec4^@fn4a(a4-@z4)*@zm4 endif ; Z4 section [operator] Z5 section--final definition of Z if @final == "+" z = z5+z4 elseif @final == "-" z = z5-z4 elseif @final == "invert -" z = z4-z5 elseif @final == "*" z = z4*z5 endif bailout: |z|<=@bailout default: title = "Suite: Ionia" maxiter = 500 periodicity = 0 param version caption = "Version" default = 110 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Z1 Section (R/I)" endheading param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z1" endparam param moderi1 caption = "Z1 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z1 are combined" endparam param opri1 caption = "Z1 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z1 operates" endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = @np == true endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = @np == true endparam float param riz1 caption = "Re(Z1) Param 2" default = 0 visible = @np == true endparam float param imz1 caption = "Im(Z1) Param 2" default = 0 visible = @np == true endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = @np == true endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = @np == true endparam func fna caption = "Re(Z1) Function" default = cos() endfunc func fnb caption = "Im(Z1) Function" default = cos() endfunc heading caption = "" endheading param act caption = "Z1 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z1 variable by a C expression" endparam func fnact caption = "Z1 Accent Function" default = ident () visible = @act !=0 endfunc complex param act1 caption = "Z1 Accent P1" default = (0,0) visible = @np == true && @act != 0 endparam complex param act2 caption = "Z1 Accent P2" default = (1,0) visible = @np == true && @act != 0 endparam heading caption = "Z2 Section" endheading param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np == true endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np == true endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np == true endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np == true endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np == true endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section (R/I)" endheading param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z3" endparam param moderi3 caption = "Z3 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z3 are combined" endparam param opri3 caption = "Z3 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z3 operates" endparam complex param priz3 caption = "Re(Z3) Param 1" default = (0,1) visible = @np == true endparam complex param pimz3 caption = "Im(Z3) Param 1" default = (0,1) visible = @np == true endparam float param riz3 caption = "Re(Z3) Param 2" default = 0 visible = @np == true endparam float param imzp3 caption = "Im(Z3) Param 2" default = 0 endparam complex param rzm3 caption = "Re(Z3) Param 3" default = (1,0) visible = @np == true endparam complex param izm3 caption = "Im(Z3) Param 3" default = (1,0) visible = @np == true endparam func fna3 caption = "Re(Z3) Function" default = cos() endfunc func fnb3 caption = "Im(Z3) Function" default = cos() endfunc heading caption = "" endheading param act3 caption = "Z3 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z3 variable by a C expression" endparam func fnact3 caption = "Z3 Accent Function" default = ident () visible = @act3 !=0 endfunc complex param act13 caption = "Z3 Accent P1" default = (0,0) visible = @np == true && @act3 != 0 endparam complex param act23 caption = "Z3 Accent P2" default = (1,0) visible = @np == true && @act3 != 0 endparam heading caption = "Z4 Parameters" endheading param xz4 caption = "Z4 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z4 section" endparam param xc4 caption = "Z4 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z4 section" endparam param op4 caption = "Z4 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 3 hint = "Determines how the Z and C parts of Z4 interact" endparam complex param z4 caption = "Z4 Param 1" default = (0,0) visible = @np == true endparam complex param zm4 caption = "Z4 Param 2" default = (1,0) visible = @np == true endparam complex param c4 caption = "Z4 Param 3" default = (0,0) visible = @np == true endparam complex param cm4 caption = "Z4 Param 4" default = (1,0) visible = @np == true endparam complex param ec4 caption = "Z4 Param 5" default = (1,0) visible = @np == true endparam func fn4a caption = "Z4 Function Z" default = ident() endfunc func fn4b caption = "Z4 Function C" default = ident() endfunc heading caption = "Final" endheading param change caption = "Section Order" enum = "Z1|Z2|Z3""Z1|Z3|Z2" default = 0 endparam param pz1 caption = "1st Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines the operator at work between the \ first two sections as shown in 'Section Order'" endparam param op5 caption = "2nd Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines the operator at work between the \ last two sections as shown in 'Section Order'" endparam param final caption = "Final Operator" enum = "+""-""invert -""*" default = 0 hint = "Determines the final interaction of the combined Z sections" endparam func fn5 caption = "Final function" default = ident() endfunc switch: type = "SuiteIonia" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc act = @act fnact = @fnact act1 = @act1 act2 = @act2 moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 rzm1 = @rzm1 izm1 = @izm1 fna = @fna fnb = @fnb xz1 = @xz1 op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b act3 = @act3 fnact3 = @fnact3 act13 = @act13 act23 = @act23 moderi3 = @moderi3 opri3 = @opri3 priz3 = @priz3 pimz3 = @pimz3 riz3 = @riz3 imzp3 = @imzp3 rzm3 = @rzm3 izm3 = @izm3 fna3 = @fna3 fnb3 = @fnb3 xz3 = @xz3 op5 = @op5 fn5 = @fn5 change = @change pz1 = @pz1 final = @final op4 = @op4 xz4 = @xz4 xc4 = @xc4 z4 = @z4 zm4 = @zm4 c4 = @c4 cm4 = @cm4 ec4 = @ec4 fn4a = @fn4a fn4b = @fn4b mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } SuitePhrygia { ; This formula redefines the Z variable a number of ; times in the loop, and combines the result in ; different selectable ways with selectable functions ; and params. ; ; Phrygia has four Z sections which are combined at the ; end of the loop. Two of these (Z1 & Z3)have Z split into ; real and imaginary components which can be combined ; in different ways to define the final variable of those ; sections. ; ; Z2 feeds Z3(R/I) ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because of the complexity of the loop calculation, this ; formula can be quite slow in some modes. ; ; SWITCH HINT: Because in some R/I modes the switch action ; takes place away from the center you might find it useful ; to set the "Switch Scale" param to 0.5 or so in those cases. ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.1 (fixed param visibility) init: z = @startseed complex z1 = (0,0) complex z1a = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z3a = (0,0) complex z4 = (0,0) complex z5 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex a4 = (0,0) complex c2 = (0,0) complex c4 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) complex imzp3 = @imzp3*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Select the mode for Z in the Z1 section (R/I) if @xz1 == "z" a1 = z4 elseif @xz1 == "|z|" a1 = |z4| elseif @xz1 == "atan2(z)" a1 = atan2(z4) elseif @xz1 == "real(z)" a1 = real(z4) elseif @xz1 == "imag(z)" a1 = imag(z4) endif ; Combine the Real and Imaginary Z components of Z1 rez0 = (@fna(real(a1-@riz1)*@rzm1)+@priz1) rez1 = (@fna(real(a1-@riz1)*@rzm1)-@priz1) rez2 = (@fna(real(a1-@riz1)*@rzm1)*@priz1) rez3 = (@fna(real(a1-@riz1)*@rzm1)/@priz1) rez4 = (@fna(real(a1-@riz1)*@rzm1)^@priz1) imz = (@fnb(imag(a1-imz1)*@izm1)+@pimz1) if @moderi1 == "+"; R/I combination Z1 if @opri1=="+"; Z1 R/I param operator z1 = rez0 + imz elseif @opri1=="-" z1 = rez1 + imz elseif @opri1=="*" z1 = rez2 + imz elseif @opri1=="/" z1 = rez3 + imz elseif @opri1=="^" z1 = rez4+imz endif elseif @moderi1 == "-" if @opri1=="+" z1 = rez0-imz elseif @opri1=="-" z1 = rez1-imz elseif @opri1=="*" z1 = rez2-imz elseif @opri1=="/" z1 = rez3-imz elseif @opri1=="^" z1 = rez4-imz endif elseif @moderi1 == "invert-" if @opri1=="+" z1 = imz-rez0 elseif @opri1=="-" z1 = imz-rez1 elseif @opri1=="*" z1 = imz-rez2 elseif @opri1=="/" z1 = imz-rez3 elseif @opri1=="^" z1 = imz-rez4 endif elseif @moderi1 == "*" if @opri1=="+" z1 = rez0*imz elseif @opri1=="-" z1 = rez1*imz elseif @opri1=="*" z1 = rez2*imz elseif @opri1=="/" z1 = rez3*imz elseif @opri1=="^" z1 = rez4*imz endif elseif @moderi1 == "/" if @opri1=="+" z1 = rez0/imz elseif @opri1=="-" z1 = rez1/imz elseif @opri1=="*" z1 = rez2/imz elseif @opri1=="/" z1 = rez3/imz elseif @opri1=="^" z1 = rez4/imz endif elseif @moderi1 == "invert/" if @opri1=="+" z1 = imz/rez0 elseif @opri1=="-" z1 = imz/rez1 elseif @opri1=="*" z1 = imz/rez2 elseif @opri1=="/" z1 = imz/rez3 elseif @opri1=="^" z1 = imz/rez4 endif elseif @moderi1 == "^" if @opri1=="+" z1 = rez0^imz elseif @opri1=="-" z1 = rez1^imz elseif @opri1=="*" z1 = rez2^imz elseif @opri1=="/" z1 = rez3^imz elseif @opri1=="^" z1 = rez4^imz endif elseif @moderi1 == "invert^" if @opri1=="+" z1 = imz^rez0 elseif @opri1=="-" z1 = imz^rez1 elseif @opri1=="*" z1 = imz^rez2 elseif @opri1=="/" z1 = imz^rez3 elseif @opri1=="^" z1 = imz^rez4 endif endif ; Process Z1 by a C variable if @act == "none" z1a = z1 elseif @act == "+" z1a = z1 + @fnact(c-@act1)^@act2 elseif @act == "-" z1a = z1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" z1a = @fnact(c-@act1)^@act2 - z1 elseif @act == "*" z1a = z1 * @fnact(c-@act1)^@act2 elseif @act == "/" z1a = z1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" z1a = @fnact(c-@act1)^@act2 / z1 elseif @act == "^" z1a = z1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" z1a = @fnact(c-@act1)^@act2 ^ z1 endif ; Select the Z and C variable modes for the Z2 section if @xz2 == "z" a2 = z elseif @xz2 == "|z|" a2 = |z| elseif @xz2 == "atan2(z)" a2 = atan2(z) elseif @xz2 == "real(z)" a2 = real(z) elseif @xz2 == "imag(z)" a2 = imag(z) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable if @op2 == "+" z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Select the Z mode for Z3 section (R/I) if @xz3 == "z" a3 = z2 elseif @xz3 == "|z|" a3 = |z2| elseif @xz3 == "atan2(z)" a3 = atan2(z2) elseif @xz3 == "real(z)" a3 = real(z2) elseif @xz3 == "imag(z)" a3 = imag(z2) endif ; Combine the Real and Imaginary Z components of Z3 rez03 = (@fna3(real(a3-@riz3)*@rzm3)+@priz3) rez13 = (@fna3(real(a3-@riz3)*@rzm3)-@priz3) rez23 = (@fna3(real(a3-@riz3)*@rzm3)*@priz3) rez33 = (@fna3(real(a3-@riz3)*@rzm3)/@priz3) rez43 = (@fna3(real(a3-@riz3)*@rzm3)^@priz3) imz3 = (@fnb3(imag(a3-imzp3)*@izm3)+@pimz3) if @moderi3 == "+"; R/I operator Z3 if @opri3=="+"; Z3 param operator z3 = rez03+imz3 elseif @opri3=="-" z3 = rez13+imz3 elseif @opri3=="*" z3 = rez23+imz3 elseif @opri3=="/" z3 = rez33+imz3 elseif @opri3=="^" z3 = rez43+imz3 endif elseif @moderi3 == "-" if @opri3=="+" z3 = rez03-imz3 elseif @opri3=="-" z3 = rez13-imz3 elseif @opri3=="*" z3 = rez23-imz3 elseif @opri3=="/" z3 = rez33-imz3 elseif @opri3=="^" z3 = rez43-imz3 endif elseif @moderi3 == "invert-" if @opri3=="+" z3 = imz3-rez03 elseif @opri3=="-" z3 = imz3-rez13 elseif @opri3=="*" z3 = imz3-rez23 elseif @opri3=="/" z3 = imz3-rez33 elseif @opri3=="^" z3 = imz3-rez43 endif elseif @moderi3 == "*" if @opri3=="+" z3 = rez03*imz3 elseif @opri3=="-" z3 = rez13*imz3 elseif @opri3=="*" z3 = rez23*imz3 elseif @opri3=="/" z3 = rez33*imz3 elseif @opri3=="^" z3 = rez43*imz3 endif elseif @moderi3 == "/" if @opri3=="+" z3 = rez03/imz3 elseif @opri3=="-" z3 = rez13/imz3 elseif @opri3=="*" z3 = rez23/imz3 elseif @opri3=="/" z3 = rez33/imz3 elseif @opri3=="^" z3 = rez43/imz3 endif elseif @moderi3 == "invert/" if @opri3=="+" z3 = imz3/rez03 elseif @opri3=="-" z3 = imz3/rez13 elseif @opri3=="*" z3 = imz3/rez23 elseif @opri3=="/" z3 = imz3/rez33 elseif @opri3=="^" z3 = imz3/rez43 endif elseif @moderi3 == "^" if @opri3=="+" z3 = rez03^imz3 elseif @opri3=="-" z3 = rez13^imz3 elseif @opri3=="*" z3 = rez23^imz3 elseif @opri3=="/" z3 = rez33^imz3 elseif @opri3=="^" z3 = rez43^imz3 endif elseif @moderi3 == "invert^" if @opri3=="+" z3 = imz3^rez03 elseif @opri3=="-" z3 = imz3^rez13 elseif @opri3=="*" z3 = imz3^rez23 elseif @opri3=="/" z3 = imz3^rez33 elseif @opri3=="^" z3 = imz3^rez43 endif endif ; Process Z3 by a C variable if @act3 == "none" z3a = z3 elseif @act3 == "+" z3a = z3 + @fnact3(c-@act13)^@act23 elseif @act3 == "-" z3a = z3 - @fnact3(c-@act13)^@act23 elseif @act3 == "invert-" z3a = @fnact3(c-@act13)^@act23 - z3 elseif @act3 == "*" z3a = z3 * @fnact3(c-@act13)^@act23 elseif @act3 == "/" z3a = z3 / @fnact3(c-@act13)^@act23 elseif @act3 == "invert/" z3a = @fnact3(c-@act13)^@act23 / z3 elseif @act3 == "^" z3a = z3 ^ @fnact3(c-@act13)^@act23 elseif @act3 == "invert^" z3a = @fnact3(c-@act13)^@act23 ^ z3 endif ; Decide the positions of the three Z blocks if @change == "Z1|Z2|Z3" if @pz1 == "+" x = z1a+z2 elseif @pz1 == "-" x = z1a-z2 elseif @pz1 == "invert-" x = z2-z1a elseif @pz1 == "*" x = z1a*z2 elseif @pz1 == "/" x = z1a/z2 elseif @pz1 == "invert/" x = z2/z1a elseif @pz1 == "^" x = z1a^z2 elseif @pz1 == "invert^" x = z2^z1a endif if @op5 == "+" z5 = @fn5(x)+z3a elseif @op5 == "-" z5 = @fn5(x)-z3a elseif @op5 == "invert-" z5 = z3a-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z3a elseif @op5 == "/" z5 = @fn5(x)/z3a elseif @op5 == "invert/" z5 = z3a/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z3a elseif @op5 == "invert^" z5 = z3a^@fn5(x) endif elseif @change == "Z1|Z3|Z2" if @pz1 == "+" x = z1a+z3a elseif @pz1 == "-" x = z1a-z3a elseif @pz1 == "invert-" x = z3a-z1a elseif @pz1 == "*" x = z1a*z3a elseif @pz1 == "/" x = z1a/z3a elseif @pz1 == "invert/" x = z3a/z1a elseif @pz1 == "^" x = z1a^z3a elseif @pz1 == "invert^" x = z3a^z1a endif if @op5 == "+" z5 = @fn5(x)+z2 elseif @op5 == "-" z5 = @fn5(x)-z2 elseif @op5 == "invert-" z5 = z2-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z2 elseif @op5 == "/" z5 = @fn5(x)/z2 elseif @op5 == "invert/" z5 = z2/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z2 elseif @op5 == "invert^" z5 = z2^@fn5(x) endif endif ; Select the Z and C modes for Z4 section if @xz4 == "z" a4 = z elseif @xz4 == "|z|" a4 = |z| elseif @xz4 == "atan2(z)" a4 = atan2(z) elseif @xz4 == "real(z)" a4 = real(z) elseif @xz4 == "imag(z)" a4 = imag(z) endif if @xc4 == "c" c4 = c elseif @xc4 == "|c|" c4 = |c| elseif @xc4 == "atan2(c)" c4 = atan2(c) elseif @xc4 == "real(c)" c4 = real(c) elseif @xc4 == "imag(c)" c4 = imag(c) endif ; Define the Z4 variable if @op4 == "+" z4 = @fn4a(a4-@z4)/@zm4+@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "-" z4 = @fn4a(a4-@z4)/@zm4-@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert-" z4 = @fn4b((c4-@c4)*@cm4)^@ec4-@fn4a(a4-@z4)*@zm4 elseif @op4 == "*" z4 = @fn4a(a4-@z4)/@zm4*@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "/" z4 = @fn4a(a4-@z4)/@zm4/@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert/" z4 = @fn4b((c4-@c4)*@cm4)^@ec4/@fn4a(a4-@z4)*@zm4 elseif @op4 == "^" z4 = @fn4a(a4-@z4)/@zm4^@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert^" z4 = @fn4b((c4-@c4)*@cm4)^@ec4^@fn4a(a4-@z4)*@zm4 endif ; Z4 section [operator] Z5 section--final definition of Z if @final == "+" z = z5+z4 elseif @final == "-" z = z5-z4 elseif @final == "invert -" z = z4-z5 elseif @final == "*" z = z4*z5 endif bailout: |z|<=@bailout default: title = "Suite: Phrygia" maxiter = 500 periodicity = 0 param version caption = "Version" default = 110 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Z1 Section (R/I)" endheading param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z1" endparam param moderi1 caption = "Z1 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z1 are combined" endparam param opri1 caption = "Z1 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z1 operates" endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = @np == true endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = @np == true endparam float param riz1 caption = "Re(Z1) Param 2" default = 0 visible = @np == true endparam float param imz1 caption = "Im(Z1) Param 2" default = 0 visible = @np == true endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = @np == true endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = @np == true endparam func fna caption = "Re(Z1) Function" default = cos() endfunc func fnb caption = "Im(Z1) Function" default = cos() endfunc heading caption = "" endheading param act caption = "Z1 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z1 variable by a C expression" endparam func fnact caption = "Z1 Accent Function" default = ident () visible = @act !=0 endfunc complex param act1 caption = "Z1 Accent P1" default = (0,0) visible = @np == true && @act != 0 endparam complex param act2 caption = "Z1 Accent P2" default = (1,0) visible = @np == true && @act != 0 endparam heading caption = "Z2 Section" endheading param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np == true endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np == true endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np == true endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np == true endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np == true endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section (R/I)" endheading param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z3" endparam param moderi3 caption = "Z3 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z3 are combined" endparam param opri3 caption = "Z3 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z3 operates" endparam complex param priz3 caption = "Re(Z3) Param 1" default = (0,1) visible = @np == true endparam complex param pimz3 caption = "Im(Z3) Param 1" default = (0,1) visible = @np == true endparam float param riz3 caption = "Re(Z3) Param 2" default = 0 visible = @np == true endparam float param imzp3 caption = "Im(Z3) Param 2" default = 0 endparam complex param rzm3 caption = "Re(Z3) Param 3" default = (1,0) visible = @np == true endparam complex param izm3 caption = "Im(Z3) Param 3" default = (1,0) visible = @np == true endparam func fna3 caption = "Re(Z3) Function" default = cos() endfunc func fnb3 caption = "Im(Z3) Function" default = cos() endfunc heading caption = "" endheading param act3 caption = "Z3 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z3 variable by a C expression" endparam func fnact3 caption = "Z3 Accent Function" default = ident () visible = @act3 !=0 endfunc complex param act13 caption = "Z3 Accent P1" default = (0,0) visible = @np == true && @act3 != 0 endparam complex param act23 caption = "Z3 Accent P2" default = (1,0) visible = @np == true && @act3 != 0 endparam heading caption = "Z4 Parameters" endheading param xz4 caption = "Z4 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z4 section" endparam param xc4 caption = "Z4 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z4 section" endparam param op4 caption = "Z4 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 3 hint = "Determines how the Z and C parts of Z4 interact" endparam complex param z4 caption = "Z4 Param 1" default = (0,0) visible = @np == true endparam complex param zm4 caption = "Z4 Param 2" default = (1,0) visible = @np == true endparam complex param c4 caption = "Z4 Param 3" default = (0,0) visible = @np == true endparam complex param cm4 caption = "Z4 Param 4" default = (1,0) visible = @np == true endparam complex param ec4 caption = "Z4 Param 5" default = (1,0) visible = @np == true endparam func fn4a caption = "Z4 Function Z" default = ident() endfunc func fn4b caption = "Z4 Function C" default = ident() endfunc heading caption = "Final" endheading param change caption = "Section Order" enum = "Z1|Z2|Z3""Z1|Z3|Z2" default = 0 endparam param pz1 caption = "1st Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines the operator at work between the \ first two sections as shown in 'Section Order'" endparam param op5 caption = "2nd Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines the operator at work between the \ last two sections as shown in 'Section Order'" endparam param final caption = "Final Operator" enum = "+""-""invert -""*" default = 0 hint = "Determines the final interaction of the combined Z sections" endparam func fn5 caption = "Final function" default = ident() endfunc switch: type = "SuitePhrygia" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc act = @act fnact = @fnact act1 = @act1 act2 = @act2 moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 rzm1 = @rzm1 izm1 = @izm1 fna = @fna fnb = @fnb xz1 = @xz1 op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b act3 = @act3 fnact3 = @fnact3 act13 = @act13 act23 = @act23 moderi3 = @moderi3 opri3 = @opri3 priz3 = @priz3 pimz3 = @pimz3 riz3 = @riz3 imzp3 = @imzp3 rzm3 = @rzm3 izm3 = @izm3 fna3 = @fna3 fnb3 = @fnb3 xz3 = @xz3 op5 = @op5 fn5 = @fn5 change = @change pz1 = @pz1 final = @final op4 = @op4 xz4 = @xz4 xc4 = @xc4 z4 = @z4 zm4 = @zm4 c4 = @c4 cm4 = @cm4 ec4 = @ec4 fn4a = @fn4a fn4b = @fn4b mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } SuiteLocria { ; This formula redefines the Z variable a number of ; times in the loop, and combines the result in ; different selectable ways with selectable functions ; and params. ; ; Locria has four Z sections which are combined at the ; end of the loop. Two of these (Z1 & Z3) have Z split into ; real and imaginary components which can be combined ; in different ways to define the final variable of those ; sections. ; ; Z3(R/I) feeds Z4 ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because of the complexity of the loop calculation, this ; formula can be quite slow in some modes. ; ; SWITCH HINT: Because in some R/I modes the switch action ; takes place away from the center you might find it useful ; to set the "Switch Scale" param to 0.5 or so in those cases. ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.1 (fixed param visibility) init: z = @startseed complex z1 = (0,0) complex z1a = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z3a = (0,0) complex z4 = (0,0) complex z5 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex a4 = (0,0) complex c2 = (0,0) complex c4 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) complex imzp3 = @imzp3*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Select the mode for Z in the Z1 section (R/I) if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif ; Combine the Real and Imaginary Z components of Z1 rez0 = (@fna(real(a1-@riz1)*@rzm1)+@priz1) rez1 = (@fna(real(a1-@riz1)*@rzm1)-@priz1) rez2 = (@fna(real(a1-@riz1)*@rzm1)*@priz1) rez3 = (@fna(real(a1-@riz1)*@rzm1)/@priz1) rez4 = (@fna(real(a1-@riz1)*@rzm1)^@priz1) imz = (@fnb(imag(a1-imz1)*@izm1)+@pimz1) if @moderi1 == "+"; R/I combination Z1 if @opri1=="+"; Z1 R/I param operator z1 = rez0 + imz elseif @opri1=="-" z1 = rez1 + imz elseif @opri1=="*" z1 = rez2 + imz elseif @opri1=="/" z1 = rez3 + imz elseif @opri1=="^" z1 = rez4+imz endif elseif @moderi1 == "-" if @opri1=="+" z1 = rez0-imz elseif @opri1=="-" z1 = rez1-imz elseif @opri1=="*" z1 = rez2-imz elseif @opri1=="/" z1 = rez3-imz elseif @opri1=="^" z1 = rez4-imz endif elseif @moderi1 == "invert-" if @opri1=="+" z1 = imz-rez0 elseif @opri1=="-" z1 = imz-rez1 elseif @opri1=="*" z1 = imz-rez2 elseif @opri1=="/" z1 = imz-rez3 elseif @opri1=="^" z1 = imz-rez4 endif elseif @moderi1 == "*" if @opri1=="+" z1 = rez0*imz elseif @opri1=="-" z1 = rez1*imz elseif @opri1=="*" z1 = rez2*imz elseif @opri1=="/" z1 = rez3*imz elseif @opri1=="^" z1 = rez4*imz endif elseif @moderi1 == "/" if @opri1=="+" z1 = rez0/imz elseif @opri1=="-" z1 = rez1/imz elseif @opri1=="*" z1 = rez2/imz elseif @opri1=="/" z1 = rez3/imz elseif @opri1=="^" z1 = rez4/imz endif elseif @moderi1 == "invert/" if @opri1=="+" z1 = imz/rez0 elseif @opri1=="-" z1 = imz/rez1 elseif @opri1=="*" z1 = imz/rez2 elseif @opri1=="/" z1 = imz/rez3 elseif @opri1=="^" z1 = imz/rez4 endif elseif @moderi1 == "^" if @opri1=="+" z1 = rez0^imz elseif @opri1=="-" z1 = rez1^imz elseif @opri1=="*" z1 = rez2^imz elseif @opri1=="/" z1 = rez3^imz elseif @opri1=="^" z1 = rez4^imz endif elseif @moderi1 == "invert^" if @opri1=="+" z1 = imz^rez0 elseif @opri1=="-" z1 = imz^rez1 elseif @opri1=="*" z1 = imz^rez2 elseif @opri1=="/" z1 = imz^rez3 elseif @opri1=="^" z1 = imz^rez4 endif endif ; Process Z1 by a C variable if @act == "none" z1a = z1 elseif @act == "+" z1a = z1 + @fnact(c-@act1)^@act2 elseif @act == "-" z1a = z1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" z1a = @fnact(c-@act1)^@act2 - z1 elseif @act == "*" z1a = z1 * @fnact(c-@act1)^@act2 elseif @act == "/" z1a = z1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" z1a = @fnact(c-@act1)^@act2 / z1 elseif @act == "^" z1a = z1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" z1a = @fnact(c-@act1)^@act2 ^ z1 endif ; Select the Z and C variable modes for the Z2 section if @xz2 == "z" a2 = z elseif @xz2 == "|z|" a2 = |z| elseif @xz2 == "atan2(z)" a2 = atan2(z) elseif @xz2 == "real(z)" a2 = real(z) elseif @xz2 == "imag(z)" a2 = imag(z) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable if @op2 == "+" z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Select the Z mode for Z3 section (R/I) if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif ; Combine the Real and Imaginary Z components of Z3 rez03 = (@fna3(real(a3-@riz3)*@rzm3)+@priz3) rez13 = (@fna3(real(a3-@riz3)*@rzm3)-@priz3) rez23 = (@fna3(real(a3-@riz3)*@rzm3)*@priz3) rez33 = (@fna3(real(a3-@riz3)*@rzm3)/@priz3) rez43 = (@fna3(real(a3-@riz3)*@rzm3)^@priz3) imz3 = (@fnb3(imag(a3-imzp3)*@izm3)+@pimz3) if @moderi3 == "+"; R/I operator Z3 if @opri3=="+"; Z3 param operator z3 = rez03+imz3 elseif @opri3=="-" z3 = rez13+imz3 elseif @opri3=="*" z3 = rez23+imz3 elseif @opri3=="/" z3 = rez33+imz3 elseif @opri3=="^" z3 = rez43+imz3 endif elseif @moderi3 == "-" if @opri3=="+" z3 = rez03-imz3 elseif @opri3=="-" z3 = rez13-imz3 elseif @opri3=="*" z3 = rez23-imz3 elseif @opri3=="/" z3 = rez33-imz3 elseif @opri3=="^" z3 = rez43-imz3 endif elseif @moderi3 == "invert-" if @opri3=="+" z3 = imz3-rez03 elseif @opri3=="-" z3 = imz3-rez13 elseif @opri3=="*" z3 = imz3-rez23 elseif @opri3=="/" z3 = imz3-rez33 elseif @opri3=="^" z3 = imz3-rez43 endif elseif @moderi3 == "*" if @opri3=="+" z3 = rez03*imz3 elseif @opri3=="-" z3 = rez13*imz3 elseif @opri3=="*" z3 = rez23*imz3 elseif @opri3=="/" z3 = rez33*imz3 elseif @opri3=="^" z3 = rez43*imz3 endif elseif @moderi3 == "/" if @opri3=="+" z3 = rez03/imz3 elseif @opri3=="-" z3 = rez13/imz3 elseif @opri3=="*" z3 = rez23/imz3 elseif @opri3=="/" z3 = rez33/imz3 elseif @opri3=="^" z3 = rez43/imz3 endif elseif @moderi3 == "invert/" if @opri3=="+" z3 = imz3/rez03 elseif @opri3=="-" z3 = imz3/rez13 elseif @opri3=="*" z3 = imz3/rez23 elseif @opri3=="/" z3 = imz3/rez33 elseif @opri3=="^" z3 = imz3/rez43 endif elseif @moderi3 == "^" if @opri3=="+" z3 = rez03^imz3 elseif @opri3=="-" z3 = rez13^imz3 elseif @opri3=="*" z3 = rez23^imz3 elseif @opri3=="/" z3 = rez33^imz3 elseif @opri3=="^" z3 = rez43^imz3 endif elseif @moderi3 == "invert^" if @opri3=="+" z3 = imz3^rez03 elseif @opri3=="-" z3 = imz3^rez13 elseif @opri3=="*" z3 = imz3^rez23 elseif @opri3=="/" z3 = imz3^rez33 elseif @opri3=="^" z3 = imz3^rez43 endif endif ; Process Z3 by a C variable if @act3 == "none" z3a = z3 elseif @act3 == "+" z3a = z3 + @fnact3(c-@act13)^@act23 elseif @act3 == "-" z3a = z3 - @fnact3(c-@act13)^@act23 elseif @act3 == "invert-" z3a = @fnact3(c-@act13)^@act23 - z3 elseif @act3 == "*" z3a = z3 * @fnact3(c-@act13)^@act23 elseif @act3 == "/" z3a = z3 / @fnact3(c-@act13)^@act23 elseif @act3 == "invert/" z3a = @fnact3(c-@act13)^@act23 / z3 elseif @act3 == "^" z3a = z3 ^ @fnact3(c-@act13)^@act23 elseif @act3 == "invert^" z3a = @fnact3(c-@act13)^@act23 ^ z3 endif ; Decide the positions of the three Z blocks if @change == "Z1|Z2|Z3" if @pz1 == "+" x = z1a+z2 elseif @pz1 == "-" x = z1a-z2 elseif @pz1 == "invert-" x = z2-z1a elseif @pz1 == "*" x = z1a*z2 elseif @pz1 == "/" x = z1a/z2 elseif @pz1 == "invert/" x = z2/z1a elseif @pz1 == "^" x = z1a^z2 elseif @pz1 == "invert^" x = z2^z1a endif if @op5 == "+" z5 = @fn5(x)+z3a elseif @op5 == "-" z5 = @fn5(x)-z3a elseif @op5 == "invert-" z5 = z3a-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z3a elseif @op5 == "/" z5 = @fn5(x)/z3a elseif @op5 == "invert/" z5 = z3a/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z3a elseif @op5 == "invert^" z5 = z3a^@fn5(x) endif elseif @change == "Z1|Z3|Z2" if @pz1 == "+" x = z1a+z3a elseif @pz1 == "-" x = z1a-z3a elseif @pz1 == "invert-" x = z3a-z1a elseif @pz1 == "*" x = z1a*z3a elseif @pz1 == "/" x = z1a/z3a elseif @pz1 == "invert/" x = z3a/z1a elseif @pz1 == "^" x = z1a^z3a elseif @pz1 == "invert^" x = z3a^z1a endif if @op5 == "+" z5 = @fn5(x)+z2 elseif @op5 == "-" z5 = @fn5(x)-z2 elseif @op5 == "invert-" z5 = z2-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z2 elseif @op5 == "/" z5 = @fn5(x)/z2 elseif @op5 == "invert/" z5 = z2/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z2 elseif @op5 == "invert^" z5 = z2^@fn5(x) endif endif ; Select the Z and C modes for Z4 section if @xz4 == "z" a4 = z3a elseif @xz4 == "|z|" a4 = |z3a| elseif @xz4 == "atan2(z)" a4 = atan2(z3a) elseif @xz4 == "real(z)" a4 = real(z3a) elseif @xz4 == "imag(z)" a4 = imag(z3a) endif if @xc4 == "c" c4 = c elseif @xc4 == "|c|" c4 = |c| elseif @xc4 == "atan2(c)" c4 = atan2(c) elseif @xc4 == "real(c)" c4 = real(c) elseif @xc4 == "imag(c)" c4 = imag(c) endif ; Define the Z4 variable if @op4 == "+" z4 = @fn4a(a4-@z4)/@zm4+@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "-" z4 = @fn4a(a4-@z4)/@zm4-@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert-" z4 = @fn4b((c4-@c4)*@cm4)^@ec4-@fn4a(a4-@z4)*@zm4 elseif @op4 == "*" z4 = @fn4a(a4-@z4)/@zm4*@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "/" z4 = @fn4a(a4-@z4)/@zm4/@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert/" z4 = @fn4b((c4-@c4)*@cm4)^@ec4/@fn4a(a4-@z4)*@zm4 elseif @op4 == "^" z4 = @fn4a(a4-@z4)/@zm4^@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert^" z4 = @fn4b((c4-@c4)*@cm4)^@ec4^@fn4a(a4-@z4)*@zm4 endif ; Z4 section [operator] Z5 section--final definition of Z if @final == "+" z = z5+z4 elseif @final == "-" z = z5-z4 elseif @final == "invert -" z = z4-z5 elseif @final == "*" z = z4*z5 endif bailout: |z|<=@bailout default: title = "Suite: Locria" maxiter = 500 periodicity = 0 param version caption = "Version" default = 110 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Z1 Section (R/I)" endheading param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z1" endparam param moderi1 caption = "Z1 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z1 are combined" endparam param opri1 caption = "Z1 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z1 operates" endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = @np == true endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = @np == true endparam float param riz1 caption = "Re(Z1) Param 2" default = 0 visible = @np == true endparam float param imz1 caption = "Im(Z1) Param 2" default = 0 visible = @np == true endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = @np == true endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = @np == true endparam func fna caption = "Re(Z1) Function" default = cos() endfunc func fnb caption = "Im(Z1) Function" default = cos() endfunc heading caption = "" endheading param act caption = "Z1 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z1 variable by a C expression" endparam func fnact caption = "Z1 Accent Function" default = ident () visible = @act !=0 endfunc complex param act1 caption = "Z1 Accent P1" default = (0,0) visible = @np == true && @act != 0 endparam complex param act2 caption = "Z1 Accent P2" default = (1,0) visible = @np == true && @act != 0 endparam heading caption = "Z2 Section" endheading param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np == true endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np == true endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np == true endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np == true endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np == true endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section (R/I)" endheading param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z3" endparam param moderi3 caption = "Z3 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z3 are combined" endparam param opri3 caption = "Z3 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z3 operates" endparam complex param priz3 caption = "Re(Z3) Param 1" default = (0,1) visible = @np == true endparam complex param pimz3 caption = "Im(Z3) Param 1" default = (0,1) visible = @np == true endparam float param riz3 caption = "Re(Z3) Param 2" default = 0 visible = @np == true endparam float param imzp3 caption = "Im(Z3) Param 2" default = 0 endparam complex param rzm3 caption = "Re(Z3) Param 3" default = (1,0) visible = @np == true endparam complex param izm3 caption = "Im(Z3) Param 3" default = (1,0) visible = @np == true endparam func fna3 caption = "Re(Z3) Function" default = cos() endfunc func fnb3 caption = "Im(Z3) Function" default = cos() endfunc heading caption = "" endheading param act3 caption = "Z3 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z3 variable by a C expression" endparam func fnact3 caption = "Z3 Accent Function" default = ident () visible = @act3 !=0 endfunc complex param act13 caption = "Z3 Accent P1" default = (0,0) visible = @np == true && @act3 != 0 endparam complex param act23 caption = "Z3 Accent P2" default = (1,0) visible = @np == true && @act3 != 0 endparam heading caption = "Z4 Parameters" endheading param xz4 caption = "Z4 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z4 section" endparam param xc4 caption = "Z4 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z4 section" endparam param op4 caption = "Z4 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 3 hint = "Determines how the Z and C parts of Z4 interact" endparam complex param z4 caption = "Z4 Param 1" default = (0,0) visible = @np == true endparam complex param zm4 caption = "Z4 Param 2" default = (1,0) visible = @np == true endparam complex param c4 caption = "Z4 Param 3" default = (0,0) visible = @np == true endparam complex param cm4 caption = "Z4 Param 4" default = (1,0) visible = @np == true endparam complex param ec4 caption = "Z4 Param 5" default = (1,0) visible = @np == true endparam func fn4a caption = "Z4 Function Z" default = ident() endfunc func fn4b caption = "Z4 Function C" default = ident() endfunc heading caption = "Final" endheading param change caption = "Section Order" enum = "Z1|Z2|Z3""Z1|Z3|Z2" default = 0 endparam param pz1 caption = "1st Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines the operator at work between the \ first two sections as shown in 'Section Order'" endparam param op5 caption = "2nd Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines the operator at work between the \ last two sections as shown in 'Section Order'" endparam param final caption = "Final Operator" enum = "+""-""invert -""*" default = 0 hint = "Determines the final interaction of the combined Z sections" endparam func fn5 caption = "Final function" default = ident() endfunc switch: type = "SuiteLocria" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc act = @act fnact = @fnact act1 = @act1 act2 = @act2 moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 rzm1 = @rzm1 izm1 = @izm1 fna = @fna fnb = @fnb xz1 = @xz1 op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b act3 = @act3 fnact3 = @fnact3 act13 = @act13 act23 = @act23 moderi3 = @moderi3 opri3 = @opri3 priz3 = @priz3 pimz3 = @pimz3 riz3 = @riz3 imzp3 = @imzp3 rzm3 = @rzm3 izm3 = @izm3 fna3 = @fna3 fnb3 = @fnb3 xz3 = @xz3 op5 = @op5 fn5 = @fn5 change = @change pz1 = @pz1 final = @final op4 = @op4 xz4 = @xz4 xc4 = @xc4 z4 = @z4 zm4 = @zm4 c4 = @c4 cm4 = @cm4 ec4 = @ec4 fn4a = @fn4a fn4b = @fn4b mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } SuiteHypoaeolia { ; This formula redefines the Z variable a number of ; times in the loop, and combines the result in ; different selectable ways with selectable functions ; and params. ; ; Hypoaeolia has four Z sections which are combined at the ; end of the loop. One of these (Z1) has Z split ; into real and imaginary components which can be combined ; in different ways to define the final variable of that ; section. ; ; Z1 (R/I) feeds Z3, which then feeds Z4 ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because of the complexity of the loop calculation, this ; formula can be quite slow in some modes. ; ; SWITCH HINT: Because in some R/I modes the switch action ; takes place away from the center you might find it useful ; to set the "Switch Scale" param to 0.5 or so in those cases. ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.1 (fixed param visibility) init: z = @startseed complex z1 = (0,0) complex z1a = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z4 = (0,0) complex z5 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex a4 = (0,0) complex c2 = (0,0) complex c3 = (0,0) complex c4 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z/@scale endif if @center != (0.0,0.0) z = z+@center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Determine the mode of Z in the Z1 section (R/I) if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif ; Combine real and imaginary parts of Z in Z1 section rez0 = (@fna(real(a1-@riz1)*@rzm1)+@priz1) rez1 = (@fna(real(a1-@riz1)*@rzm1)-@priz1) rez2 = (@fna(real(a1-@riz1)*@rzm1)*@priz1) rez3 = (@fna(real(a1-@riz1)*@rzm1)/@priz1) rez4 = (@fna(real(a1-@riz1)*@rzm1)^@priz1) imz = (@fnb(imag(a1-imz1)*@izm1)+@pimz1) if @moderi1 == "+"; R/I operator if @opri1=="+"; Z1 param operator z1 = rez0 + imz elseif @opri1=="-" z1 = rez1 + imz elseif @opri1=="*" z1 = rez2 + imz elseif @opri1=="/" z1 = rez3 + imz elseif @opri1=="^" z1 = rez4+imz endif elseif @moderi1 == "-" if @opri1=="+" z1 = rez0-imz elseif @opri1=="-" z1 = rez1-imz elseif @opri1=="*" z1 = rez2-imz elseif @opri1=="/" z1 = rez3-imz elseif @opri1=="^" z1 = rez4-imz endif elseif @moderi1 == "invert-" if @opri1=="+" z1 = imz-rez0 elseif @opri1=="-" z1 = imz-rez1 elseif @opri1=="*" z1 = imz-rez2 elseif @opri1=="/" z1 = imz-rez3 elseif @opri1=="^" z1 = imz-rez4 endif elseif @moderi1 == "*" if @opri1=="+" z1 = rez0*imz elseif @opri1=="-" z1 = rez1*imz elseif @opri1=="*" z1 = rez2*imz elseif @opri1=="/" z1 = rez3*imz elseif @opri1=="^" z1 = rez4*imz endif elseif @moderi1 == "/" if @opri1=="+" z1 = rez0/imz elseif @opri1=="-" z1 = rez1/imz elseif @opri1=="*" z1 = rez2/imz elseif @opri1=="/" z1 = rez3/imz elseif @opri1=="^" z1 = rez4/imz endif elseif @moderi1 == "invert/" if @opri1=="+" z1 = imz/rez0 elseif @opri1=="-" z1 = imz/rez1 elseif @opri1=="*" z1 = imz/rez2 elseif @opri1=="/" z1 = imz/rez3 elseif @opri1=="^" z1 = imz/rez4 endif elseif @moderi1 == "^" if @opri1=="+" z1 = rez0^imz elseif @opri1=="-" z1 = rez1^imz elseif @opri1=="*" z1 = rez2^imz elseif @opri1=="/" z1 = rez3^imz elseif @opri1=="^" z1 = rez4^imz endif elseif @moderi1 == "invert^" if @opri1=="+" z1 = imz^rez0 elseif @opri1=="-" z1 = imz^rez1 elseif @opri1=="*" z1 = imz^rez2 elseif @opri1=="/" z1 = imz^rez3 elseif @opri1=="^" z1 = imz^rez4 endif endif ; Process Z1 variable with a C section if @act == "none" z1a = z1 elseif @act == "+" z1a = z1 + @fnact(c-@act1)^@act2 elseif @act == "-" z1a = z1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" z1a = @fnact(c-@act1)^@act2 - z1 elseif @act == "*" z1a = z1 * @fnact(c-@act1)^@act2 elseif @act == "/" z1a = z1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" z1a = @fnact(c-@act1)^@act2 / z1 elseif @act == "^" z1a = z1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" z1a = @fnact(c-@act1)^@act2 ^ z1 endif ; Define the modes of Z and C in the Z2 section if @xz2 == "z" a2 = z elseif @xz2 == "|z|" a2 = |z| elseif @xz2 == "atan2(z)" a2 = atan2(z) elseif @xz2 == "real(z)" a2 = real(z) elseif @xz2 == "imag(z)" a2 = imag(z) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable if @op2 == "+"; Z2 operator z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Define the modes of Z and C in the Z3 section if @xz3 == "z" a3 = z1a elseif @xz3 == "|z|" a3 = |z1a| elseif @xz3 == "atan2(z)" a3 = atan2(z1a) elseif @xz3 == "real(z)" a3 = real(z1a) elseif @xz3 == "imag(z)" a3 = imag(z1a) endif if @xc3 == "c" c3 = c elseif @xc3 == "|c|" c3 = |c| elseif @xc3 == "atan2(c)" c3 = atan2(c) elseif @xc3 == "real(c)" c3 = real(c) elseif @xc3 == "imag(c)" c3 = imag(c) endif ; Define the Z3 variable if @op3 == "+"; Z3 operator z3 = @fn3a(a3-@z3)*@zm3+@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "-" z3 = @fn3a(a3-@z3)*@zm3-@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert-" z3 = @fn3b((c3-@c3)*@cm3)^@ec3-@fn3a(a3-@z3)*@zm3 elseif @op3 == "*" z3 = @fn3a(a3-@z3)*@zm3*@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "/" z3 = @fn3a(a3-@z3)*@zm3/@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert/" z3 = @fn3b((c3-@c3)*@cm3)^@ec3/@fn3a(a3-@z3)*@zm3 elseif @op3 == "^" z3 = @fn3a(a3-@z3)*@zm3^@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert^" z3 = @fn3b((c3-@c3)*@cm3)^@ec3^@fn3a(a3-@z3)*@zm3 endif ; Decide the positions of the three Z sections if @change == "Z1|Z2|Z3" if @pz1 == "+" x = z1a+z2 elseif @pz1 == "-" x = z1a-z2 elseif @pz1 == "invert-" x = z2-z1a elseif @pz1 == "*" x = z1a*z2 elseif @pz1 == "/" x = z1a/z2 elseif @pz1 == "invert/" x = z2/z1a elseif @pz1 == "^" x = z1a^z2 elseif @pz1 == "invert^" x = z2^z1a endif if @op5 == "+" z5 = @fn5(x)+z3 elseif @op5 == "-" z5 = @fn5(x)-z3 elseif @op5 == "invert-" z5 = z3-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z3 elseif @op5 == "/" z5 = @fn5(x)/z3 elseif @op5 == "invert/" z5 = z3/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z3 elseif @op5 == "invert^" z5 = z3^@fn5(x) endif elseif @change == "Z2|Z3|Z1" if @pz1 == "+" x = z2+z3 elseif @pz1 == "-" x = z2-z3 elseif @pz1 == "invert-" x = z3-z2 elseif @pz1 == "*" x = z2*z3 elseif @pz1 == "/" x = z2/z3 elseif @pz1 == "invert/" x = z3/z2 elseif @pz1 == "^" x = z2^z3 elseif @pz1 == "invert^" x = z3^z2 endif if @op5 == "+" z5 = @fn5(x)+z1a elseif @op5 == "-" z5 = @fn5(x)-z1a elseif @op5 == "invert-" z5 = z1a-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z1a elseif @op5 == "/" z5 = @fn5(x)/z1a elseif @op5 == "invert/" z5 = z1a/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z1a elseif @op5 == "invert^" z5 = z1a^@fn5(x) endif endif ; Define the Z and C modes for the Z4 section if @xz4 == "z" a4 = z3 elseif @xz4 == "|z|" a4 = |z3| elseif @xz4 == "atan2(z)" a4 = atan2(z3) elseif @xz4 == "real(z)" a4 = real(z3) elseif @xz4 == "imag(z)" a4 = imag(z) endif if @xc4 == "c" c4 = c elseif @xc4 == "|c|" c4 = |c| elseif @xc4 == "atan2(c)" c4 = atan2(c) elseif @xc4 == "real(c)" c4 = real(c) elseif @xc4 == "imag(c)" c4 = imag(c) endif ; Define the Z4 variable if @op4 == "+" z4 = @fn4a(a4-@z4)/@zm4+@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "-" z4 = @fn4a(a4-@z4)/@zm4-@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert-" z4 = @fn4b((c4-@c4)*@cm4)^@ec4-@fn4a(a4-@z4)*@zm4 elseif @op4 == "*" z4 = @fn4a(a4-@z4)/@zm4*@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "/" z4 = @fn4a(a4-@z4)/@zm4/@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert/" z4 = @fn4b((c4-@c4)*@cm4)^@ec4/@fn4a(a4-@z4)*@zm4 elseif @op4 == "^" z4 = @fn4a(a4-@z4)/@zm4^@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert^" z4 = @fn4b((c4-@c4)*@cm4)^@ec4^@fn4a(a4-@z4)*@zm4 endif ; Z4 section [operator] Z5 section-final definition of Z if @final == "+" z = z5+z4 elseif @final == "-" z = z5-z4 elseif @final == "invert -" z = z4-z5 elseif @final == "*" z = z4*z5 endif bailout: |z|<=@bailout default: title = "Suite: Hypoaeolia" maxiter = 500 periodicity = 0 param version caption = "Version" default = 110 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Z1 Section (R/I)" endheading param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z1" endparam param moderi1 caption = "Z1 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z1 are combined" endparam param opri1 caption = "Z1 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z1 operates" endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = @np == true endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = @np == true endparam float param riz1 caption = "Re(Z1) Param 2" default = 0 visible = @np == true endparam float param imz1 caption = "Im(Z1) Param 2" default = 0 visible = @np == true endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = @np == true endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = @np == true endparam func fna caption = "Re(Z1) Function" default = cos() endfunc func fnb caption = "Im(Z1) Function" default = cos() endfunc heading caption = "" endheading param act caption = "Z1 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z1 variable by a C expression" endparam func fnact caption = "Z1 Accent Function" default = ident () visible = @act !=0 endfunc complex param act1 caption = "Z1 Accent P1" default = (0,0) visible = @np == true && @act != 0 endparam complex param act2 caption = "Z1 Accent P2" default = (1,0) visible = @np == true && @act != 0 endparam heading caption = "Z2 Section" endheading param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np == true endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np == true endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np == true endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np == true endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np == true endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section" endheading param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc3 caption = "Z3 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op3 caption = "Z3 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z3 caption = "Z3 Param 1" default = (0,0) visible = @np == true endparam complex param zm3 caption = "Z3 Param 2" default = (1,0) visible = @np == true endparam complex param c3 caption = "Z3 Param 3" default = (0,0) visible = @np == true endparam complex param cm3 caption = "Z3 Param 4" default = (1,0) visible = @np == true endparam complex param ec3 caption = "Z3 Param 5" default = (1,0) visible = @np == true endparam func fn3a caption = "Z3 Function Z" default = ident() endfunc func fn3b caption = "Z3 Function C" default = ident() endfunc heading caption = "Z4 Parameters" endheading param xz4 caption = "Z4 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z4 section" endparam param xc4 caption = "Z4 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z4 section" endparam param op4 caption = "Z4 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 3 hint = "Determines how the Z and C parts of Z4 interact" endparam complex param z4 caption = "Z4 Param 1" default = (0,0) visible = @np == true endparam complex param zm4 caption = "Z4 Param 2" default = (1,0) visible = @np == true endparam complex param c4 caption = "Z4 Param 3" default = (0,0) visible = @np == true endparam complex param cm4 caption = "Z4 Param 4" default = (1,0) visible = @np == true endparam complex param ec4 caption = "Z4 Param 5" default = (1,0) visible = @np == true endparam func fn4a caption = "Z4 Function Z" default = ident() endfunc func fn4b caption = "Z4 Function C" default = ident() endfunc heading caption = "Final" endheading param change caption = "Section Order" enum = "Z1|Z2|Z3""Z2|Z3|Z1" default = 0 endparam param pz1 caption = "1st Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines the operator at work between the \ first two sections as shown in 'Section Order'" endparam param op5 caption = "2nd Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines the operator at work between the \ last two sections as shown in 'Section Order'" endparam param final caption = "Final Operator" enum = "+""-""invert -""*" default = 0 hint = "Determines the final interaction of the combined Z sections" endparam func fn5 caption = "Final function" default = ident() endfunc switch: type = "SuiteHypoaeolia" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc act = @act fnact = @fnact act1 = @act1 act2 = @act2 moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 rzm1 = @rzm1 izm1 = @izm1 fna = @fna fnb = @fnb xz1 = @xz1 op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b xz3 = @xz3 xc3 = @xc3 z3 = @z3 zm3 = @zm3 c3 = @c3 cm3 = @cm3 ec3 = @ec3 fn3a = @fn3a fn3b = @fn3b op5 = @op5 fn5 = @fn5 change = @change pz1 = @pz1 final = @final op4 = @op4 xz4 = @xz4 xc4 = @xc4 z4 = @z4 zm4 = @zm4 c4 = @c4 cm4 = @cm4 ec4 = @ec4 fn4a = @fn4a fn4b = @fn4b mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } SuiteLydia { ; This formula redefines the Z variable a number of ; times in the loop, and combines the result in ; different selectable ways with selectable functions ; and params. ; ; Lydia has four Z sections which are combined at the ; end of the loop. One of these (Z1) has Z split ; into real and imaginary components which can be combined ; in different ways to define the final variable of that ; section. ; ; Z2 feeds Z1(R/I) ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because of the complexity of the loop calculation, this ; formula can be quite slow in some modes. ; ; SWITCH HINT: Because in some R/I modes the switch action ; takes place away from the center you might find it useful ; to set the "Switch Scale" param to 0.5 or so in those cases. ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.2 (fixed param visibility) init: z = @startseed complex z1 = (0,0) complex z1a = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z4 = (0,0) complex z5 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex a4 = (0,0) complex c2 = (0,0) complex c3 = (0,0) complex c4 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z/@scale endif if @center != (0.0,0.0) z = z+@center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Determine the mode of Z in the Z1 section (R/I) if @xz1 == "z" a1 = z2 elseif @xz1 == "|z|" a1 = |z2| elseif @xz1 == "atan2(z)" a1 = atan2(z2) elseif @xz1 == "real(z)" a1 = real(z2) elseif @xz1 == "imag(z)" a1 = imag(z2) endif ; Combine real and imaginary parts of Z in Z1 section rez0 = (@fna(real(a1-@riz1)*@rzm1)+@priz1) rez1 = (@fna(real(a1-@riz1)*@rzm1)-@priz1) rez2 = (@fna(real(a1-@riz1)*@rzm1)*@priz1) rez3 = (@fna(real(a1-@riz1)*@rzm1)/@priz1) rez4 = (@fna(real(a1-@riz1)*@rzm1)^@priz1) imz = (@fnb(imag(a1-imz1)*@izm1)+@pimz1) if @moderi1 == "+"; R/I operator if @opri1=="+"; Z1 param operator z1 = rez0 + imz elseif @opri1=="-" z1 = rez1 + imz elseif @opri1=="*" z1 = rez2 + imz elseif @opri1=="/" z1 = rez3 + imz elseif @opri1=="^" z1 = rez4+imz endif elseif @moderi1 == "-" if @opri1=="+" z1 = rez0-imz elseif @opri1=="-" z1 = rez1-imz elseif @opri1=="*" z1 = rez2-imz elseif @opri1=="/" z1 = rez3-imz elseif @opri1=="^" z1 = rez4-imz endif elseif @moderi1 == "invert-" if @opri1=="+" z1 = imz-rez0 elseif @opri1=="-" z1 = imz-rez1 elseif @opri1=="*" z1 = imz-rez2 elseif @opri1=="/" z1 = imz-rez3 elseif @opri1=="^" z1 = imz-rez4 endif elseif @moderi1 == "*" if @opri1=="+" z1 = rez0*imz elseif @opri1=="-" z1 = rez1*imz elseif @opri1=="*" z1 = rez2*imz elseif @opri1=="/" z1 = rez3*imz elseif @opri1=="^" z1 = rez4*imz endif elseif @moderi1 == "/" if @opri1=="+" z1 = rez0/imz elseif @opri1=="-" z1 = rez1/imz elseif @opri1=="*" z1 = rez2/imz elseif @opri1=="/" z1 = rez3/imz elseif @opri1=="^" z1 = rez4/imz endif elseif @moderi1 == "invert/" if @opri1=="+" z1 = imz/rez0 elseif @opri1=="-" z1 = imz/rez1 elseif @opri1=="*" z1 = imz/rez2 elseif @opri1=="/" z1 = imz/rez3 elseif @opri1=="^" z1 = imz/rez4 endif elseif @moderi1 == "^" if @opri1=="+" z1 = rez0^imz elseif @opri1=="-" z1 = rez1^imz elseif @opri1=="*" z1 = rez2^imz elseif @opri1=="/" z1 = rez3^imz elseif @opri1=="^" z1 = rez4^imz endif elseif @moderi1 == "invert^" if @opri1=="+" z1 = imz^rez0 elseif @opri1=="-" z1 = imz^rez1 elseif @opri1=="*" z1 = imz^rez2 elseif @opri1=="/" z1 = imz^rez3 elseif @opri1=="^" z1 = imz^rez4 endif endif ; Process Z1 variable with a C section if @act == "none" z1a = z1 elseif @act == "+" z1a = z1 + @fnact(c-@act1)^@act2 elseif @act == "-" z1a = z1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" z1a = @fnact(c-@act1)^@act2 - z1 elseif @act == "*" z1a = z1 * @fnact(c-@act1)^@act2 elseif @act == "/" z1a = z1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" z1a = @fnact(c-@act1)^@act2 / z1 elseif @act == "^" z1a = z1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" z1a = @fnact(c-@act1)^@act2 ^ z1 endif ; Define the modes of Z and C in the Z2 section if @xz2 == "z" a2 = z elseif @xz2 == "|z|" a2 = |z| elseif @xz2 == "atan2(z)" a2 = atan2(z) elseif @xz2 == "real(z)" a2 = real(z) elseif @xz2 == "imag(z)" a2 = imag(z) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable if @op2 == "+"; Z2 operator z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Define the modes of Z and C in the Z3 section if @version == 100 if @xz3 == "z" a3 = z1a elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif else if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif endif if @xc3 == "c" c3 = c elseif @xc3 == "|c|" c3 = |c| elseif @xc3 == "atan2(c)" c3 = atan2(c) elseif @xc3 == "real(c)" c3 = real(c) elseif @xc3 == "imag(c)" c3 = imag(c) endif ; Define the Z3 variable if @op3 == "+"; Z3 operator z3 = @fn3a(a3-@z3)*@zm3+@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "-" z3 = @fn3a(a3-@z3)*@zm3-@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert-" z3 = @fn3b((c3-@c3)*@cm3)^@ec3-@fn3a(a3-@z3)*@zm3 elseif @op3 == "*" z3 = @fn3a(a3-@z3)*@zm3*@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "/" z3 = @fn3a(a3-@z3)*@zm3/@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert/" z3 = @fn3b((c3-@c3)*@cm3)^@ec3/@fn3a(a3-@z3)*@zm3 elseif @op3 == "^" z3 = @fn3a(a3-@z3)*@zm3^@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert^" z3 = @fn3b((c3-@c3)*@cm3)^@ec3^@fn3a(a3-@z3)*@zm3 endif ; Decide the positions of the three Z sections if @change == "Z1|Z2|Z3" if @pz1 == "+" x = z1a+z2 elseif @pz1 == "-" x = z1a-z2 elseif @pz1 == "invert-" x = z2-z1a elseif @pz1 == "*" x = z1a*z2 elseif @pz1 == "/" x = z1a/z2 elseif @pz1 == "invert/" x = z2/z1a elseif @pz1 == "^" x = z1a^z2 elseif @pz1 == "invert^" x = z2^z1a endif if @op5 == "+" z5 = @fn5(x)+z3 elseif @op5 == "-" z5 = @fn5(x)-z3 elseif @op5 == "invert-" z5 = z3-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z3 elseif @op5 == "/" z5 = @fn5(x)/z3 elseif @op5 == "invert/" z5 = z3/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z3 elseif @op5 == "invert^" z5 = z3^@fn5(x) endif elseif @change == "Z2|Z3|Z1" if @pz1 == "+" x = z2+z3 elseif @pz1 == "-" x = z2-z3 elseif @pz1 == "invert-" x = z3-z2 elseif @pz1 == "*" x = z2*z3 elseif @pz1 == "/" x = z2/z3 elseif @pz1 == "invert/" x = z3/z2 elseif @pz1 == "^" x = z2^z3 elseif @pz1 == "invert^" x = z3^z2 endif if @op5 == "+" z5 = @fn5(x)+z1a elseif @op5 == "-" z5 = @fn5(x)-z1a elseif @op5 == "invert-" z5 = z1a-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z1a elseif @op5 == "/" z5 = @fn5(x)/z1a elseif @op5 == "invert/" z5 = z1a/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z1a elseif @op5 == "invert^" z5 = z1a^@fn5(x) endif endif ; Define the Z and C modes for the Z4 section if @xz4 == "z" a4 = z elseif @xz4 == "|z|" a4 = |z| elseif @xz4 == "atan2(z)" a4 = atan2(z) elseif @xz4 == "real(z)" a4 = real(z) elseif @xz4 == "imag(z)" a4 = imag(z) endif if @xc4 == "c" c4 = c elseif @xc4 == "|c|" c4 = |c| elseif @xc4 == "atan2(c)" c4 = atan2(c) elseif @xc4 == "real(c)" c4 = real(c) elseif @xc4 == "imag(c)" c4 = imag(c) endif ; Define the Z4 variable if @op4 == "+" z4 = @fn4a(a4-@z4)/@zm4+@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "-" z4 = @fn4a(a4-@z4)/@zm4-@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert-" z4 = @fn4b((c4-@c4)*@cm4)^@ec4-@fn4a(a4-@z4)*@zm4 elseif @op4 == "*" z4 = @fn4a(a4-@z4)/@zm4*@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "/" z4 = @fn4a(a4-@z4)/@zm4/@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert/" z4 = @fn4b((c4-@c4)*@cm4)^@ec4/@fn4a(a4-@z4)*@zm4 elseif @op4 == "^" z4 = @fn4a(a4-@z4)/@zm4^@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert^" z4 = @fn4b((c4-@c4)*@cm4)^@ec4^@fn4a(a4-@z4)*@zm4 endif ; Z4 section [operator] Z5 section-final definition of Z if @final == "+" z = z5+z4 elseif @final == "-" z = z5-z4 elseif @final == "invert -" z = z4-z5 elseif @final == "*" z = z4*z5 endif bailout: |z|<=@bailout default: title = "Suite: Lydia" maxiter = 500 periodicity = 0 param version caption = "Version" default = 120 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Z1 Section (R/I)" endheading param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z1" endparam param moderi1 caption = "Z1 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z1 are combined" endparam param opri1 caption = "Z1 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z1 operates" endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = @np == true endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = @np == true endparam float param riz1 caption = "Re(Z1) Param 2" default = 0 visible = @np == true endparam float param imz1 caption = "Im(Z1) Param 2" default = 0 visible = @np == true endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = @np == true endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = @np == true endparam func fna caption = "Re(Z1) Function" default = cos() endfunc func fnb caption = "Im(Z1) Function" default = cos() endfunc heading caption = "" endheading param act caption = "Z1 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z1 variable by a C expression" endparam func fnact caption = "Z1 Accent Function" default = ident () visible = @act !=0 endfunc complex param act1 caption = "Z1 Accent P1" default = (0,0) visible = @np == true && @act != 0 endparam complex param act2 caption = "Z1 Accent P2" default = (1,0) visible = @np == true && @act != 0 endparam heading caption = "Z2 Section" endheading param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np == true endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np == true endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np == true endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np == true endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np == true endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section" endheading param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc3 caption = "Z3 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op3 caption = "Z3 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z3 caption = "Z3 Param 1" default = (0,0) visible = @np == true endparam complex param zm3 caption = "Z3 Param 2" default = (1,0) visible = @np == true endparam complex param c3 caption = "Z3 Param 3" default = (0,0) visible = @np == true endparam complex param cm3 caption = "Z3 Param 4" default = (1,0) visible = @np == true endparam complex param ec3 caption = "Z3 Param 5" default = (1,0) visible = @np == true endparam func fn3a caption = "Z3 Function Z" default = ident() endfunc func fn3b caption = "Z3 Function C" default = ident() endfunc heading caption = "Z4 Parameters" endheading param xz4 caption = "Z4 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z4 section" endparam param xc4 caption = "Z4 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z4 section" endparam param op4 caption = "Z4 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 3 hint = "Determines how the Z and C parts of Z4 interact" endparam complex param z4 caption = "Z4 Param 1" default = (0,0) visible = @np == true endparam complex param zm4 caption = "Z4 Param 2" default = (1,0) visible = @np == true endparam complex param c4 caption = "Z4 Param 3" default = (0,0) visible = @np == true endparam complex param cm4 caption = "Z4 Param 4" default = (1,0) visible = @np == true endparam complex param ec4 caption = "Z4 Param 5" default = (1,0) visible = @np == true endparam func fn4a caption = "Z4 Function Z" default = ident() endfunc func fn4b caption = "Z4 Function C" default = ident() endfunc heading caption = "Final" endheading param change caption = "Section Order" enum = "Z1|Z2|Z3""Z2|Z3|Z1" default = 0 endparam param pz1 caption = "1st Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines the operator at work between the \ first two sections as shown in 'Section Order'" endparam param op5 caption = "2nd Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines the operator at work between the \ last two sections as shown in 'Section Order'" endparam param final caption = "Final Operator" enum = "+""-""invert -""*" default = 0 hint = "Determines the final interaction of the combined Z sections" endparam func fn5 caption = "Final function" default = ident() endfunc switch: type = "SuiteLydia" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc act = @act fnact = @fnact act1 = @act1 act2 = @act2 moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 rzm1 = @rzm1 izm1 = @izm1 fna = @fna fnb = @fnb xz1 = @xz1 op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b xz3 = @xz3 xc3 = @xc3 z3 = @z3 zm3 = @zm3 c3 = @c3 cm3 = @cm3 ec3 = @ec3 fn3a = @fn3a fn3b = @fn3b op5 = @op5 fn5 = @fn5 change = @change pz1 = @pz1 final = @final op4 = @op4 xz4 = @xz4 xc4 = @xc4 z4 = @z4 zm4 = @zm4 c4 = @c4 cm4 = @cm4 ec4 = @ec4 fn4a = @fn4a fn4b = @fn4b mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } SuiteHypodoria { ; This formula redefines the Z variable a number of ; times in the loop, and combines the result in ; different selectable ways with selectable functions ; and params. ; ; Hypodoria has four Z sections which are combined at the ; end of the loop. One of these (Z1) has Z split ; into real and imaginary components which can be combined ; in different ways to define the final variable of that ; section. ; ; Z2 feeds Z1 (R/I), which then feeds Z4. ; ; Because of the complexity of the loop calculation, this ; formula can be quite slow in some modes. ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; SWITCH HINT: Because in some R/I modes the switch action ; takes place away from the center you might find it useful ; to set the "Switch Scale" param to 0.5 or so in those cases. ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004, v 1.1 (fixed param visibility) init: z = @startseed complex z1 = (0,0) complex z1a = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z4 = (0,0) complex z5 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex a4 = (0,0) complex c2 = (0,0) complex c3 = (0,0) complex c4 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z/@scale endif if @center != (0.0,0.0) z = z+@center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Determine the mode of Z in the Z1 section (R/I) if @xz1 == "z" a1 = z2 elseif @xz1 == "|z|" a1 = |z2| elseif @xz1 == "atan2(z)" a1 = atan2(z2) elseif @xz1 == "real(z)" a1 = real(z2) elseif @xz1 == "imag(z)" a1 = imag(z2) endif ; Combine real and imaginary parts of Z in Z1 section rez0 = (@fna(real(a1-@riz1)*@rzm1)+@priz1) rez1 = (@fna(real(a1-@riz1)*@rzm1)-@priz1) rez2 = (@fna(real(a1-@riz1)*@rzm1)*@priz1) rez3 = (@fna(real(a1-@riz1)*@rzm1)/@priz1) rez4 = (@fna(real(a1-@riz1)*@rzm1)^@priz1) imz = (@fnb(imag(a1-imz1)*@izm1)+@pimz1) if @moderi1 == "+"; R/I operator if @opri1=="+"; Z1 param operator z1 = rez0 + imz elseif @opri1=="-" z1 = rez1 + imz elseif @opri1=="*" z1 = rez2 + imz elseif @opri1=="/" z1 = rez3 + imz elseif @opri1=="^" z1 = rez4+imz endif elseif @moderi1 == "-" if @opri1=="+" z1 = rez0-imz elseif @opri1=="-" z1 = rez1-imz elseif @opri1=="*" z1 = rez2-imz elseif @opri1=="/" z1 = rez3-imz elseif @opri1=="^" z1 = rez4-imz endif elseif @moderi1 == "invert-" if @opri1=="+" z1 = imz-rez0 elseif @opri1=="-" z1 = imz-rez1 elseif @opri1=="*" z1 = imz-rez2 elseif @opri1=="/" z1 = imz-rez3 elseif @opri1=="^" z1 = imz-rez4 endif elseif @moderi1 == "*" if @opri1=="+" z1 = rez0*imz elseif @opri1=="-" z1 = rez1*imz elseif @opri1=="*" z1 = rez2*imz elseif @opri1=="/" z1 = rez3*imz elseif @opri1=="^" z1 = rez4*imz endif elseif @moderi1 == "/" if @opri1=="+" z1 = rez0/imz elseif @opri1=="-" z1 = rez1/imz elseif @opri1=="*" z1 = rez2/imz elseif @opri1=="/" z1 = rez3/imz elseif @opri1=="^" z1 = rez4/imz endif elseif @moderi1 == "invert/" if @opri1=="+" z1 = imz/rez0 elseif @opri1=="-" z1 = imz/rez1 elseif @opri1=="*" z1 = imz/rez2 elseif @opri1=="/" z1 = imz/rez3 elseif @opri1=="^" z1 = imz/rez4 endif elseif @moderi1 == "^" if @opri1=="+" z1 = rez0^imz elseif @opri1=="-" z1 = rez1^imz elseif @opri1=="*" z1 = rez2^imz elseif @opri1=="/" z1 = rez3^imz elseif @opri1=="^" z1 = rez4^imz endif elseif @moderi1 == "invert^" if @opri1=="+" z1 = imz^rez0 elseif @opri1=="-" z1 = imz^rez1 elseif @opri1=="*" z1 = imz^rez2 elseif @opri1=="/" z1 = imz^rez3 elseif @opri1=="^" z1 = imz^rez4 endif endif ; Process Z1 variable with a C section if @act == "none" z1a = z1 elseif @act == "+" z1a = z1 + @fnact(c-@act1)^@act2 elseif @act == "-" z1a = z1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" z1a = @fnact(c-@act1)^@act2 - z1 elseif @act == "*" z1a = z1 * @fnact(c-@act1)^@act2 elseif @act == "/" z1a = z1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" z1a = @fnact(c-@act1)^@act2 / z1 elseif @act == "^" z1a = z1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" z1a = @fnact(c-@act1)^@act2 ^ z1 endif ; Define the modes of Z and C in the Z2 section if @xz2 == "z" a2 = z elseif @xz2 == "|z|" a2 = |z| elseif @xz2 == "atan2(z)" a2 = atan2(z) elseif @xz2 == "real(z)" a2 = real(z) elseif @xz2 == "imag(z)" a2 = imag(z) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable if @op2 == "+"; Z2 operator z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Define the modes of Z and C in the Z3 section if @xz3 == "z" a3 = z1a elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif if @xc3 == "c" c3 = c elseif @xc3 == "|c|" c3 = |c| elseif @xc3 == "atan2(c)" c3 = atan2(c) elseif @xc3 == "real(c)" c3 = real(c) elseif @xc3 == "imag(c)" c3 = imag(c) endif ; Define the Z3 variable if @op3 == "+"; Z3 operator z3 = @fn3a(a3-@z3)*@zm3+@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "-" z3 = @fn3a(a3-@z3)*@zm3-@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert-" z3 = @fn3b((c3-@c3)*@cm3)^@ec3-@fn3a(a3-@z3)*@zm3 elseif @op3 == "*" z3 = @fn3a(a3-@z3)*@zm3*@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "/" z3 = @fn3a(a3-@z3)*@zm3/@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert/" z3 = @fn3b((c3-@c3)*@cm3)^@ec3/@fn3a(a3-@z3)*@zm3 elseif @op3 == "^" z3 = @fn3a(a3-@z3)*@zm3^@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert^" z3 = @fn3b((c3-@c3)*@cm3)^@ec3^@fn3a(a3-@z3)*@zm3 endif ; Decide the positions of the three Z sections if @change == "Z1|Z2|Z3" if @pz1 == "+" x = z1a+z2 elseif @pz1 == "-" x = z1a-z2 elseif @pz1 == "invert-" x = z2-z1a elseif @pz1 == "*" x = z1a*z2 elseif @pz1 == "/" x = z1a/z2 elseif @pz1 == "invert/" x = z2/z1a elseif @pz1 == "^" x = z1a^z2 elseif @pz1 == "invert^" x = z2^z1a endif if @op5 == "+" z5 = @fn5(x)+z3 elseif @op5 == "-" z5 = @fn5(x)-z3 elseif @op5 == "invert-" z5 = z3-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z3 elseif @op5 == "/" z5 = @fn5(x)/z3 elseif @op5 == "invert/" z5 = z3/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z3 elseif @op5 == "invert^" z5 = z3^@fn5(x) endif elseif @change == "Z2|Z3|Z1" if @pz1 == "+" x = z2+z3 elseif @pz1 == "-" x = z2-z3 elseif @pz1 == "invert-" x = z3-z2 elseif @pz1 == "*" x = z2*z3 elseif @pz1 == "/" x = z2/z3 elseif @pz1 == "invert/" x = z3/z2 elseif @pz1 == "^" x = z2^z3 elseif @pz1 == "invert^" x = z3^z2 endif if @op5 == "+" z5 = @fn5(x)+z1a elseif @op5 == "-" z5 = @fn5(x)-z1a elseif @op5 == "invert-" z5 = z1a-@fn5(x) elseif @op5 == "*" z5 = @fn5(x)*z1a elseif @op5 == "/" z5 = @fn5(x)/z1a elseif @op5 == "invert/" z5 = z1a/@fn5(x) elseif @op5 == "^" z5 = @fn5(x)^z1a elseif @op5 == "invert^" z5 = z1a^@fn5(x) endif endif ; Define the Z and C modes for the Z4 section if @xz4 == "z" a4 = z1a elseif @xz4 == "|z|" a4 = |z1a| elseif @xz4 == "atan2(z)" a4 = atan2(z1a) elseif @xz4 == "real(z)" a4 = real(z1a) elseif @xz4 == "imag(z)" a4 = imag(z1a) endif if @xc4 == "c" c4 = c elseif @xc4 == "|c|" c4 = |c| elseif @xc4 == "atan2(c)" c4 = atan2(c) elseif @xc4 == "real(c)" c4 = real(c) elseif @xc4 == "imag(c)" c4 = imag(c) endif ; Define the Z4 variable if @op4 == "+" z4 = @fn4a(a4-@z4)/@zm4+@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "-" z4 = @fn4a(a4-@z4)/@zm4-@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert-" z4 = @fn4b((c4-@c4)*@cm4)^@ec4-@fn4a(a4-@z4)*@zm4 elseif @op4 == "*" z4 = @fn4a(a4-@z4)/@zm4*@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "/" z4 = @fn4a(a4-@z4)/@zm4/@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert/" z4 = @fn4b((c4-@c4)*@cm4)^@ec4/@fn4a(a4-@z4)*@zm4 elseif @op4 == "^" z4 = @fn4a(a4-@z4)/@zm4^@fn4b((c4-@c4)*@cm4)^@ec4 elseif @op4 == "invert^" z4 = @fn4b((c4-@c4)*@cm4)^@ec4^@fn4a(a4-@z4)*@zm4 endif ; Z4 section [operator] Z5 section-final definition of Z if @final == "+" z = z5+z4 elseif @final == "-" z = z5-z4 elseif @final == "invert -" z = z4-z5 elseif @final == "*" z = z4*z5 endif bailout: |z|<=@bailout default: title = "Suite: Hypodoria" maxiter = 500 periodicity = 0 param version caption = "Version" default = 110 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Z1 Section (R/I)" endheading param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the real and imaginary \ parts of Z1" endparam param moderi1 caption = "Z1 (R/I) Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 4 hint = "Determines how the real and imaginary sections that \ comprise Z1 are combined" endparam param opri1 caption = "Z1 (R/I) Param Op" enum = "+""-""*""/""^" default = 3 hint = "Determines how a differential parameter in the real \ and imaginary sections of Z1 operates" endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = @np == true endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = @np == true endparam float param riz1 caption = "Re(Z1) Param 2" default = 0 visible = @np == true endparam float param imz1 caption = "Im(Z1) Param 2" default = 0 visible = @np == true endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = @np == true endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = @np == true endparam func fna caption = "Re(Z1) Function" default = cos() endfunc func fnb caption = "Im(Z1) Function" default = cos() endfunc heading caption = "" endheading param act caption = "Z1 Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Processes the Z1 variable by a C expression" endparam func fnact caption = "Z1 Accent Function" default = ident () visible = @act !=0 endfunc complex param act1 caption = "Z1 Accent P1" default = (0,0) visible = @np == true && @act != 0 endparam complex param act2 caption = "Z1 Accent P2" default = (1,0) visible = @np == true && @act != 0 endparam heading caption = "Z2 Section" endheading param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc2 caption = "Z1 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np == true endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np == true endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np == true endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np == true endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np == true endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section" endheading param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z2 section" endparam param xc3 caption = "Z3 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z2 section" endparam param op3 caption = "Z3 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the Z and C parts of Z2 interact" endparam complex param z3 caption = "Z3 Param 1" default = (0,0) visible = @np == true endparam complex param zm3 caption = "Z3 Param 2" default = (1,0) visible = @np == true endparam complex param c3 caption = "Z3 Param 3" default = (0,0) visible = @np == true endparam complex param cm3 caption = "Z3 Param 4" default = (1,0) visible = @np == true endparam complex param ec3 caption = "Z3 Param 5" default = (1,0) visible = @np == true endparam func fn3a caption = "Z3 Function Z" default = ident() endfunc func fn3b caption = "Z3 Function C" default = ident() endfunc heading caption = "Z4 Parameters" endheading param xz4 caption = "Z4 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the nature of Z in the Z4 section" endparam param xc4 caption = "Z4 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Determines the nature of C in the Z4 section" endparam param op4 caption = "Z4 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 3 hint = "Determines how the Z and C parts of Z4 interact" endparam complex param z4 caption = "Z4 Param 1" default = (0,0) visible = @np == true endparam complex param zm4 caption = "Z4 Param 2" default = (1,0) visible = @np == true endparam complex param c4 caption = "Z4 Param 3" default = (0,0) visible = @np == true endparam complex param cm4 caption = "Z4 Param 4" default = (1,0) visible = @np == true endparam complex param ec4 caption = "Z4 Param 5" default = (1,0) visible = @np == true endparam func fn4a caption = "Z4 Function Z" default = ident() endfunc func fn4b caption = "Z4 Function C" default = ident() endfunc heading caption = "Final" endheading param change caption = "Section Order" enum = "Z1|Z2|Z3""Z2|Z3|Z1" default = 0 endparam param pz1 caption = "1st Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines the operator at work between the \ first two sections as shown in 'Section Order'" endparam param op5 caption = "2nd Section Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines the operator at work between the \ last two sections as shown in 'Section Order'" endparam param final caption = "Final Operator" enum = "+""-""invert -""*" default = 0 hint = "Determines the final interaction of the combined Z sections" endparam func fn5 caption = "Final function" default = ident() endfunc switch: type = "SuiteHypodoria" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc act = @act fnact = @fnact act1 = @act1 act2 = @act2 moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 rzm1 = @rzm1 izm1 = @izm1 fna = @fna fnb = @fnb xz1 = @xz1 op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b xz3 = @xz3 xc3 = @xc3 z3 = @z3 zm3 = @zm3 c3 = @c3 cm3 = @cm3 ec3 = @ec3 fn3a = @fn3a fn3b = @fn3b op5 = @op5 fn5 = @fn5 change = @change pz1 = @pz1 final = @final op4 = @op4 xz4 = @xz4 xc4 = @xc4 z4 = @z4 zm4 = @zm4 c4 = @c4 cm4 = @cm4 ec4 = @ec4 fn4a = @fn4a fn4b = @fn4b mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } Rondo { ; This formula redefines the Z variable a number of ; times in the loop, and combines the result in ; different selectable ways with selectable functions ; and params. ; ; "Rondo" has four different sections where Z ; is computed in the loop. It has two selectable ; Real/Imaginary(Z) sections and two "straight" ; sections. ; ; Schematic: Z1 (selectable mode), Z2, Z3 (selectable mode) ; and Z4. The final Z in Z1 feeds the initial Z in Z3 and ; the initial Z in Z2 both. "Rondo" differs from ; "Polyphonia" only in the fact that Z1 seeds Z2 as well ; as Z3. ; ; The two selectable sections have three options for Z: ; Complex Z, Real/Imaginary Z or R/I + Complex Z. Select ; with the "Mode parameter. ; ; Disclaimer: This was written for me and I have ; made no efforts to simplify or eliminate elements ; that I wanted to explore. I know that it is very ; complex and interactive, with a lot of user- ; selectable fields. I have included a check box ; to hide numeric params for easy navigation, and ; I have tried to include a fair number of hints. ; Beyond that you're on your own. Parameters and ; functions are hidden when not active. ; ; Because Z is recalculated a number of times in the ; loop this formula can be somewhat slow. ; ; Switch hint: If you find that the "action" is ; happening outside the switch window try resetting ; the "Switch Scale" parameter to 0.5 ; ; Based on a loop idea by Andrea Spinozzi. ; ; Toby Marshall, March 2004. v 1.2 (fixed param ; visibility) init: z = @startseed complex z1 = (0,0) complex z2 = (0,0) complex z3 = (0,0) complex z4 = (0,0) complex zri1 = (0,0) complex zri3 = (0,0) complex zri1a = (0,0) complex zri3a = (0,0) complex ari1 = (0,0) complex ari3 = (0,0) complex a1 = (0,0) complex a2 = (0,0) complex a3 = (0,0) complex c1 = (0,0) complex c2 = (0,0) complex c3 = (0,0) complex x = (0,0) complex imz1 = @imz1*(0.0,1.0) complex imz3 = @imz3*(0.0,1.0) c = pixel if @mode2 == "Mandelbrot" z = @startseed c = #pixel endif if @mode2 == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z/@scale endif if @center != (0.0,0.0) z = z + @center endif endif loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif ; Define the Z mode for "zri1" if @xza1 == "z" ari1 = z elseif @xza1 == "|z|" ari1 = |z| elseif @xza1 == "atan2(z)" ari1 = atan2(z) elseif @xza1 == "real(z)" ari1 = real(z) elseif @xza1 == "imag(z)" ari1 = imag(z) endif ; Split Z into R/I components and combine as "zri1" to be plugged in later if @moderi1 == "+"; R/I combination Z1 if @opri1=="+"; Z1 param operator zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)+(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "-" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)-(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "invert-" if @opri1=="+" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)+@priz1) elseif @opri1=="-" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)-@priz1) elseif @opri1=="*" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)*@priz1) elseif @opri1=="/" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)/@priz1) elseif @opri1=="^" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)-(@fna(real(ari1-@riz1)*@rzm1)/@priz1) endif elseif @moderi1 == "*" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)*(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "/" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)/(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "invert/" if @opri1=="+" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)+@priz1) elseif @opri1=="-" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)-@priz1) elseif @opri1=="*" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)*@priz1) elseif @opri1=="/" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)/@priz1) elseif @opri1=="^" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)/(@fna(real(ari1-@riz1)*@rzm1)/@priz1) endif elseif @moderi1 == "^" if @opri1=="+" zri1 = (@fna(real(ari1-@riz1)*@rzm1)+@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="-" zri1 = (@fna(real(ari1-@riz1)*@rzm1)-@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="*" zri1 = (@fna(real(ari1-@riz1)*@rzm1)*@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="/" zri1 = (@fna(real(ari1-@riz1)*@rzm1)/@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) elseif @opri1=="^" zri1 = (@fna(real(ari1-@riz1)*@rzm1)^@priz1)^(@fnb(imag(ari1-imz1)*@izm1)+@pimz1) endif elseif @moderi1 == "invert^" if @opri1=="+" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)+@priz1) elseif @opri1=="-" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)-@priz1) elseif @opri1=="*" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)*@priz1) elseif @opri1=="/" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)/@priz1) elseif @opri1=="^" zri1 = (@fnb(imag(ari1-imz1)*@izm1)+@pimz1)^(@fna(real(ari1-@riz1)*@rzm1)/@priz1) endif endif ; Process Zri1 variable with a C section if @act == "none" zri1a = zri1 elseif @act == "+" zri1a = zri1 + @fnact(c-@act1)^@act2 elseif @act == "-" zri1a = zri1 - @fnact(c-@act1)^@act2 elseif @act == "invert-" zri1a = @fnact(c-@act1)^@act2 - zri1 elseif @act == "*" zri1a = zri1 * @fnact(c-@act1)^@act2 elseif @act == "/" zri1a = zri1 / @fnact(c-@act1)^@act2 elseif @act == "invert/" zri1a = @fnact(c-@act1)^@act2 / zri1 elseif @act == "^" zri1a = zri1 ^ @fnact(c-@act1)^@act2 elseif @act == "invert^" zri1a = @fnact(c-@act1)^@act2 ^ zri1 endif ; Define the Z mode for "zri3"--it is seeded from the product of "z1" if @xza3 == "z" ari3 = z1 elseif @xza3 == "|z|" ari3 = |z1| elseif @xza3 == "atan2(z)" ari3 = atan2(z1) elseif @xza3 == "real(z)" ari3 = real(z1) elseif @xza3 == "imag(z)" ari3 = imag(z1) endif ; Split Z into R/I components and combine as "zri3" to be plugged in later if @moderi3 == "+"; R/I combination Z3 if @opri3=="+"; Z3 param operator zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)+(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "-" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)-(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "invert-" if @opri3=="+" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)+@priz3) elseif @opri3=="-" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)-@priz3) elseif @opri3=="*" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)*@priz3) elseif @opri3=="/" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) elseif @opri3=="^" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)-(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) endif elseif @moderi3 == "*" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)*(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "/" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)/(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "invert/" if @opri3=="+" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)+@priz3) elseif @opri3=="-" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)-@priz3) elseif @opri3=="*" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)*@priz3) elseif @opri3=="/" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) elseif @opri3=="^" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)/(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) endif elseif @moderi3 == "^" if @opri3=="+" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)+@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="-" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)-@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="*" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)*@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="/" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)/@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) elseif @opri3=="^" zri3 = (@fna3(real(ari3-@riz3)*@rzm3)^@priz3)^(@fnb3(imag(ari3-imz3)*@izm3)+@pimz3) endif elseif @moderi3 == "invert^" if @opri3=="+" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)+@priz3) elseif @opri3=="-" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)-@priz3) elseif @opri3=="*" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)*@priz3) elseif @opri3=="/" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) elseif @opri3=="^" zri3 = (@fnb3(imag(ari3-imz3)*@izm3)+@pimz3)^(@fna3(real(ari3-@riz3)*@rzm3)/@priz3) endif endif ; Process Zri3 variable with a C section if @act3 == "none" zri3a = zri3 elseif @act3 == "+" zri3a = zri3 + @fnact3(c-@act13)^@act23 elseif @act3 == "-" zri3a = zri3 - @fnact3(c-@act13)^@act23 elseif @act3 == "invert-" zri3a = @fnact3(c-@act13)^@act23 - zri3 elseif @act3 == "*" zri3a = zri3 * @fnact3(c-@act13)^@act23 elseif @act3 == "/" zri3a = zri3 / @fnact3(c-@act13)^@act23 elseif @act3 == "invert/" zri3a = @fnact3(c-@act13)^@act23 / zri3 elseif @act3 == "^" zri3a = zri3 ^ @fnact3(c-@act13)^@act23 elseif @act3 == "invert^" zri3a = @fnact3(c-@act13)^@act23 ^ zri3 endif ; Defines Z (mode and variables) for Z1 and Z3 sections if @rienable == "1:Z,3:Z" if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif elseif @rienable == "1:RI(Z),3:Z" if @xz1 == "z" a1 = zri1a elseif @xz1 == "|z|" a1 = |zri1a| elseif @xz1 == "atan2(z)" a1 = atan2(zri1a) elseif @xz1 == "real(z)" a1 = real(zri1a) elseif @xz1 == "imag(z)" a1 = imag(zri1a) endif if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif elseif @rienable == "1:RI(Z)+Z,3:Z" if @xz1 == "z" a1 = zri1a + @fnzz1(z) elseif @xz1 == "|z|" a1 = |zri1a|+ @fnzz1(z) elseif @xz1 == "atan2(z)" a1 = atan2(zri1a)+ @fnzz1(z) elseif @xz1 == "real(z)" a1 = real(zri1a)+ @fnzz1(z) elseif @xz1 == "imag(z)" a1 = imag(zri1a)+ @fnzz1(z) endif if @xz3 == "z" a3 = z elseif @xz3 == "|z|" a3 = |z| elseif @xz3 == "atan2(z)" a3 = atan2(z) elseif @xz3 == "real(z)" a3 = real(z) elseif @xz3 == "imag(z)" a3 = imag(z) endif elseif @rienable == "1:Z,3:RI(Z)" if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif if @xz3 == "z" a3 = zri3 elseif @xz3 == "|z|" a3 = |zri3| elseif @xz3 == "atan2(z)" a3 = atan2(zri3) elseif @xz3 == "real(z)" a3 = real(zri3) elseif @xz3 == "imag(z)" a3 = imag(zri3) endif elseif @rienable == "1:Z,3:RI(Z)+Z" if @xz1 == "z" a1 = z elseif @xz1 == "|z|" a1 = |z| elseif @xz1 == "atan2(z)" a1 = atan2(z) elseif @xz1 == "real(z)" a1 = real(z) elseif @xz1 == "imag(z)" a1 = imag(z) endif if @xz3 == "z" a3 = zri3a + @fnzz3(z) elseif @xz3 == "|z|" a3 = |zri3a|+ @fnzz3(z) elseif @xz3 == "atan2(z)" a3 = atan2(zri3a)+ @fnzz3(z) elseif @xz3 == "real(z)" a3 = real(zri3a)+ @fnzz3(z) elseif @xz3 == "imag(z)" a3 = imag(zri3a)+ @fnzz3(z) endif elseif @rienable == "1:RI(Z),3:RI(Z)" if @xz1 == "z" a1 = zri1a elseif @xz1 == "|z|" a1 = |zri1a| elseif @xz1 == "atan2(z)" a1 = atan2(zri1a) elseif @xz1 == "real(z)" a1 = real(zri1a) elseif @xz1 == "imag(z)" a1 = imag(zri1a) endif if @xz3 == "z" a3 = zri3a elseif @xz3 == "|z|" a3 = |zri3a| elseif @xz3 == "atan2(z)" a3 = atan2(zri3a) elseif @xz3 == "real(z)" a3 = real(zri3a) elseif @xz3 == "imag(z)" a3 = imag(zri3a) endif elseif @rienable == "1:RI(Z)+Z,3:RI(Z)" if @xz1 == "z" a1 = zri1a + @fnzz1(z) elseif @xz1 == "|z|" a1 = |zri1a|+ @fnzz1(z) elseif @xz1 == "atan2(z)" a1 = atan2(zri1a)+ @fnzz1(z) elseif @xz1 == "real(z)" a1 = real(zri1a)+ @fnzz1(z) elseif @xz1 == "imag(z)" a1 = imag(zri1a)+ @fnzz1(z) endif if @xz3 == "z" a3 = zri3a elseif @xz3 == "|z|" a3 = |zri3a| elseif @xz3 == "atan2(z)" a3 = atan2(zri3a) elseif @xz3 == "real(z)" a3 = real(zri3a) elseif @xz3 == "imag(z)" a3 = imag(zri3a) endif elseif @rienable == "1:RI(Z),3:RI(Z)+Z" if @xz1 == "z" a1 = zri1a elseif @xz1 == "|z|" a1 = |zri1a| elseif @xz1 == "atan2(z)" a1 = atan2(zri1a) elseif @xz1 == "real(z)" a1 = real(zri1a) elseif @xz1 == "imag(z)" a1 = imag(zri1a) endif if @xz3 == "z" a3 = zri3a + @fnzz3(z) elseif @xz3 == "|z|" a3 = |zri3a|+ @fnzz3(z) elseif @xz3 == "atan2(z)" a3 = atan2(zri3a)+ @fnzz3(z) elseif @xz3 == "real(z)" a3 = real(zri3a)+ @fnzz3(z) elseif @xz3 == "imag(z)" a3 = imag(zri3a)+ @fnzz3(z) endif elseif @rienable == "1:RI(Z)+Z,3:RI(Z)+Z" if @xz1 == "z" a1 = zri1a + @fnzz1(z) elseif @xz1 == "|z|" a1 = |zri1a|+ @fnzz1(z) elseif @xz1 == "atan2(z)" a1 = atan2(zri1a)+ @fnzz1(z) elseif @xz1 == "real(z)" a1 = real(zri1a)+ @fnzz1(z) elseif @xz1 == "imag(z)" a1 = imag(zri1a)+ @fnzz1(z) endif if @xz3 == "z" a3 = zri3a + @fnzz3(z) elseif @xz3 == "|z|" a3 = |zri3a|+ @fnzz3(z) elseif @xz3 == "atan2(z)" a3 = atan2(zri3a)+ @fnzz3(z) elseif @xz3 == "real(z)" a3 = real(zri3a)+ @fnzz3(z) elseif @xz3 == "imag(z)" a3 = imag(zri3a)+ @fnzz3(z) endif endif ; Define the mode of C in the Z1 section if @xc1 == "c" c1 = c elseif @xc1 == "|c|" c1 = |c| elseif @xc1 == "atan2(c)" c1 = atan2(c) elseif @xc1 == "real(c)" c1 = real(c) elseif @xc1 == "imag(c)" c1 = imag(c) endif ; Define the Z1 variable in the Z1 section if @op1 == "+"; Z1 operator z1 = @fn1a(a1-@z1)*@zm1+@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "-" z1 = @fn1a(a1-@z1)*@zm1-@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert-" z1 = @fn1b((c1-@c1)*@cm1)^@ec1-@fn1a(a1-@z1)*@zm1 elseif @op1 == "*" z1 = @fn1a(a1-@z1)*@zm1*@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "/" z1 = @fn1a(a1-@z1)*@zm1/@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert/" z1 = @fn1b((c1-@c1)*@cm1)^@ec1/@fn1a(a1-@z1)*@zm1 elseif @op1 == "^" z1 = @fn1a(a1-@z1)*@zm1^@fn1b((c1-@c1)*@cm1)^@ec1 elseif @op1 == "invert^" z1 = @fn1b((c1-@c1)*@cm1)^@ec1^@fn1a(a1-@z1)*@zm1 endif ; Define the modes of Z and C in the Z2 section if @xz2 == "z" a2 = zri3a elseif @xz2 == "|z|" a2 = |zri3a| elseif @xz2 == "atan2(z)" a2 = atan2(zri3a) elseif @xz2 == "real(z)" a2 = real(zri3a) elseif @xz2 == "imag(z)" a2 = imag(zri3a) endif if @xc2 == "c" c2 = c elseif @xc2 == "|c|" c2 = |c| elseif @xc2 == "atan2(c)" c2 = atan2(c) elseif @xc2 == "real(c)" c2 = real(c) elseif @xc2 == "imag(c)" c2 = imag(c) endif ; Define the Z2 variable in the Z2 section if @op2 == "+"; Z2 operator z2 = @fn2a(a2-@z2)/@zm2+@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "-" z2 = @fn2a(a2-@z2)/@zm2-@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert-" z2 = @fn2b((c2-@c2)*@cm2)^@ec2-@fn2a(a2-@z2)*@zm2 elseif @op2 == "*" z2 = @fn2a(a2-@z2)/@zm2*@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "/" z2 = @fn2a(a2-@z2)/@zm2/@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert/" z2 = @fn2b((c2-@c2)*@cm2)^@ec2/@fn2a(a2-@z2)*@zm2 elseif @op2 == "^" z2 = @fn2a(a2-@z2)/@zm2^@fn2b((c2-@c2)*@cm2)^@ec2 elseif @op2 == "invert^" z2 = @fn2b((c2-@c2)*@cm2)^@ec2^@fn2a(a2-@z2)*@zm2 endif ; Define the C mode in the Z3 section if @xc3 == "c" c3 = c elseif @xc3 == "|c|" c3 = |c| elseif @xc3 == "atan2(c)" c3 = atan2(c) elseif @xc3 == "real(c)" c3 = real(c) elseif @xc3 == "imag(c)" c3 = imag(c) endif ; Define the Z3 variable in the Z3 section if @op3 == "+"; Z3 operator z3 = @fn3a(a3-@z3)/@zm3+@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "-" z3 = @fn3a(a3-@z3)/@zm3-@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert-" z3 = @fn3b((c3-@c3)*@cm3)^@ec3-@fn3a(a3-@z3)*@zm3 elseif @op3 == "*" z3 = @fn3a(a3-@z3)/@zm3*@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "/" z3 = @fn3a(a3-@z3)/@zm3/@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert/" z3 = @fn3b((c3-@c3)*@cm3)^@ec3/@fn3a(a3-@z3)*@zm3 elseif @op3 == "^" z3 = @fn3a(a3-@z3)/@zm3^@fn3b((c3-@c3)*@cm3)^@ec3 elseif @op3 == "invert^" z3 = @fn3b((c3-@c3)*@cm3)^@ec3^@fn3a(a3-@z3)*@zm3 endif ; Choose how to combine Z1 and Z2 in X if @pz1 == "+"; Z1\Z2 Operator x = z1+z2 elseif @pz1 == "-" x = z1-z2 elseif @pz1 == "invert-" x = z2-z1 elseif @pz1 == "*" x = z1*z2 elseif @pz1 == "/" x = z1/z2 elseif @pz1 == "invert/" x = z2/z1 elseif @pz1 == "^" x = z1^z2 elseif @pz1 == "invert^" x = z2^z1 endif ; Choose how to combine Z3 with X if @op4 == "+"; Z4 Operator z4 = @fn4(x)+z3 elseif @op4 == "-" z4 = @fn4(x)-z3 elseif @op4 == "invert-" z4 = z3-@fn4(x) elseif @op4 == "invert/" z4 = z3/@fn4(x) elseif @op4 == "^" z4 = @fn4(x)^z3 elseif @op4 == "invert^" z4 = z3^@fn4(x) endif z = z4 + ((z-@fz1)/@fz2)^@fz3 bailout: |z|<=@bailout default: title = "Rondo" maxiter = 500 periodicity = 0 param version caption = "Version" default = 120 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode2 caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption="General Parameters" endheading param np caption = "Numeric Parameters" default = false endparam float param bailout caption = "Bailout" default = 50 min = 0 endparam complex param startseed caption = "Start/Seed" default = (1,0) hint = "Init Z for Mandelbrot, Seed for Julia" endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 12 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Mode Parameters" endheading param rienable caption = "Mode" enum = "1:Z,3:Z""1:RI(Z),3:Z""1:RI(Z)+Z,3:Z""1:Z,3:RI(Z)""1:Z,3:RI(Z)+Z"\ "1:RI(Z),3:RI(Z)""1:RI(Z)+Z,3:RI(Z)""1:RI(Z),3:RI(Z)+Z""1:RI(Z)+Z,3:RI(Z)+Z" default = 0 hint = "Determines the modes for the Z1 and Z3 sections, whether \ complex(z), real/imag(z) or a combination of the two." endparam func fnzz1 caption = "R/I(Z1) Function" default = ident() hint = "Applies a function if the mode selected includes 'RI1Z'" visible = (@rienable == 2 || @rienable == 6 || @rienable == 8) endfunc param xza1 caption = "R/I(Z1) Mode" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the mode of Z before it is split into real \ and imaginary components" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) endparam param moderi1 caption = "R/I(Z1) Op" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the real and imaginary Z sections are \ combined" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @np endparam param opri1 caption = "R/I(Z1) Param Op" enum = "+""-""*""/""^" default = 0 hint = "Determines the way a differential parameter is processed \ in the real(z) section" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param priz1 caption = "Re(Z1) Param 1" default = (0,1) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param pimz1 caption = "Im(Z1) Param 1" default = (0,1) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam float param riz1 caption = "Re(Z1) Param 2" default = 1.0 visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam float param imz1 caption = "Im(Z1) Param 2" default = 1.0 visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param rzm1 caption = "Re(Z1) Param 3" default = (1,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam complex param izm1 caption = "Im(Z1) Param 3" default = (1,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8)\ && @np endparam func fna caption = "Re(Z1) Function" default = ident() visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc func fnb caption = "Im(Z1) Function" default = ident() visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc heading caption = "" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) endheading param act caption = "R/I(Z1) Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "When active applies a C variable to the R/I(Z) section \ and determines how it operates" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) hint = "Processes the R/I variable by a C expression" endparam func fnact caption = "R/I(Z1) Accent Fn" default = ident () hint = "Applies a function to the above C variable" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 endfunc complex param act1 caption = "R/I(Z1) Accent P1" default = (0,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam complex param act2 caption = "R/I(Z1) Accent P2" default = (1,0) visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam heading caption = "" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endheading heading caption = "" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endheading func fnzz3 caption = "R/I(Z3) Function" default = ident() hint = "Applies a function if the mode selected includes 'RI3Z'" visible = (@rienable == 4 || @rienable == 7 || @rienable == 8 ) endfunc param xza3 caption = "R/I(Z3) Mode" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Determines the mode of Z before it is split into real \ and imaginary components" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endparam param moderi3 caption = "R/I(Z3) Op" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the real and imaginary Z sections are \ combined" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endparam param opri3 caption = "R/I(Z3) Param Op" enum = "+""-""*""/""^" default = 0 hint = "Determines the way a differential parameter is processed \ in the real(z) section" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endparam complex param priz3 caption = "Re(Z3) Param 1" default = (0,1) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam complex param pimz3 caption = "Im(Z3) Param 1" default = (0,1) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam float param riz3 caption = "Re(Z3) Param 2" default = 1.0 visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam float param imz3 caption = "Im(Z3) Param 2" default = 1.0 visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam complex param rzm3 caption = "Re(Z3) Param 3" default = (1,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam complex param izm3 caption = "Im(Z3) Param 3" default = (1,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) \ && @np endparam func fna3 caption = "Re(Z3) Function" default = ident() visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc func fnb3 caption = "Im(Z3) Function" default = ident() visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 || @rienable == 7 || @rienable == 8) endfunc heading caption = "" visible = (@rienable == 1 || @rienable == 2 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) endheading param act3 caption = "R/I(Z3) Accent" enum = "none""+""-""invert-""*""/""invert/""^""invert^" default = 0 visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8) hint = "When active applies a C variable to the R/I(Z) section \ and determines how it operates" endparam func fnact3 caption = "R/I(Z3) Accent Fn" default = ident () hint = "Applies a function to the above C variable" visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act3 != 0 endfunc complex param act13 caption = "R/I(Z3) Accent P1" default = (0,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam complex param act23 caption = "R/I(Z3) Accent P2" default = (1,0) visible = (@rienable == 3 || @rienable == 4 || @rienable == 5 \ || @rienable == 6 ||@rienable == 7 || @rienable == 8)\ && @act != 0 && @np endparam heading caption = "Z1 Section" endheading param op1 caption = "Z1 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 1 hint = "Determines how the single Z and single C \ variables in the Z1 section interact" endparam param xz1 caption = "Z1 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z1 section" endparam param xc1 caption = "Z1 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z1 section" endparam complex param z1 caption = "Z1 Param 1" default = (0,0) visible = @np endparam complex param zm1 caption = "Z1 Param 2" default = (1,0) visible = @np endparam complex param c1 caption = "Z1 Param 3" default = (0,0) visible = @np endparam complex param cm1 caption = "Z1 Param 4" default = (1,0) visible = @np endparam complex param ec1 caption = "Z1 Param 5" default = (1,0) visible = @np endparam func fn1a caption = "Z1 Function Z" default = ident() endfunc func fn1b caption = "Z1 Function C" default = ident() endfunc heading caption = "Z2 Section" endheading param op2 caption = "Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the single Z and single C \ variables in the Z2 section interact" endparam param xz2 caption = "Z2 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z2 section" endparam param xc2 caption = "Z2 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z2 section" endparam complex param z2 caption = "Z2 Param 1" default = (0,0) visible = @np endparam complex param zm2 caption = "Z2 Param 2" default = (1,0) visible = @np endparam complex param c2 caption = "Z2 Param 3" default = (0,0) visible = @np endparam complex param cm2 caption = "Z2 Param 4" default = (1,0) visible = @np endparam complex param ec2 caption = "Z2 Param 5" default = (1,0) visible = @np endparam func fn2a caption = "Z2 Function Z" default = ident() endfunc func fn2b caption = "Z2 Function C" default = ident() endfunc heading caption = "Z3 Section" endheading param op3 caption = "Z3 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the single Z and single C \ variables in the Z1 section interact" endparam param xz3 caption = "Z3 Mode Z" enum = "z""|z|""atan2(z)""real(z)""imag(z)" default = 0 hint = "Defines the mode of Z at the top of the \ Z3 section" endparam param xc3 caption = "Z3 Mode C" enum = "c""|c|""atan2(c)""real(c)""imag(c)" default = 0 hint = "Defines the mode of C at the top of the \ Z3 section" endparam complex param z3 caption = "Z3 Param 1" default = (0,0) visible = @np endparam complex param zm3 caption = "Z3 Param 2" default = (1,0) visible = @np endparam complex param c3 caption = "Z3 Param 3" default = (0,0) visible = @np endparam complex param cm3 caption = "Z3 Param 4" default = (1,0) visible = @np endparam complex param ec3 caption = "Z3 Param 5" default = (1,0) visible = @np endparam func fn3a caption = "Z3 Function Z" default = ident() endfunc func fn3b caption = "Z3 Function C" default = ident() endfunc heading caption = "Final" endheading param pz1 caption = "Z1\Z2 Operator" enum = "+""-""invert-""*""/""invert/""^""invert^" default = 0 hint = "Determines how the Z1 and Z2 sections are \ combined in the final section" visible = @np endparam param op4 caption = "Final Operator" enum = "+""-""invert-""invert/""^""invert^" default = 1 hint = "Determines how the combined Z1 and Z2 sections \ are subsequently combined with the Z3 section" endparam func fn4 caption = "Final function" default = ident() hint = "Applies a final function to the Z1/Z2 section \ combination" endfunc complex param fz1 caption = "Final Z Param 1" default = (0,0) visible = @np endparam complex param fz2 caption = "Final Z Param 2" default = (1,0) visible = @np endparam complex param fz3 caption = "Final Z Param 3" default = (1,0) visible = @np endparam switch: type = "Rondo" startseed = #pixel bailout = @bailout select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnz = @fnz fnc = @fnc pz1 = @pz1 op1 = @op1 rienable = @rienable moderi1 = @moderi1 opri1 = @opri1 priz1 = @priz1 pimz1 = @pimz1 riz1 = @riz1 imz1 = @imz1 fna = @fna fnb = @fnb fnzz1 = @fnzz1 act = @act fnact = @fnact act1 = @act1 act2 = @act2 xza1 = @xza1 xza3 = @xza3 moderi3 = @moderi3 opri3 = @opri3 priz3 = @priz3 pimz3 = @pimz3 riz3 = @riz3 imz3 = @imz3 fna3 = @fna3 fnb3 = @fnb3 fnzz3 = @fnzz3 act3 = @act3 fnact3 = @fnact3 act13 = @act13 act23 = @act23 xz1 = @xz1 xc1 = @xc1 z1 = @z1 zm1 = @zm1 c1 = @c1 cm1 = @cm1 ec1 = @ec1 fn1a = @fn1a fn1b = @fn1b op2 = @op2 xz2 = @xz2 xc2 = @xc2 z2 = @z2 zm2 = @zm2 c2 = @c2 cm2 = @cm2 ec2 = @ec2 fn2a = @fn2a fn2b = @fn2b op3 = @op3 xz3 = @xz3 xc3 = @xc3 z3 = @z3 zm3 = @zm3 c3 = @c3 cm3 = @cm3 ec3 = @ec3 fn3a = @fn3a fn3b = @fn3b fn4 = @fn4 fz1 = @fz1 fz2 = @fz2 fz3 = @fz3 op4 = @op4 mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale } NewtonTwist { ; ; An adaptation of the Newton formula in the "Standard" folder: ; a kind of hybrid Newton/Mandelbrot with a Julia switch. ; ; Because of the nature of the formula the "General" functions ; tend to have very strong effects. Use them at your own risk... ; The "Complex" loop type has some other functions that are not ; so annoying. ; ; Toby Marshall Aug. 2004, ver 1.9 ; (added an "Initial" section to define Z in various ways) ; init: z = @startseed c = pixel if @mode == "Mandelbrot" z = @startseed c = #pixel elseif @mode == "Julia" z = #pixel c = @startseed endif if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif loop: zold = z ; Select the global definition of Z if @select == "z"; select variable type z = @fn1(z-@zg)*@ezg elseif @select == "z+c" z = @fn1(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fn1(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fn1(z-@zg)*@ezg elseif @select == "z*c" z = @fn1(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fn1(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fn1(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fn1(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fn1(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fn1(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fn1(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fn1(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fn1(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fn1(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fn1(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fn1(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fn1(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fn1(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fn1(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fn1(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fn1(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fn1(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fn1(z-@zg)*@ezg z = @fn1(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fn1(z-@zg)*@ezg z = @fn1(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fn1(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fn1(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fn1(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fn1(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fn1(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fn1(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fn1(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fn1(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fn1(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fn1(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fn1(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fn1(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fn1(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fn1(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fn1(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fn1(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fn1(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fn1(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fn1(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fn1(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fn1(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fn1(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fn1(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fn1(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fn1(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fn1(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fn1(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fn1(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fn1(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif IF @loop == "complex" aa = (@p1 - 1)/@fn5(c*@p13-@p12)^@p14 bb = (@fn2(z*@p11-@p4)^@p1 + @r) IF @z1 == true cc = (@p1 * @fn3((z-@p3) ^ (@p1 -1))+@fn7(z*@p5-@p9)^@p6) ELSE cc = (@p1 * @fn3((z-p3) ^ (@p1 -1))-@fn7(z*@p5-@p9)^@p6) ENDIF dd = (aa * bb)-@fn6(z*@p7-@p10)^@p8 IF @op == "+" z = @fn0((dd) / cc + @fn4(c^@p2)) ELSEIF @op == "-" z = @fn0((dd) / cc - @fn4(c^@p2)) ELSEIF @op == "*" z = @fn0((dd) / cc * @fn4(c^@p2)) ELSEIF @op == "/" z = @fn0((dd) / cc / @fn4(c^@p2)) ENDIF ELSEIF @loop == "simple" IF @op == "+" z = @fn0(((@p1 - 1) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * @fn3((z-@p3) ^ \ (@p1 -1)))+@fn4(c^@p2)) ELSEIF @op == "-" z = @fn0(((@p1 - 1) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * @fn3((z-@p3) ^ \ (@p1 - 1)))-@fn4(c^@p2)) ELSEIF @op == "*" z = @fn0(((@p1 - 1) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * @fn3((z-@p3) ^ \ (@p1 - 1)))*@fn4(c^@p2)) ELSEIF @op == "/" z = @fn0(((@p1 - 1) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * @fn3((z-@p3) ^ \ (@p1 - 1)))/@fn4(c^@p2)) ENDIF ELSEIF @loop == "simple + pixel" IF @pop == "+" IF @op == "+" z = @fn0((((@p1 - 1) + @fn5(c)) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 -1)))+@fn4(c^@p2)) ELSEIF @op == "-" z = @fn0((((@p1 - 1) + @fn5(c)) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))-@fn4(c^@p2)) ELSEIF @op == "*" z = @fn0((((@p1 - 1) + @fn5(c)) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))*@fn4(c^@p2)) ELSEIF @op == "/" z = @fn0((((@p1 - 1) + @fn5(c)) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))/@fn4(c^@p2)) ENDIF ELSEIF @pop == "-" IF @op == "+" z = @fn0((((@p1 - 1) - @fn5(c)) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 -1)))+@fn4(c^@p2)) ELSEIF @op == "-" z = @fn0((((@p1 - 1) - @fn5(c)) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))-@fn4(c^@p2)) ELSEIF @op == "*" z = @fn0((((@p1 - 1) - @fn5(c)) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))*@fn4(c^@p2)) ELSEIF @op == "/" z = @fn0((((@p1 - 1) - @fn5(c)) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))/@fn4(c^@p2)) ENDIF ELSEIF @pop == "*" IF @op == "+" z = @fn0(((@p1 - 1) * @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 -1)))+@fn4(c^@p2)) ELSEIF @op == "-" z = @fn0(((@p1 - 1) * @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))-@fn4(c^@p2)) ELSEIF @op == "*" z = @fn0(((@p1 - 1) * @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))*@fn4(c^@p2)) ELSEIF @op == "/" z = @fn0(((@p1 - 1) * @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))/@fn4(c^@p2)) ENDIF ELSEIF @pop == "/" IF @op == "+" z = @fn0(((@p1 - 1) / @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 -1)))+@fn4(c^@p2)) ELSEIF @op == "-" z = @fn0(((@p1 - 1) / @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))-@fn4(c^@p2)) ELSEIF @op == "*" z = @fn0(((@p1 - 1) / @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))*@fn4(c^@p2)) ELSEIF @op == "/" z = @fn0(((@p1 - 1) / @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))/@fn4(c^@p2)) ENDIF ELSEIF @pop == "^" IF @op == "+" z = @fn0(((@p1 - 1) ^ @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 -1)))+@fn4(c^@p2)) ELSEIF @op == "-" z = @fn0(((@p1 - 1) ^ @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))-@fn4(c^@p2)) ELSEIF @op == "*" z = @fn0(((@p1 - 1) ^ @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))*@fn4(c^@p2)) ELSEIF @op == "/" z = @fn0(((@p1 - 1) ^ @fn5(c) * @fn2(z*@p11-@p4)^@p1 + @r) / (@p1 * \ @fn3((z-@p3) ^ (@p1 - 1)))/@fn4(c^@p2)) ENDIF ENDIF ENDIF bailout: |z - zold| >= @bail default: title = "Newton Twist" maxiter = 1000 periodicity = 0 center = (0.98125, 0.00625) param version caption = "Version" default = 200 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 0 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) endparam complex param ezg caption = "Z Param 2" default = (1,0) endparam complex param cg caption = "C Param 1" default = (0,0) visible = @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @select != 0 endparam func fn1 caption = "Initial Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Initial C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Formula Parameters" endheading complex param startseed caption = "Start/Seed" default = (7,0) hint = "Defines the Init Z value for the Mandelbrot, \ seed value for the Julia." endparam param bail caption = "Bailout" default = .000001 hint = "Try changing this value if you find holes in the center \ of your figures." endparam param loop caption = "Loop Type" enum = "Simple""Simple + Pixel""Complex" default = 0 endparam param op caption = "Operator" enum = "+""-""*""/" default = 2 endparam param pop caption = "Pixel Operator" enum = "+""-""*""/""^" default = 0 visible = @loop == "simple + pixel" endparam complex param p1 caption = "Exponent" default = (3,0) endparam complex param r caption = "Root" default = (1,0) endparam heading caption = "Pixel" endheading complex param p2 caption = "C Param" default = (1,0) endparam complex param p12 caption = "C Param 2" default = (0,0) visible = @loop == "complex" endparam complex param p13 caption = "C Param 3" default = (1,0) visible = @loop == "complex" endparam complex param p14 caption = "C Param 4" default = (1,0) visible = @loop == "complex" endparam heading caption = "1st Z" endheading complex param p4 caption = "Z1 Param 1" default = (0,0) endparam complex param p11 caption = "Z1 Param 2" default = (1,0) endparam heading caption = "2nd Z" endheading complex param p3 caption = "Z2 Param 1" default = (0,0) endparam heading caption = "3rd Z" visible = @loop == "complex" endheading complex param p5 caption = "Z3 Param 1" default = (1,0) visible = @loop == "complex" endparam complex param p9 caption = "Z3 Param 2" default = (0,0) visible = @loop == "complex" endparam float param p6 caption = "Z3 Param 3" default = 1 visible = @loop == "complex" endparam heading caption = "4th Z" visible = @loop == "complex" endheading complex param p7 caption = "Z4 Param 1" default = (1,0) visible = @loop == "complex" endparam complex param p10 caption = "Z4 Param 2" default = (0,0) visible = @loop == "complex" endparam float param p8 caption = "Z4 Param 3" default = 1 visible = @loop == "complex" endparam bool param z1 caption = "Change Z" default = false visible = @loop == "complex" endparam heading caption = "Pixel Functions" endheading func fn4 caption = "C Function" default = ident () endfunc func fn5 caption = "C Function 2" default = ident () visible = @loop != "Simple" endfunc heading caption = "General Functions" endheading func fn0 caption = "Global Function" default = ident () endfunc func fn2 caption = "Radical Z1 Function" default = ident () endfunc func fn3 caption = "Radical Z2 Function" default = ident () endfunc heading caption = "Complex Functions" visible = @loop == "Complex" endheading func fn6 caption = "Z Function 3" default = ident () visible = @loop == "complex" endfunc func fn7 caption = "Z Function 4" default = ident () visible = @loop == "complex" endfunc switch: type = "NewtonTwist" startseed = pixel loop = @loop fn0 = @fn0 fn1 = @fn1 fnc = @fnc fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 p1 = @p1 p2 = @p2 p3 = @p3 p4 = @p4 p5 = @p5 p6 = @p6 p7 = @p7 p8 = @p8 p9 = @p9 p10 = @p10 p11 = @p11 p12 = @p12 p13 = @p13 p14 = @p14 zg = @zg ezg = @ezg cg = @cg ecg = @ecg cmg = @cmg r = @r z1 = @z1 bail = @bail select = @select op = @op pop = @pop mode=@switchmode switchmode=@mode center=@swcenter scale=@swscale } Spirals'n'Newtons { ; ; This is the result of trying to adapt a Newton formula found ; in "Fractal Explorer" for use in UF. It produces two very different ; kinds of results: ; ; Use "Spirals" to get spiral figures with holes in the center (using the ; switch of course). These normally have no outer boundaries, and will ; happily proceed out ad infinitum if you set the max. iters high enough ; in the formula. Once the max is reached, however, the cutoff is abrupt. ; To get nice rosettes you must use a coloring that allows you to limit ; the maximum number of iterations. Perhaps these "faux" spirals ; are useful for framing or backgrounds as well. ; ; Use "Newtons" to get hybrid Newton/Mandy figures such as ; are produced by "Newton Twist" ; ; HINTS: Setting P4 to (0,0) will give you simple spirals in either ; mode. Try setting "Initial Z Func" to "abs" for nice backgrounds. ; I find it useful to set the switch scale to .1 or .2 in order to ; see more in the switch window. ; ; Toby Marshall Sept. 2004, ver 2.0 ; init: z = @startseed c = pixel if @mode == "Mandelbrot" z = @startseed c = #pixel elseif @mode == "Julia" z = #pixel c = @startseed endif if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif loop: zold = z ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif if @inv == "Spirals" a = z else a = 1/z endif if @option == "First" if @loop == "First" if @op == "++" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z+@pa)))*c+@fn2 \ (z-@pf)*@pc elseif @op == "-+" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z-@pa)))*c+@fn2 \ (z-@pf)*@pc elseif @op == "+-" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z+@pa)))*c-@fn2 \ (z-@pf)*@pc elseif @op == "--" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z-@pa)))*c-@fn2 \ (z-@pf)^@pc endif elseif @loop == "Second" if @op == "++" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z+@pa/(@ph*z^(@pg-1)*@pa))))\ *c+@fn2(z-@pf)*@pc elseif @op == "-+" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z-@pa/(@ph*z^(@pg-1)*@pa))))\ *c+@fn2(z-@pf)*@pc elseif @op == "+-" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z+@pa/(@ph*z^(@pg-1)*@pa))))\ *c-@fn2(z-@pf)*@pc elseif @op == "--" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z-@pa/(@ph*z^(@pg-1)*@pa))))\ *c-@fn2(z-@pf)*@pc endif endif elseif @option == "Second" if @loop == "First" if @op == "++" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z+@pa))*c+@fn2 \ (z-@pf)*@pc) elseif @op == "-+" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z-@pa))*c+@fn2 \ (z-@pf)*@pc) elseif @op == "+-" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z+@pa))*c-@fn2 \ (z-@pf)*@pc) elseif @op == "--" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z-@pa))*c-@fn2 \ (z-@pf)^@pc) endif elseif @loop == "Second" if @op == "++" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z+@pa/(@ph*z^(@pg-1)*@pa)))\ *c+@fn2(z-@pf)*@pc) elseif @op == "-+" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z-@pa/(@ph*z^(@pg-1)*@pa)))\ *c+@fn2(z-@pf)*@pc) elseif @op == "+-" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z+@pa/(@ph*z^(@pg-1)*@pa)))\ *c-@fn2(z-@pf)*@pc) elseif @op == "--" z = @fn3(@fn1(a-@pe)*@pd-((@pa*z^@pg-@pb*z-@pa/(@ph*z^(@pg-1)*@pa)))\ *c-@fn2(z-@pf)*@pc) endif endif endif bailout: |z - zold| >= @bail default: title = "Spirals'n'Newtons" maxiter = 1000 periodicity = 0 param version caption = "Version" default = 200 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 0 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) endparam complex param ezg caption = "Z Param 2" default = (1,0) endparam complex param cg caption = "C Param 1" default = (0,0) visible = @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @select != 0 endparam func fnz caption = "Initial Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Initial C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Formula Parameters" endheading param inv caption = "Formula Type" enum = "Spirals""Newtons" default = 0 endparam param loop caption = "Loop" enum = "First""Second" default = 0 endparam param option caption = "Prededence" enum = "First""Second" default = 0 endparam complex param startseed caption = "Start/Seed" default = (7,0) hint = "Defines the Init Z value for the Mandelbrot, \ seed value for the Julia." endparam param bail caption = "Bailout" default = .000001 hint = "Try changing this value if you find holes in the center \ of your figures." endparam param op caption = "Operators" enum = "++""-+""+-""--" default = 3 endparam complex param pa caption = "Param 1" default = (3,0) endparam complex param pb caption = "Param 2" default = (0,0) endparam complex param pc caption = "Param 3" default = (1,0) endparam complex param pd caption = "Param 4" default = (1,0) endparam complex param pe caption = "Param 5" default = (0,0) endparam complex param pf caption = "Param 6" default = (0,0) endparam complex param pg caption = "Param 7" default = (1,0) endparam complex param ph caption = "Param 8" default = (4,0) visible = @loop == "Second" endparam heading caption = "Loop Functions" endheading func fn3 caption = "Global Function" default = ident () endfunc func fn1 caption = "Z Function" default = ident () endfunc func fn2 caption = "C Function" default = ident () endfunc switch: type = "Spirals'n'Newtons" startseed = pixel loop = @loop fnc = @fnc fnz = @fnz fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 pa = @pa pg = @pg pb = @pb pc = @pc pe = @pe pd = @pd pf = @pf ph = @ph zg = @zg ezg = @ezg cg = @cg ecg = @ecg cmg = @cmg inv = @inv bail = @bail select = @select op = @op option = @option mode=@switchmode switchmode=@mode center=@swcenter scale=@swscale } NewtonTwirl { ; ; An adaptation of the Newton formula in the "Standard" folder, ; and a close cousin of "Newton Twist". ; ; The functions seem pretty useless, but I've left them in ; on the off chance they will yield something interesting. ; ; Toby Marshall Oct. 2004, ver 1.0 ; init: z = @startseed c = pixel if @mode == "Mandelbrot" z = @startseed c = #pixel elseif @mode == "Julia" z = #pixel c = @startseed endif if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif loop: zold = z ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif IF @inv == true a = 1/z ELSE a = z ENDIF IF @loop == "simple" IF @op == "+" z = @fn0((@fn00(a) -(@p3*z^@p1-@p3*z^(@p1-1)-@p2)/(@p3*@p1*z^(@p1-1)-z*@p3-z))+c^@p4) ELSEIF @op == "-" z = @fn0((@fn00(a) -(@p3*z^@p1-@p3*z^(@p1-1)-@p2)/(@p3*@p1*z^(@p1-1)-z*@p3-z))-c^@p4) ELSEIF @op == "*" z = @fn0((@fn00(a) -(@p3*z^@p1-@p3*z^(@p1-1)-@p2)/(@p3*@p1*z^(@p1-1)-z*@p3-z))*c^@p4) ELSEIF @op == "/" z = @fn0((@fn00(a) -(@p3*z^@p1-@p3*z^(@p1-1)-@p2)/(@p3*@p1*z^(@p1-1)-z*@p3-z))/c^@p4) ENDIF ELSEIF @loop == "simple + pixel" IF @op == "+" z = @fn0(((@fn00(a)-(c-@p5)) -(@p3*z^@p1-@p3*z^(@p1-1)-@p2)/(@p3*@p1*z^(@p1-1)-z*@p3-z))+c^@p4) ELSEIF @op == "-" z = @fn0(((@fn00(a)-(c-@p5)) -(@p3*z^@p1-@p3*z^(@p1-1)-@p2)/(@p3*@p1*z^(@p1-1)-z*@p3-z))-c^@p4) ELSEIF @op == "*" z = @fn0(((@fn00(a)-(c-@p5)) -(@p3*z^@p1-@p3*z^(@p1-1)-@p2)/(@p3*@p1*z^(@p1-1)-z*@p3-z))*c^@p4) ELSEIF @op == "/" z = @fn0(((@fn00(a)-(c-@p5)) -(@p3*z^@p1-@p3*z^(@p1-1)-@p2)/(@p3*@p1*z^(@p1-1)-z*@p3-z))/c^@p4) ENDIF ENDIF bailout: |z - zold| >= @bail default: title = "Newton Twirl" maxiter = 1000 periodicity = 0 center = (0.98125, 0.00625) param version caption = "Version" default = 100 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 0 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) endparam complex param ezg caption = "Z Param 2" default = (1,0) endparam complex param cg caption = "C Param 1" default = (0,0) visible = @select != 0 endparam complex param cmg caption = "C Param 2" visible = @select != 0 default = (1,0) endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Formula Parameters" endheading complex param startseed caption = "Start/Seed" default = (7,0) hint = "Defines the Init Z value for the Mandelbrot, \ seed value for the Julia." endparam param bail caption = "Bailout" default = .000001 hint = "Try changing this value if you find holes in the center \ of your figures." endparam param loop caption = "Loop Type" enum = "Simple""Simple + Pixel" default = 0 endparam param op caption = "Operator" enum = "+""-""*""/" default = 2 endparam bool param @inv caption = "Invert" default = false endparam complex param p1 caption = "Exponent" default = (3,0) endparam complex param p2 caption = "Z2 Param" default = (1,0) endparam complex param p3 caption = "Z3 Param" default = (1,0) endparam complex param p4 caption = "C1 Param" default = (1,0) endparam complex param p5 caption = "C2 Param" default = (0,0) endparam func fn0 caption = "Function 1" default = ident () endfunc func fn00 caption = "Function 2" default = ident () endfunc switch: type = "NewtonTwirl" startseed = pixel loop = @loop fn0 = @fn0 fn00 = @fn00 fnz = @fnz fnc = @fnc p1 = @p1 p2 = @p2 p3 = @p3 p4 = @p4 p5 = @p5 p6 = @p6 p7 = @p7 p8 = @p8 p9 = @p9 p10 = @p10 p11 = @p11 p12 = @p12 p13 = @p13 p14 = @p14 z1 = @z1 zg = @zg ezg = @ezg cg = @cg ecg = @ecg cmg = @cmg bail = @bail inv = @inv select = @select op = @op pop = @pop mode=@switchmode switchmode=@mode center=@swcenter scale=@swscale } mandyGlyph { ; Original by Samuel Monnier, 19.3.00 ; Modified Vine formula (from Mark Townsend) ; Major tweaks by Toby Marshall to add parameters ; and functions and turn it into a Mandy/Julia ; ; Toby Marshall ; 11.11.2004, v 1.0 init: z = @startseed c = pixel if @mode == "Mandelbrot" z = @startseed c = #pixel elseif @mode == "Julia" z = #pixel c = @startseed endif if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif x = 0 y = 0 newx = 0 newy = 0 int iter = 0 int i = 0 loop: iter = iter + 1 x = real(@fnx(z)) + flip(real(@startseed/100)) y = imag(@fny(z)) + flip(imag(@startseed/100)) newx = y newy = x i = 0 IF @op2 == "++++" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) z = x + flip(y) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "+++-" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "++-+" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "+-++" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "-+++" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "++--" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "+--+" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "--++" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "-++-" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "+-+-" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "-+-+" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "+---" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "-+--" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "--+-" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "---+" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "----" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ENDIF IF @op == "x+y" z = @fna((x-@parx)*@parx2)^@parx3 + flip(@fnb((y-@pary)*@pary2)^@pary3) ELSEIF @op == "x-y" z = @fna((x-@parx)*@parx2)^@parx3 - flip(@fnb((y-@pary)*@pary2)^@pary3) ELSEIF @op == "y-x" z = flip(@fnb((y-@pary)*@pary2)^@pary3) - @fna((x-@parx)*@parx2)^@parx3 ENDIF IF @loop == "Simple" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 ELSEIF @loop == "Complex" IF @op4 == "+" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "+" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "*" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "/" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "^" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((z-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ENDIF ENDIF bailout: iter <= @bail default: title = "Mandy Glyph" param version caption = "Version" default = 1.0 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption = "Parameters" endheading param loop caption = "Loop Type" enum = "Simple""Complex" default = 0 endparam complex param startseed caption = "Start/Seed" default = (0.0,0.0) endparam int param bail caption = "Bailout" default = 20 endparam int param flavor caption = "Flavor" default = 2 min = 0 endparam complex param parx caption = "X Offset" default = (0,0) endparam complex param parx2 caption = "X Strength" default = (1,0) endparam complex param parx3 caption = "X Power" default = (1,0) endparam complex param pary caption = "Y Offset" default = (0,0) endparam complex param pary2 caption = "Y Strength" default = (1,0) endparam complex param pary3 caption = "Y Power" default = (1,0) endparam complex param zpar1 caption = "Z Offset" default = (0,0) endparam complex param zpar2 caption = "Z Strength" default = (1,0) endparam complex param zpar3 caption = "Z Power" default = (1,0) endparam complex param cpar1 caption = "C Offset" default = (0,0) endparam complex param cpar2 caption = "C Strength" default = (1,0) endparam complex param cpar3 caption = "C Power" default = (1,0) endparam complex param zzpar1 caption = "Z2 Offset" default = (0,0) visible = @loop == "Complex" endparam complex param zzpar2 caption = "Z2 Strength" default = (1,0) visible = @loop == "Complex" endparam complex param zzpar3 caption = "Z2 Power" default = (1,0) visible = @loop == "Complex" endparam complex param ccpar1 caption = "C2 Offset" default = (0,0) visible = @loop == "Complex" endparam complex param ccpar2 caption = "C2 Strength" default = (1,0) visible = @loop == "Complex" endparam complex param ccpar3 caption = "C2 Power" default = (1,0) visible = @loop == "Complex" endparam float param a1 caption = "Alpha 1" default = 2.7 endparam float param a2 caption = "Alpha 2" default = 2.7 endparam float param a3 caption = "Alpha 3" default = 2.7 endparam float param a4 caption = "Alpha 4" default = 2.7 endparam complex param h1a caption = "Step size Ia" default = (.05,.05) endparam complex param h1b caption = "Step size Ib" default = (.05, .05) endparam complex param h2a caption = "Step size IIa" default = (.8,.8) endparam complex param h2b caption = "Step size IIb" default = (.8,.8) endparam param op caption = "Main Operator" enum = "x+y""x-y""y-x" default = 0 endparam param op1 caption = "Operator 1" enum = "++++""+++-""++-+""+-++""-+++""++--""+--+""--++" \ "-++-""+-+-""-+-+""+---""-+--""--+-""---+""----" default = 0 endparam param op2 caption = "Operator 2" enum = "++++""+++-""++-+""+-++""-+++""++--""+--+""--++" \ "-++-""+-+-""-+-+""+---""-+--""--+-""---+""----" default = 7 endparam param op3 caption = "Operator 3" enum = "+""-""*""/""^" default = 2 visible = @loop == "Complex" endparam param op4 caption = "Operator 4" enum = "+""-""*""/""^" default = 0 visible = @loop == "Complex" endparam heading caption = "Glyph Functions" endheading func fn1 caption = "Function 1" default = sin() endfunc func fn2 caption = "Function 2" default = sin() endfunc func fn3 caption = "Function 3" default = cos() endfunc func fn4 caption = "Function 4" default = cos() endfunc func fn5 caption = "Function 5" default = sin() endfunc func fn6 caption = "Function 6" default = sin() endfunc func fn7 caption = "Function 7" default = cos() endfunc func fn8 caption = "Function 8" default = cos() endfunc heading caption = "Loop Functions" endheading func fnc caption = "C Function" default = ident() endfunc func fncc caption = "C2 Function" default = ident() visible = @loop == "Complex" endfunc func fnz caption = "Z Function" default = ident() endfunc func fnzz caption = "Z2 Function" default = ident() visible = @loop == "Complex" endfunc func fna caption = "Initial X Fn" default = ident() endfunc func fnb caption = "Initial Y Fn" default = ident() endfunc func fnx caption = "Global X Fn" default = ident() endfunc func fny caption = "Global Y Fn" default = ident() endfunc switch: type = "mandyGlyph" startseed = pixel flavor = @flavor a1= @a1 a2 = @a2 h1a = @h1a h1b = @h1b h2a = @h2a h2b = @h2b op = @op op1 = @op1 op2 = @op2 op3 = @op3 op4 = @op4 zpar1 = @zpar1 zpar2 = @zpar2 zpar3 = @zpar3 cpar1 = @cpar1 cpar2 = @cpar2 cpar3 = @cpar3 zzpar1 = @zzpar1 zzpar2 = @zzpar2 zzpar3 = @zzpar3 ccpar1 = @ccpar1 ccpar2 = @ccpar2 ccpar3 = @ccpar3 fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 fna = @fna fnb = @fnb fnc = @fnc fncc = @fncc fnx = @fnx fny = @fny fnz = @fnz fnzz = @fnzz bail = @bail mode=@switchmode switchmode=@mode center=@swcenter scale=@swscale loop = @loop parx = @parx parx2 = @parx2 parx3 = @parx3 pary = @pary pary2 = @pary2 pary3 = @pary3 } ******************************************************* niftyGlyph { ; Original by Samuel Monnier, 19.3.00 ; Modified Vine formula (from Mark Townsend) ; Major tweaks by Toby Marshall ; 11.11.2004, v 1.0 init: z = #pixel x = 0 y = 0 newx = 0 newy = 0 int iter = 0 int i = 0 loop: iter = iter + 1 x = real(@fnx(z)) + flip(real(@start/100)) y = imag(@fny(z)) + flip(imag(@start/100)) newx = y newy = x i = 0 IF @op2 == "++++" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) z = x + flip(y) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "+++-" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "++-+" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "+-++" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "-+++" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "++--" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "+--+" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "--++" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "-++-" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "+-+-" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "-+-+" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "+---" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x + real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "-+--" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) + imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "--+-" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y + real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "---+" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) + imag(@h1b)*@fn8(newy) ENDIF ELSEIF @op2 == "----" IF @op1 == "++++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+++-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++-+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-++" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "++--" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+--+" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--++" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-++-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+-+-" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+-+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "+---" while i < @flavor i = i + 1 newx = y + real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "-+--" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) + imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "--+-" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x + real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "---+" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) + imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ELSEIF @op1 == "----" while i < @flavor i = i + 1 newx = y - real(@h2a)*@fn1(@a1 * newx) - imag(@h2a)*@fn3(@a2 * newx) newy = x - real(@h2b)*@fn2(@a3 * newy) - imag(@h2b)*@fn4(@a4 * newy) endwhile x = x - real(@h1a)*@fn5(newx) - imag(@h1a)*@fn7(newx) y = y - real(@h1b)*@fn6(newy) - imag(@h1b)*@fn8(newy) ENDIF ENDIF IF @op == "x+y" z = @fna(x) + flip(@fnb(y)) ELSEIF @op == "x-y" z = @fna(x)- flip(@fnb(y)) ELSEIF @op == "y-x" z = flip(@fnb(y)) - @fna(x) ENDIF bailout: iter <= @bail default: title = "Nifty Glyph" param version caption = "Version" default = 1.0 visible = false endparam heading caption = "Parameters" endheading complex param start caption = "Start" default = (0.0,0.0) endparam int param bail caption = "Bailout" default = 20 endparam int param flavor caption = "Flavor" default = 2 min = 0 endparam float param a1 caption = "Alpha 1" default = 2.7 endparam float param a2 caption = "Alpha 2" default = 2.7 endparam float param a3 caption = "Alpha 3" default = 2.7 endparam float param a4 caption = "Alpha 4" default = 2.7 endparam complex param h1a caption = "Step size Ia" default = (.05,.05) endparam complex param h1b caption = "Step size Ib" default = (.05, .05) endparam complex param h2a caption = "Step size IIa" default = (.8,.8) endparam complex param h2b caption = "Step size IIb" default = (.8,.8) endparam param op caption = "Main Operator" enum = "x+y""x-y""y-x" default = 0 endparam param op1 caption = "Operator 1" enum = "++++""+++-""++-+""+-++""-+++""++--""+--+""--++" \ "-++-""+-+-""-+-+""+---""-+--""--+-""---+""----" default = 0 endparam param op2 caption = "Operator 2" enum = "++++""+++-""++-+""+-++""-+++""++--""+--+""--++" \ "-++-""+-+-""-+-+""+---""-+--""--+-""---+""----" default = 7 endparam heading caption = "Functions" endheading func fn1 caption = "Function 1" default = sin() endfunc func fn2 caption = "Function 2" default = sin() endfunc func fn3 caption = "Function 3" default = cos() endfunc func fn4 caption = "Function 4" default = cos() endfunc func fn5 caption = "Function 5" default = sin() endfunc func fn6 caption = "Function 6" default = sin() endfunc func fn7 caption = "Function 7" default = cos() endfunc func fn8 caption = "Function 8" default = cos() endfunc func fna caption = "Initial X Fn" default = ident() endfunc func fnb caption = "Initial Y Fn" default = ident() endfunc func fnx caption = "Global X Fn" default = ident() endfunc func fny caption = "Global Y Fn" default = ident() endfunc } ******************************************************* MandyGnarl { ; ; Here is a permutation of a permutation of Mark Townsend's ; "Gnarl" formula. I took my "Gneo Gnarl 2" and turned it into ; a Mandy/Julia switchable formula, somewhat similar to "Mandy ; Glyph" but with a lot more parameters. It makes interesting ; spirals and I think will be especially valuable for making ; free-form backgrounds. ; ; HINT: You will probably want to vary the value of the ; "Scale" parameter in the switch params sometimes, as ; the size of the Julia figure varies greatly depending ; on how far you are from the center of the Mandy figure. ; ; Toby Marshall, 15 Feb. 2005 ; version 1.1 init: complex c = (0,0) if @mode == "Mandelbrot" z = @startseed c = #pixel elseif @mode == "Julia" z = #pixel c = @startseed endif if @sscale != 1.0 z = z / @sscale endif if @center != (0.0,0.0) z = z + @center endif float x = 0 float y = 0 float xx = 0 int iter = 0 complex tz = (0,0) a = 0 b = 0 k = 0 d = 0 g = 0 f = 0 h = 0 j = 0 complex v = g^@ex6 + @fn6a(h^@ex7 - @d1) complex w = f^@ex5 + @fn6b(j^@ex8 - @d2) loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnzInit(z-@zg)*@ezg elseif @select == "z+c" z = @fnzInit(z-@zg)*@ezg + @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z-c" z = @fnzInit(z-@zg)*@ezg - @fncInit(c-@cg)*@cmg^@ecg elseif @select == "c-z" z = @fncInit(c-@cg)*@cmg^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z*c" z = @fnzInit(z-@zg)*@ezg * @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z/c" z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z+c|z+c" z = @fnzInit(z-@zg)*@ezg + @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg + @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z+c|c-z" z = @fnzInit(z-@zg)*@ezg + @fncInit(c-@cg)*@cmg^@ecg z = @fncInit(c-@cg)*@cmg^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnzInit(z-@zg)*@ezg + @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg * @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z+c|z/c" z = @fnzInit(z-@zg)*@ezg + @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z-c|z-c" z = @fnzInit(z-@zg)*@ezg - @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg - @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z-c|c-z" z = @fnzInit(z-@zg)*@ezg - @fncInit(c-@cg)*@cmg^@ecg z = @fncInit(c-@cg)*@cmg^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnzInit(z-@zg)*@ezg - @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg * @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z-c|z/c" z = @fnzInit(z-@zg)*@ezg - @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg elseif @select == "c-z|z*c" z = @fncInit(c-@cg)*@cmg^@ecg - @fnzInit(z-@zg)*@ezg z = @fnzInit(z-@zg)*@ezg * @fncInit(c-@cg)*@cmg^@ecg elseif @select == "c-z|z/c" z = @fncInit(c-@cg)*@cmg^@ecg - @fnzInit(z-@zg)*@ezg z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z*c|c-z" z = @fnzInit(z-@zg)*@ezg * @fncInit(c-@cg)*@cmg^@ecg z = @fncInit(c-@cg)*@cmg^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnzInit(z-@zg)*@ezg * @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg * @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z/c|z+c" z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg + @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z/c|z-c" z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg - @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z/c|c-z" z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg z = @fncInit(c-@cg)*@cmg^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg*@fncInit(c-@cg)*@cmg^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg/@fncInit(c-@cg)*@cmg^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg/@fncInit(c-@cg)*@cmg^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg*@fncInit(c-@cg)*@cmg^@ecg)-(real(z)+imag(z)) z = (@fnzInit(z-@zg)*@ezg*@fncInit(c-@cg)*@cmg^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg/@fncInit(c-@cg)*@cmg^@ecg)-(real(z)+imag(z)) z = (@fnzInit(z-@zg)*@ezg/@fncInit(c-@cg)*@cmg^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnzInit(z-@zg)*@ezg*@fncInit(c-@cg)*@cmg^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg + @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnzInit(z-@zg)*@ezg*@fncInit(c-@cg)*@cmg^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg - @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnzInit(z-@zg)*@ezg*@fncInit(c-@cg)*@cmg^@ecg)+(real(z)+imag(z)) z = @fncInit(c-@cg)*@cmg^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnzInit(z-@zg)*@ezg*@fncInit(c-@cg)*@cmg^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg * @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnzInit(z-@zg)*@ezg*@fncInit(c-@cg)*@cmg^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg endif iter = iter + 1 x = real(z^@exx)/(@scaleX * @scaleAll) y = imag(z)/(@scaleY*@scaleAll) xx = x IF @style == "1" a = y b = xx k = y d = xx ELSEIF @style == "2" a = y b = xx k = y d = y ELSEIF @style == "3" a = y b = y k = y d = y ELSEIF @style == "4" a = y b = xx k = xx d = xx ELSEIF @style == "5" a = y b = y k = y d = xx ELSEIF @style == "6" a = y b = xx k = xx d = y ELSEIF @style == "7" a = y b = y k = xx d = y ELSEIF @style == "8" a = y b = y k = xx d = xx ELSEIF @style == "9" a = xx b = xx k = y d = xx ELSEIF @style == "10" a = xx b = xx k = y d = y ELSEIF @style == "11" a = xx b = y k = y d = y ELSEIF @style == "12" a = xx b = xx k = xx d = xx ELSEIF @style == "13" a = xx b = y k = y d = xx ELSEIF @style == "14" a = xx b = xx k = xx d = y ELSEIF @style == "15" a = xx b = y k = xx d = y ELSEIF @style == "16" a = xx b = y k = xx d = xx ENDIF IF @style2 == "1" g = y f = xx ELSEIF @style2 == "2" g = y f = y ELSEIF @style2 == "3" g = xx f = y ELSEIF @style2 == "4" g = xx f = xx ENDIF IF @style3 == "1" h = y j = xx ELSEIF @style3 == "2" h = y j = y ELSEIF @style3 == "3" h = xx j = y ELSEIF @style3 == "4" h = xx j = xx ENDIF IF @nuop1 == "+" v = g^@ex6 + @fn6a(h^@ex7 - @d1) ELSEIF @nuop1 == "-" v = g^@ex6 - @fn6a(h^@ex7 - @d1) ELSEIF @nuop1 == "*" v = g^@ex6 * @fn6a(h^@ex7 - @d1) ELSEIF @nuop1 == "/" v = g^@ex6 / @fn6a(h^@ex7 - @d1) ENDIF IF @nuop2 == "+" w = f^@ex5 + @fn6b(j^@ex8 - @d2) ELSEIF @nuop2 == "-" w = f^@ex5 - @fn6b(j^@ex8 - @d2) ELSEIF @nuop2 == "*" w = f^@ex5 * @fn6b(j^@ex8 - @d2) ELSEIF @nuop2 == "/" w = f^@ex5 / @fn6b(j^@ex8 - @d2) ENDIF IF @imagop == "+" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 + v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ENDIF ENDIF ELSEIF @imagop == "-" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 - v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ENDIF ENDIF ELSEIF @imagop == "*" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 * v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ENDIF ENDIF ELSEIF @imagop == "/" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 / v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ENDIF ENDIF ELSEIF @imagop == "^" IF @realop == "+" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 + w))))) ENDIF ELSEIF @realop == "-" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 - w))))) ENDIF ELSEIF @realop == "*" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 * w))))) ENDIF ELSEIF @realop == "/" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 / w))))) ENDIF ELSEIF @realop == "^" IF @flavor == "1" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "2" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y + @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "3" x = x + @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ELSEIF @flavor == "4" x = x - @h1 * real(@fn1a(a^@ex1 + @fn2a(@a1 * (k^@ex3 + @fn3a(@b1 ^ v))))) y = y - @h2 * real(@fn1b(b^@ex2 + @fn2b(@a2 * (d^@ex4 + @fn3b(@b2 ^ w))))) ENDIF ENDIF ENDIF IF @op == "x+y" z =@fn5(x^@ex*@mx+@px) + @fn4(y^@ey*@my+@py) ELSEIF @op == "x-y" z =@fn5(x^@ex*@mx+@px) - @fn4(y^@ey*@my+@py) ELSEIF @op == "y-x" z =@fn4(y^@ey*@my+@py) - @fn5(x^@ex*@mx+@px) ENDIF IF @zmod == "Normal" tz = z ELSEIF @zmod == "Modulus" tz = |z| ELSEIF @zmod == "Atan 2" tz = atan2(z) ELSEIF @zmod == "Real" tz = real(z) ELSEIF @zmod == "Imag" tz = imag(z) ENDIF IF @loop == "Simple" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 ELSEIF @loop == "Complex" IF @op4 == "+" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "+" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "*" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "/" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "^" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ENDIF ENDIF bailout: iter < @bail default: title = "Mandy Gnarl" magn = 0.15 param version caption = "Version" default = 1.1 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param sscale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption = "Initial Section" endheading bool param np caption = "Initial Section" default = true endparam param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 0 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np endparam func fnzInit caption = "init Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fncInit caption = "Init C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Parameters" endheading param loop caption = "Loop Type" enum = "Simple""Complex" default = 0 endparam int param zmod caption = "2nd Z Definition" enum = "Normal""Modulus""Atan 2""Real""Imag" default = 0 visible = @loop == "Complex" endparam complex param startseed caption = "Start/Seed" default = (1,0) endparam float param bail caption = "Bailout" default = 20 endparam param flavor caption = "Flavor" enum = "1""2""3""4" default = 1 endparam param style caption = "Style" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16" default = 0 endparam param style2 caption = "Twist" enum = "1""2""3""4" default = 0 endparam param style3 caption = "Spin" enum = "1""2""3""4" default = 0 endparam param op caption = "Main Operator" enum = "x+y""x-y""y-x" default = 0 endparam param realop caption = "R Operator" enum = "+""-""*""/""^" default = 2 endparam param imagop caption = "I Operator" enum = "+""-""*""/""^" default = 2 endparam param nuop1 caption = "R Operator 2" enum = "+""-""*""/" default = 0 endparam param nuop2 caption = "I Operator 2" enum = "+""-""*""/" default = 0 endparam param a1 caption = "Alpha 1" default = 2.7 endparam param a2 caption = "Alpha 2" default = 2.7 endparam param b1 caption = "Beta 1" default = 2.7 endparam param b2 caption = "Beta 2" default = 2.7 endparam param d1 caption = "Delta 1" default = 0 endparam param d2 caption = "Delta 2" default = 0 endparam param h1 caption = "Step size 1" default = 0.1 endparam param h2 caption = "Step size 2" default = 0.1 endparam param scaleAll caption = "Scale" default = 1.0 endparam param scaleX caption = "X Scale" default = 1.0 endparam param scaleY caption = "Y Scale" default = 1.0 endparam heading caption = "Shading Parameters" visible = @shad endheading complex param ex caption = "X Shading 1" default = (1.0,0.0) visible = @shad endparam complex param mx caption = "X Shading 2" default = (1.0,0.0) visible = @shad endparam complex param px caption = "X Shading 3" default = (0.0,0.0) visible = @shad endparam complex param ey caption = "Y Shading 1" default = (1.0,0.0) visible = @shad endparam complex param my caption = "Y Shading 2" default = (1.0,0.0) visible = @shad endparam complex param py caption = "Y Shading 3" default = (0.0,0.0) visible = @shad endparam param shad caption = "Shading Parameters" default = false endparam heading caption = "Exponential Parameters" visible = @exp endheading float param exx caption = "Exponent X" default = 1 visible = @exp endparam complex param ex1 caption = "Exponent 1" default = (1.0 , 0.0) visible = @exp endparam complex param ex2 caption = "Exponent 2" default = (1.0 , 0.0) visible = @exp endparam complex param ex3 caption = "Exponent 3" default = (1.0 , 0.0) visible = @exp endparam complex param ex4 caption = "Exponent 4" default = (1.0 , 0.0) visible = @exp endparam complex param ex5 caption = "Exponent 5" default = (1.0 , 0.0) visible = @exp endparam complex param ex6 caption = "Exponent 6" default = (1.0 , 0.0) visible = @exp endparam complex param ex7 caption = "Exponent 7" default = (1.0 , 0.0) visible = @exp endparam complex param ex8 caption = "Exponent 8" default = (1.0 , 0.0) visible = @exp endparam param exp caption = "Exponential Parameters" default = false endparam heading caption = "Loop Parameters" endheading complex param zpar1 caption = "Z Offset" default = (0,0) endparam complex param zpar2 caption = "Z Strength" default = (1,0) endparam complex param zpar3 caption = "Z Power" default = (1,0) endparam complex param cpar1 caption = "C Offset" default = (0,0) endparam complex param cpar2 caption = "C Strength" default = (1,0) endparam complex param cpar3 caption = "C Power" default = (1,0) endparam complex param zzpar1 caption = "Z2 Offset" default = (0,0) visible = @loop == "Complex" endparam complex param zzpar2 caption = "Z2 Strength" default = (1,0) visible = @loop == "Complex" endparam complex param zzpar3 caption = "Z2 Power" default = (1,0) visible = @loop == "Complex" endparam complex param ccpar1 caption = "C2 Offset" default = (0,0) visible = @loop == "Complex" endparam complex param ccpar2 caption = "C2 Strength" default = (1,0) visible = @loop == "Complex" endparam complex param ccpar3 caption = "C2 Power" default = (1,0) visible = @loop == "Complex" endparam param op3 caption = "Operator 3" enum = "+""-""*""/""^" default = 2 visible = @loop == "Complex" endparam param op4 caption = "Operator 4" enum = "+""-""*""/""^" default = 0 visible = @loop == "Complex" endparam heading caption = "Functions" endheading func fn1a caption = "Function 1a" default = sin() endfunc func fn1b caption = "Function 1b" default = sin() endfunc func fn2a caption = "Function 2a" default = sin() endfunc func fn2b caption = "Function 2b" default = sin() endfunc func fn3a caption = "Function 3a" default = sin() endfunc func fn3b caption = "Function 3b" default = sin() endfunc func fn6a caption = "Function 4a" default = ident() endfunc func fn6b caption = "Function 4b" default = ident() endfunc func fn4 caption = "Global Function 1" default = flip() endfunc func fn5 caption = "Global Function 2" default = ident() endfunc heading caption = "Loop Functions" endheading func fnc caption = "C Function" default = ident() endfunc func fncc caption = "C2 Function" default = ident() visible = @loop == "Complex" endfunc func fnz caption = "Z Function" default = ident() endfunc func fnzz caption = "Z2 Function" default = ident() visible = @loop == "Complex" endfunc switch: type = "MandyGnarl" startseed = pixel version = @version flavor = @flavor bail = @bail style = @style style1 = @style1 style2 = @style2 zmod = @zmod op = @op realop = @realop imagop = @imagop nuop1 = @nuop1 nuop2 = @nuop2 a1 = @a1 a2 = @a2 b1 = @b1 b2 = @b2 h1 = @h1 h2 = @h2 scaleAll = @scaleAll scaleX = @scaleX scaleY = @scaleY ex = @ex mx = @mx px = @px ey = @ey my = @my py = @py exx = @exx exy = @exy ex1 = @ex1 ex2 = @ex2 ex3 = @ex3 ex4 = @ex4 ex5 = @ex5 ex6 = @ex6 ex7 = @ex7 ex8 = @ex8 fn1a = @fn1a fn1b = @fn1b fn2a = @fn2a fn2b = @fn2b fn3a = @fn3a fn3b = @fn3b fn4 = @fn4 fn5 = @fn5 op3 = @op3 op4 = @op4 zpar1 = @zpar1 zpar2 = @zpar2 zpar3 = @zpar3 cpar1 = @cpar1 cpar2 = @cpar2 cpar3 = @cpar3 zzpar1 = @zzpar1 zzpar2 = @zzpar2 zzpar3 = @zzpar3 ccpar1 = @ccpar1 ccpar2 = @ccpar2 ccpar3 = @ccpar3 fnc = @fnc fncc = @fncc fnz = @fnz fnzz = @fnzz mode=@switchmode switchmode=@mode center=@swcenter sscale=@swscale loop = @loop select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnzInit = @fnzInit fncInit = @fncinit } ********************************************************************** MandyMix'n'Match { ; Gnarl-type M/J switchable exercise ; ; This formula uses the formula patterns from "Naru's ; Gnarly Potpourri" spliced into a Mandy/Julia switchable ; loop. ; ; Please check tma.txt for the section on "Naru's Gnarly ; Potpourri" to understand a bit more about how this is ; constructed. ; ; Tip: "# of Formula Iters" is a very important parameter, ; affecting very strongly the look and the rendering time ; of this formula. ; Many parameters and functions have individual hints. Check ; them as you go. ; ; Tip: Check the switch functions in the init section for ; interesting shapes--especially the "Switch Pixel Func"-- ; when using the switch. Thanks to Andreas Lober for the idea ; of adding functions to the switch! ; ; 22 Feb. 2005 Toby Marshall ; ver 1.0 init: complex c = (0,0) if @mode == "Mandelbrot" z = @ssfn(@startseed) c = @pixfn(#pixel) elseif @mode == "Julia" z = @pixfn(#pixel) c = @ssfn(@startseed) endif if @sscale != 1.0 z = z / @sscale endif if @center != (0.0,0.0) z = z + @center endif float x = 0 float y = 0 float xx = 0 int j = 0 int i = 0 int iter = 0 complex tz = (0,0) float v = 0 float w = 0 float qa = 0 float qb = 0 float qc = 0 float qc = 0 float mv1 = 0 float mv2 = 0 float mv3 = 0 float vv1 = 0 float vv2 = 0 float vv3 = 0 float vv4 = 0 float vv5 = 0 float vv6 = 0 float vv7 = 0 float vv8 = 0 float glv1 = 0 float glv2 = 0 float glv3 = 0 float glv4 = 0 float glv5 = 0 float glv6 = 0 float glv7 = 0 float glv8 = 0 float glv9 = 0 float glv10 = 0 float glv11 = 0 float glv12 = 0 float gn1 = 0 float gn2 = 0 float gn3 = 0 float gn4 = 0 float gn5 = 0 float gn6 = 0 float gn7 = 0 float gn8 = 0 float newx = 0 float newy = 0 int seed = 0 seed = random(@randomseed) float vQ = 0 float wQ = 0 float qaQ = 0 float qbQ = 0 float qcQ = 0 float qcQ = 0 float mv1Q = 0 float mv2Q = 0 float mv3Q = 0 float vv1Q = 0 float vv2Q = 0 float vv3Q = 0 float vv4Q = 0 float vv5Q = 0 float vv6Q = 0 float vv7Q = 0 float vv8Q = 0 float glv1Q = 0 float glv2Q = 0 float glv3Q = 0 float glv4Q = 0 float glv5Q = 0 float glv6Q = 0 float glv7Q = 0 float glv8Q = 0 float glv9Q = 0 float glv10Q = 0 float glv11Q = 0 float glv12Q = 0 float gn1Q = 0 float gn2Q = 0 float gn3Q = 0 float gn4Q = 0 float gn5Q = 0 float gn6Q = 0 float gn7Q = 0 float gn8Q = 0 loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnzInit(z-@zg)*@ezg elseif @select == "z+c" z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z*c" z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg/@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg/@fncInit((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg/@fncInit((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnzInit(z-@zg)*@ezg/@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg endif iter = iter + 1 z = ((z) / @scale*2)-@offset1 z = @fnov2(@fnov1(z)^@pp2) seed = random(@randomseed) ; Iterate the Gnarly formulas i = 0 x = real(@fnx3(z)^@exr) * @scale2 y = imag(@fny3(z)) * @scale3 while i < @iters xx = x bool scenario1 = false ; Determine scenario to be used: if @seq == "Single" scenario1 = true elseif @seq == "Blend" seed = random(seed) if @blendFn == "abs" if abs(seed)/#randomrange < @prob1 scenario1 = true else scenario1 = false endif elseif @blendFn == "ident" if real(ident(seed))/#randomrange < @prob1 scenario1 = true else scenario1 = false endif elseif @blendFn == "exp (fixed value)" if real(exp(seed))/#randomrange < @prob1 scenario1 = true else scenario1 = false endif elseif @blendFn == "tan" if real(tan(seed))/#randomrange < @prob1 * .0000000001 scenario1 = true else scenario1 = false endif elseif @blendFn == "sin" if real(sin(seed))/#randomrange < @prob1 * .0000000001 scenario1 = true else scenario1 = false endif elseif @blendFn == "acos" if real(acos(seed))/#randomrange < @prob1 * .0000000001 scenario1 = true else scenario1 = false endif elseif @blendFn == "cos" if real(cos(seed))/#randomrange < @prob1 * .00000000001 scenario1 = true else scenario1 = false endif elseif @blendFn == "sinh (fixed value)" if real(sinh(seed))/#randomrange < @prob1 scenario1 = true else scenario1 = false endif elseif @blendFn == "cosh (fixed value)" if real(cosh(seed))/#randomrange < @prob1 scenario1 = true else scenario1 = false endif endif elseif @seq == "Modulated" if (iter % (@modBy+@modCmp) < @modCmp) scenario1 = true else scenario1 = false endif endif if(scenario1 == true) if @formula == "Martin" if @martV1 == true mv1 = x else mv1 = y endif if @martV2 == true mv2 = y else mv2 = x endif if @martV3 == true mv3 = y else mv3 = xx endif if @martFlav == true if @martOp == "1" x = cabs(@fnmy1((mv1-@my)*@mym)^@mye) - cabs(@martfn((mv2-@mx)*@mxm)^@mxe) y = @maa - cabs(@fnmx1((mv3-@mxx)*@mxxm)^@mxxe) elseif @martOp == "2" x = cabs(@fnmy1((mv1-@my)*@mym)^@mye) + cabs(@martfn((mv2-@mx)*@mxm)^@mxe) y = @maa - cabs(@fnmx1((mv3-@mxx)*@mxxm)^@mxxe) endif else if @martOp == "1" x = real(@fnmy1((mv1-@my)*@mym)^@mye) - real(@martfn((mv2-@mx)*@mxm)^@mxe) y = @maa - real(@fnmx1((mv3-@mxx)*@mxxm)^@mxxe) elseif @martOp == "2" x = real(@fnmy1((mv1-@my)*@mym)^@mye) + real(@martfn((mv2-@mx)*@mxm)^@mxe) y = @maa - real(@fnmx1((mv3-@mxx)*@mxxm)^@mxxe) endif endif elseif @formula == "Popcorn" if @funcPopType == true v = cabs(@fnpopx(x)*@popx) w = cabs(@fnpopy(y)*@popy) else v = real(@fnpopx(x)*@popx) w = real(@fnpopy(y)*@popy) endif if @v1 == true qa = ((xx-@pop1a)*@pop1b)^@pop1c else qa = ((y-@pop1a)*@pop1b)^@pop1c endif if @v2 == true qb = ((xx-@pop2a)*@pop2b)^@pop2c else qb = ((y-@pop2a)*@pop2b)^@pop2c endif if @v3 == true qc = ((y-@pop3a)*@pop3b)^@pop3c else qc = ((xx-@pop3a)*@pop3b)^@pop3c endif if @v4 == true qd = ((y-@pop4a)*@pop4b)^@pop4c else qd = ((xx-@pop4a)*@pop4b)^@pop4c endif if @popflavor1 == "1" if @popFlavor2 == "1" x = v - real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "2" x = v - real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "3" x = v + real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "4" x = v + real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) endif elseif @popflavor1 == "2" if @popFlavor2 == "1" x = v - real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "2" x = v - real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "3" x = v + real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "4" x = v + real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) endif elseif @popflavor1 == "3" if @popFlavor2 == "1" x = v - real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "2" x = v - real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "3" x = v + real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "4" x = v + real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) endif elseif @popflavor1 == "4" if @popFlavor2 == "1" x = v - real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "2" x = v - real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "3" x = v + real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "4" x = v + real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) endif endif elseif @formula == "Vine" if @vinV1 == true vv1 = ((y-@v1a)*@v1b)^@v1c vv4 = ((x-@v4a)*@v4b)^@v4c else vv1 = ((x-@v1a)*@v1b)^@v1c vv4 = ((y-@v4a)*@v4b)^@v4c endif if @vinV2 == true vv2 = ((xx-@v2a)*@v2b)^@v2c else vv2 = ((y-@v2a)*@v2b)^@v2c endif if @vinV3 == true vv3 = ((xx-@v3a)*@v3b)^@v3c else vv3 = ((y-@v3a)*@v3b)^@v3c endif if @vinV5 == true vv5 = ((y-@v5a)*@v5b)^@v5c else vv5 = ((xx-@v5a)*@v5b)^@v5c endif if @vinV6 == true vv6 = ((y-@v6a)*@v6b)^@v6c else vv6 = ((xx-@v6a)*@v6b)^@v6c endif if @vinV7 == true vv7 = ((xx-@v7a)*@v7b)^@v7c else vv7 = ((y-@v7a)*@v7b)^@v7c endif if @vinV8 == true vv8 = ((y-@v8a)*@v8b)^@v8c else vv8 = ((xx-@v8a)*@v8b)^@v8c endif if @vinOp1 == "1" if @vinFlavor == true if @flavor == 0 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = cabs(@vinfn7(y)) float newy = cabs(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3c == "1" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "2" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3c == "3" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "4" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2c == "1" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "2" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "3" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "4" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) endif endif else if @flavor == 0 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = real(@vinfn7(y)) float newy = real(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3r == "1" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "2" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3r == "3" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "4" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2r == "1" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "2" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "3" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "4" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) endif endif endif elseif @vinOp1 == "2" if @vinFlavor == true if @flavor == 0 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = cabs(@vinfn7(y)) float newy = cabs(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3c == "1" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "2" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3c == "3" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "4" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2c == "1" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "2" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "3" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "4" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) endif endif else if @flavor == 0 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = real(@vinfn7(y)) float newy = real(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3r == "1" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "2" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3r == "3" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "4" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2r == "1" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "2" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "3" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "4" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) endif endif endif elseif @vinOp1 == "3" if @vinFlavor == true if @flavor == 0 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = cabs(@vinfn7(y)) float newy = cabs(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3c == "1" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "2" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3c == "3" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "4" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2c == "1" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "2" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "3" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "4" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) endif endif else if @flavor == 0 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = real(@vinfn7(y)) float newy = real(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3r == "1" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "2" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3r == "3" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "4" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2r == "1" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "2" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "3" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "4" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) endif endif endif elseif @vinOp1 == "4" if @vinFlavor == true if @flavor == 0 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = cabs(@vinfn7(y)) float newy = cabs(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3c == "1" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "2" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3c == "3" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "4" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2c == "1" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "2" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "3" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "4" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) endif endif else if @flavor == 0 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = real(@vinfn7(y)) float newy = real(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3r == "1" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "2" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3r == "3" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "4" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2r == "1" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "2" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "3" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "4" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) endif endif endif endif elseif @formula == "Glyph" if @glyphFlavor1 == true float newx = cabs(@glyfn11(y)) float newy = cabs(@glyfn12(x)) int j = 0 while j < @flavor j = j + 1 if @glv1 == "y" ; glv1 = ((y-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "x" glv1 = ((x-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "newy" glv1 = ((newy-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "newx" glv1 = ((newx-@gly1a)*@gly1b)^@gly1c endif if @glv2 == "y" glv2 = ((y-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "x" glv2 = ((x-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "newy" glv2 = ((newy-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "newx"; glv2 = ((newx-@gly2a)*@gly2b)^@gly2c endif if @glv3 == "y" glv3 = ((y-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "x" glv3 = ((x-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "newy" glv3 = ((newy-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "newx"; glv3 = ((newx-@gly3a)*@gly3b)^@gly3c endif if @glv4 == "y" glv4 = ((y-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "x"; glv4 = ((x-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "newy" glv4 = ((newy-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "newx" glv4 = ((newx-@gly4a)*@gly4b)^@gly4c endif if @glv5 == "y" glv5 = ((y-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "x" glv5 = ((x-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "newy"; glv5 = ((newy-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "newx" glv5 = ((newx-@gly5a)*@gly5b)^@gly5c endif if @glv6 == "y" glv6 = ((y-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "x" glv6 = ((x-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "newy" ; glv6 = ((newy-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "newx" glv6 = ((newx-@gly6a)*@gly6b)^@gly6c endif if @glyOp1 == "1" newx = cabs(@glyfn3(glv1)) + @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = cabs(@glyfn4(glv4)) + @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "2" newx = cabs(@glyfn3(glv1)) - @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = cabs(@glyfn4(glv4)) + @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "3" newx = cabs(@glyfn3(glv1)) + @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = cabs(@glyfn4(glv4)) - @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "4" newx = cabs(@glyfn3(glv1)) - @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = cabs(@glyfn4(glv4)) - @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) endif endwhile if @glv7 == "y" glv7 = ((y-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "x"; glv7 = ((x-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "newy" glv7 = ((newy-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "newx" glv7 = ((newx-@gly7a)*@gly7b)^@gly7c endif if @glv8 == "y" glv8 = ((y-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "x" glv8 = ((x-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "newy" glv8 = ((newy-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "newx"; glv8 = ((newx-@gly8a)*@gly8b)^@gly8c endif if @glv9 == "y" glv9 = ((y-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "x" glv9 = ((x-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "newy" glv9 = ((newy-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "newx"; glv9 = ((newx-@gly9a)*@gly9b)^@gly9c endif if @glv10 == "y"; glv10 = ((y-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "x" glv10 = ((x-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "newy" glv10 = ((newy-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "newx" glv10 = ((newx-@gly10a)*@gly10b)^@gly10c endif if @glv11 == "y" glv11 = ((y-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "x" glv11 = ((x-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "newy"; glv11 = ((newy-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "newx" glv11 = ((newx-@gly11a)*@gly11b)^@gly11c endif if @glv12 == "y" glv12 = ((y-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "x" glv12 = ((x-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "newy"; glv12 = ((newy-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "newx" glv12 = ((newx-@gly12a)*@gly12b)^@gly12c endif if @glyOp2 == "1" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "2" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "3" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "4" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "5" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "6" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "7" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "8" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "9" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "10" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "11" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "12" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "13" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "14" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "15" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "16" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) endif else float newx = real(@glyfn11(y)) float newy = real(@glyfn12(x)) int j = 0 while j < @flavor j = j + 1 if @glv1 == "y" ; glv1 = ((y-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "x" glv1 = ((x-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "newy" glv1 = ((newy-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "newx" glv1 = ((newx-@gly1a)*@gly1b)^@gly1c endif if @glv2 == "y" glv2 = ((y-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "x" glv2 = ((x-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "newy" glv2 = ((newy-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "newx"; glv2 = ((newx-@gly2a)*@gly2b)^@gly2c endif if @glv3 == "y" glv3 = ((y-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "x" glv3 = ((x-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "newy" glv3 = ((newy-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "newx"; glv3 = ((newx-@gly3a)*@gly3b)^@gly3c endif if @glv4 == "y" glv4 = ((y-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "x"; glv4 = ((x-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "newy" glv4 = ((newy-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "newx" glv4 = ((newx-@gly4a)*@gly4b)^@gly4c endif if @glv5 == "y" glv5 = ((y-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "x" glv5 = ((x-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "newy"; glv5 = ((newy-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "newx" glv5 = ((newx-@gly5a)*@gly5b)^@gly5c endif if @glv6 == "y" glv6 = ((y-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "x" glv6 = ((x-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "newy" ; glv6 = ((newy-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "newx" glv6 = ((newx-@gly6a)*@gly6b)^@gly6c endif if @glyOp1 == "1" newx = real(@glyfn3(glv1)) + @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = real(@glyfn4(glv4)) + @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "2" newx = real(@glyfn3(glv1)) - @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = real(@glyfn4(glv4)) + @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "3" newx = real(@glyfn3(glv1)) + @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = real(@glyfn4(glv4)) - @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "4" newx = real(@glyfn3(glv1)) - @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = real(@glyfn4(glv4)) - @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) endif endwhile if @glv7 == "y" glv7 = ((y-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "x"; glv7 = ((x-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "newy" glv7 = ((newy-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "newx" glv7 = ((newx-@gly7a)*@gly7b)^@gly7c endif if @glv8 == "y" glv8 = ((y-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "x" glv8 = ((x-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "newy" glv8 = ((newy-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "newx"; glv8 = ((newx-@gly8a)*@gly8b)^@gly8c endif if @glv9 == "y" glv9 = ((y-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "x" glv9 = ((x-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "newy" glv9 = ((newy-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "newx"; glv9 = ((newx-@gly9a)*@gly9b)^@gly9c endif if @glv10 == "y"; glv10 = ((y-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "x" glv10 = ((x-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "newy" glv10 = ((newy-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "newx" glv10 = ((newx-@gly10a)*@gly10b)^@gly10c endif if @glv11 == "y" glv11 = ((y-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "x" glv11 = ((x-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "newy"; glv11 = ((newy-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "newx" glv11 = ((newx-@gly11a)*@gly11b)^@gly11c endif if @glv12 == "y" glv12 = ((y-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "x" glv12 = ((x-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "newy"; glv12 = ((newy-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "newx" glv12 = ((newx-@gly12a)*@gly12b)^@gly12c endif if @glyOp2 == "1" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "2" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "3" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "4" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "5" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "6" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "7" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "8" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "9" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "10" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "11" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "12" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "13" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "14" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "15" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "16" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) endif endif elseif @formula == "Gnarl" if @gn1 == true gn1 = ((y-@gn1a)*@gn1b)^@gn1c gn5 = ((x-@gn5a)*@gn5b)^@gn5c else gn1 = ((x-@gn1a)*@gn1b)^@gn1c gn5 = ((y-@gn5a)*@gn5b)^@gn5c endif if @gn2 == true gn2 = ((x-@gn2a)*@gn2b)^@gn2c else gn2 = ((y-@gn2a)*@gn2b)^@gn2c endif if @gn3 == true gn3 = ((x-@gn3a)*@gn3b)^@gn3c else gn3 = ((y-@gn3a)*@gn3b)^@gn3c endif if @gn4 == true gn4 = ((x-@gn4a)*@gn4b)^@gn4c else gn4 = ((y-@gn4a)*@gn4b)^@gn4c endif if @gn6 == true gn6 = ((y-@gn6a)*@gn6b)^@gn6c else gn6 = ((xx-@gn6a)*@gn6b)^@gn6c endif if @gn7 == true gn7 = ((y-@gn7a)*@gn7b)^@gn7c else gn7 = ((xx-@gn7a)*@gn7b)^@gn7c endif if @gn8 == true gn8 = ((y-@gn8a)*@gn8b)^@gn8c else gn8 = ((xx-@gn8a)*@gn8b)^@gn8c endif if @gnFlavor == true if @gnOp == "1" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "2" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "3" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "4" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "5" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "6" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "7" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "8" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "9" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "10" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "11" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "12" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "13" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "14" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "15" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "16" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "17" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "18" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "19" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "20" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "21" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "22" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "23" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "24" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "25" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "26" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "27" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "28" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "29" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "30" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "31" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "32" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "33" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "34" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "35" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "36" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "37" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "38" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "39" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "40" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "41" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "42" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "43" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "44" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "45" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "46" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "47" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "48" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "49" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "50" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "51" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "52" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "53" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "54" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "55" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "56" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "57" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "58" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "59" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "60" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "61" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "62" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "63" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "64" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) endif else if @gnOp == "1" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "2" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "3" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "4" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "5" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "6" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "7" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "8" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "9" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "10" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "11" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "12" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "13" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "14" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "15" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "16" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "17" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "18" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "19" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "20" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "21" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "22" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "23" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "24" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "25" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "26" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "27" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "28" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "29" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "30" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "31" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "32" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "33" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "34" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "35" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "36" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "37" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "38" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "39" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "40" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "41" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "42" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "43" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "44" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "45" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "46" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "47" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "48" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "49" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "50" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "51" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "52" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "53" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "54" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "55" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "56" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "57" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "58" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "59" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "60" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "61" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "62" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "63" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "64" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) endif endif elseif @formula == "Hopalong" float sx = 1.0 if x < @hop sx = @sx endif float tx = real(@fnhop(x)) if @hopFlavor == true x = y - sx * cabs(@fnhop2(abs(@pB * x - @pC))) else x = y - sx * real(@fnhop2(abs(@pB * x - @pC))) endif y = @pA - tx elseif @formula == "Dynamic" if @dynv1 == true dynv1 =((y-@dynv1a)*@dynv1b)^@dynv1c dynv4 = ((xx-@dynv4a)*@dynv4b)^@dynv4c else dynv1 = ((x-@dynv1a)*@dynv1b)^@dynv1c dynv4 = ((y-@dynv4a)*@dynv4b)^@dynv4c endif if @dynv2 == true dynv2 = ((x-@dynv2a)*@dynv2b)^@dynv2c else dynv2 = ((y-@dynv2a)*@dynv2b)^@dynv2c endif if @dynv3 == true dynv3 = ((x-@dynv3a)*@dynv3b)^@dynv3c else dynv3 = ((y-@dynv3a)*@dynv3b)^@dynv3c endif if @dynv5 == true dynv5 = ((y-@dynv5a)*@dynv5b)^@dynv5c else dynv5 = ((xx-@dynv5a)*@dynv5b)^@dynv5c endif if @dynv6 == true dynv6 = ((y-@dynv6a)*@dynv6b)^@dynv6c else dynv6 = ((xx-@dynv6a)*@dynv6b)^@dynv6c endif float dyn1 = 0 float dyn4 = 0 if @dynflavor == true dyn1 = cabs(@dynfn1(dynv1)) dyn4 = cabs(@dynfn4(dynv4)) else dyn1 = real(@dynfn1(dynv1)) dyn4 = real(@dynfn4(dynv4)) endif if @dynOp == "1" x = dyn1 - real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "2" x = dyn1 + real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "3" x = dyn1 + real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "4" x = dyn1 - real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "5" x = dyn1 - real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "6" x = dyn1 + real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "7" x = dyn1 + real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "8" x = dyn1 - real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "9" x = dyn1 - real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "10" x = dyn1 + real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "11" x = dyn1 + real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "12" x = dyn1 - real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "13" x = dyn1 - real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "14" x = dyn1 + real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "15" x = dyn1 + real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "16" x = dyn1 - real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) endif elseif @formula == "Tanglewood" if @twsv1 == true twsv1 = ((y-@twsv1a)*@twsv1b)^@twsv1c twsv5 = ((x-@twsv5a)*@twsv5b)^@twsv5c else twsv1 = ((x-@twsv1a)*@twsv1b)^@twsv1c twsv5 = ((y-@twsv5a)*@twsv5b)^@twsv5c endif if @twsv2 == true twsv2 = ((y-@twsv2a)*@twsv2b)^@twsv2c else twsv2 = ((xx-@twsv2a)*@twsv2b)^@twsv2c endif if @twsv3 == true twsv3 = ((y-@twsv3a)*@twsv3b)^@twsv3c else twsv3 = ((xx-@twsv3a)*@twsv3b)^@twsv3c endif if @twsv4 == true twsv4 = ((xx-@twsv4a)*@twsv4b)^@twsv4c else twsv4 = ((y-@twsv4a)*@twsv4b)^@twsv4c endif if @twsv6 == true twsv6 = ((xx-@twsv6a)*@twsv6b)^@twsv6c else twsv6 = ((y-@twsv6a)*@twsv6b)^@twsv6c endif if @twsv7 == true twsv7 = ((xx-@twsv7a)*@twsv7b)^@twsv7c else twsv7 = ((y-@twsv7a)*@twsv7b)^@twsv7c endif if @twsv8 == true twsv8 = ((y-@twsv8a)*@twsv8b)^@twsv8c else twsv8 = ((xx-@twsv8a)*@twsv8b)^@twsv8c endif float tang1 = 0 float tang5 = 0 if @twsFlavor1 == true tang1 = cabs(@twsfn1(twsv1)) tang5 = cabs(@twsfn5(twsv5)) else tang1 = real(@twsfn1(twsv1)) tang5 = real(@twsfn5(twsv5)) endif if @twsOp1 == "1" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "2" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "3" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "4" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "5" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "6" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "7" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "8" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "9" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "10" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "11" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "12" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "13" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "14" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "15" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "16" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "17" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "18" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "19" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "20" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "21" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "22" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "23" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "24" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "25" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "26" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "27" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "28" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "29" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "30" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "31" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "32" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "33" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "34" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "35" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "36" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "37" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "38" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "39" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "40" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "41" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "42" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "43" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "44" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "45" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "46" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "47" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "48" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "49" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "50" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "51" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "52" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "53" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "54" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "55" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "56" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "57" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "58" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "59" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "60" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "61" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "62" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "63" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "64" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) endif if @twsv9 == true twsv9 = ((newy-@twsv9a)*@twsv9b)^@twsv9c twsv13 = ((newx-@twsv13a)*@twsv13b)^@twsv13c else twsv9 = ((newx-@twsv9a)*@twsv9b)^@twsv9c twsv13 = ((newy-@twsv13a)*@twsv13b)^@twsv13c endif if @twsv10 == true twsv10 = ((y-@twsv10a)*@twsv10b)^@twsv10c else twsv10 = ((xx-@twsv10a)*@twsv10b)^@twsv10c endif if @twsv11 == true twsv11 = ((y-@twsv11a)*@twsv11b)^@twsv11c else twsv11 = ((xx-@twsv11a)*@twsv11b)^@twsv11c endif if @twsv12 == true twsv12 = ((xx-@twsv12a)*@twsv12b)^@twsv12c else twsv12 = ((y-@twsv12a)*@twsv12b)^@twsv12c endif if @twsv14 == true twsv14 = ((y-@twsv14a)*@twsv14b)^@twsv14c else twsv14 = ((xx-@twsv14a)*@twsv14b)^@twsv14c endif if @twsv15 == true twsv15 = ((xx-@twsv15a)*@twsv15b)^@twsv15c else twsv15 = ((y-@twsv15a)*@twsv15b)^@twsv15c endif if @twsv16 == true twsv16 = ((y-@twsv16a)*@twsv16b)^@twsv16c else twsv16 = ((xx-@twsv16a)*@twsv16b)^@twsv16c endif if @twsOp2 == "1" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "2" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "3" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "4" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "5" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "6" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "7" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "8" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "9" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "10" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "11" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "12" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "13" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "14" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "15" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "16" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "17" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "18" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "19" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "20" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "21" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "22" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "23" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "24" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "25" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "26" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "27" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "28" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "29" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "30" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "31" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "32" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "33" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "34" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "35" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "36" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "37" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "38" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "39" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "40" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "41" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "42" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "43" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "44" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "45" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "46" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "47" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "48" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "49" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "50" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "51" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "52" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "53" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "54" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "55" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "56" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "57" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "58" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "59" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "60" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "61" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "62" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "63" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "64" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) endif elseif @formula == "Twirl" if @twv1 == true twv1 = ((y-@twv1a)*@twv1b)^@twv1c twv6 = ((x-@twv6a)*@twv6b)^@twv6c else twv1 = ((x-@twv1a)*@twv1b)^@twv1c twv6 = ((y-@twv6a)*@twv6b)^@twv6c endif if @twv2 == true twv2 = ((y-@twv2a)*@twv2b)^@twv2c else twv2 = ((xx-@twv2a)*@twv2b)^@twv2c endif if @twv3 == true twv3 = ((xx-@twv3a)*@twv3b)^@twv3c else twv3 = ((y-@twv3a)*@twv3b)^@twv3c endif if @twv4 == true twv4 = ((y-@twv4a)*@twv4b)^@twv4c else twv4 = ((xx-@twv4a)*@twv4b)^@twv4c endif if @twv5 == true twv5 = ((xx-@twv5a)*@twv5b)^@twv5c else twv5 = ((y-@twv5a)*@twv5b)^@twv5c endif if @twv7 == true twv7 = ((xx-@twv7a)*@twv7b)^@twv7c else twv7 = ((y-@twv7a)*@twv7b)^@twv7c endif if @twv8 == true twv8 = ((y-@twv8a)*@twv8b)^@twv8c else twv8 = ((xx-@twv8a)*@twv8b)^@twv8c endif if @twv9 == true twv9 = ((xx-@twv9a)*@twv9b)^@twv9c else twv9 = ((y-@twv9a)*@twv9b)^@twv9c endif if @twv10 == true twv10 = ((xx-@twv10a)*@twv10b)^@twv10c else twv10 = ((y-@twv10a)*@twv10b)^@twv10c endif float twirl1 = 0 float twirl6 = 0 if @twiFlavor == true twirl1 = cabs(@twfn1(twv1)) twirl6 = cabs(@twfn6(twv6)) else twirl1 = real(@twfn1(twv1)) twirl6 = real(@twfn6(twv6)) endif if @twiOp == "1" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "2" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "3" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "4" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "5" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "6" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "7" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "8" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "9" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "10" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "11" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "12" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "13" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "14" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "15" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "16" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "17" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "18" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "19" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "20" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "21" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "22" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "23" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "24" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "25" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "26" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "27" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "28" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "29" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "30" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "31" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "32" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "33" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "34" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "35" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "36" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "37" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "38" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "39" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "40" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "41" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "42" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "43" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "44" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "45" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "46" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "47" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "48" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "49" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "50" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "51" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "52" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "53" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "54" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "55" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "56" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "57" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "58" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "59" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "60" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "61" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "62" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "63" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "64" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) endif elseif @formula == "Driftwood" if @tgwv1 == true tgwv1 = ((y-@tgwv1a)*@tgwv1b)^@tgwv1c tgwv5 = ((x-@tgwv5a)*@tgwv5b)^@tgwv5c else tgwv1 = ((x-@tgwv1a)*@tgwv1b)^@tgwv1c tgwv5 = ((y-@tgwv5a)*@tgwv5b)^@tgwv5c endif if @tgwv2 == true tgwv2 = ((y-@tgwv2a)*@tgwv2b)^@tgwv2c else tgwv2 = ((xx-@tgwv2a)*@tgwv2b)^@tgwv2c endif if @tgwv3 == true tgwv3 = ((xx-@tgwv3a)*@tgwv3b)^@tgwv3c else tgwv3 = ((y-@tgwv3a)*@tgwv3b)^@tgwv3c endif if @tgwv4 == true tgwv4 = ((xx-@tgwv4a)*@tgwv4b)^@tgwv4c else tgwv4 = ((y-@tgwv4a)*@tgwv4b)^@tgwv4c endif if @tgwv6 == true tgwv6 = ((y-@tgwv6a)*@tgwv6b)^@tgwv6c else tgwv6 = ((xx-@tgwv6a)*@tgwv6b)^@tgwv6c endif float drift1 = 0 float drift5 = 0 if @tgwFlavor1 == true drift1 = cabs(@tgwfn1(tgwv1)) drift5 = cabs(@tgwfn5(tgwv5)) else drift1 = real(@tgwfn1(tgwv1)) drift5 = real(@tgwfn5(tgwv5)) endif if @tgwOp1 == "1" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "2" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "3" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "4" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "5" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "6" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "7" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "8" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "5" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 - \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "6" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 - \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "7" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 - \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "8" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 - \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) endif if @tgwv7 == true tgwv7 = ((newy-@tgwv7a)*@tgwv7b)^@tgwv7c tgwv11 = ((newx-@tgwv11a)*@tgwv11b)^@tgwv11c else tgwv7 = ((newx-@tgwv7a)*@tgwv7b)^@tgwv7c tgwv11 = ((newy-@tgwv11a)*@tgwv11b)^@tgwv11c endif if @tgwv8 == true tgwv8 = ((xx-@tgwv8a)*@tgwv8b)^@tgwv8c else tgwv8 = ((y-@tgwv8a)*@tgwv8b)^@tgwv8c endif if @tgwv9 == true tgwv9 = ((y-@tgwv9a)*@tgwv9b)^@tgwv9c else tgwv9 = ((xx-@tgwv9a)*@tgwv9b)^@tgwv9c endif if @tgwv10 == true tgwv10 = ((xx-@tgwv10a)*@tgwv10b)^@tgwv10c else tgwv10 = ((y-@tgwv10a)*@tgwv10b)^@tgwv10c endif if @tgwv12 == true tgwv12 = ((xx-@tgwv12a)*@tgwv12b)^@tgwv12c else tgwv12 = ((y-@tgwv12a)*@tgwv12b)^@tgwv12c endif if @tgwOp2 == "1" x = real(@tgwfn7(tgwv7)) - real(@tgwh2 * @tgwfn8(tgwv8 + \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) + imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "2" x = real(@tgwfn7(tgwv7)) + real(@tgwh2 * @tgwfn8(tgwv8 + \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) - imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "3" x = real(@tgwfn7(tgwv7)) + real(@tgwh2 * @tgwfn8(tgwv8 + \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) + imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "4" x = real(@tgwfn7(tgwv7)) - real(@tgwh2 * @tgwfn8(tgwv8 + \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) - imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "5" x = real(@tgwfn7(tgwv7)) - real(@tgwh2 * @tgwfn8(tgwv8 - \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) + imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "6" x = real(@tgwfn7(tgwv7)) + real(@tgwh2 * @tgwfn8(tgwv8 - \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) - imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "7" x = real(@tgwfn7(tgwv7)) + real(@tgwh2 * @tgwfn8(tgwv8 - \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) + imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "8" x = real(@tgwfn7(tgwv7)) - real(@tgwh2 * @tgwfn8(tgwv8 - \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) - imag(@tgwh2 * @tgwfn12(tgwv12)) endif endif else ; scenario 2 if @formulaQ == "Martin" if @martV1Q == true mv1Q = x else mv1Q = y endif if @martV2Q == true mv2Q = y else mv2Q = x endif if @martV3Q == true mv3Q = y else mv3Q = xx endif if @martFlavQ == true if @martOpQ == "1" x = cabs(@fnmy1Q((mv1Q-@myQ)*@mymQ)^@myeQ) - \ cabs(@martfnQ( (mv2Q-@mxQ)*@mxmQ)^@mxeQ) y = @maaQ - cabs(@fnmx1Q((mv3Q-@mxxQ)*@mxxmQ)^@mxxeQ) elseif @martOpQ == "2" x = cabs(@fnmy1Q((mv1Q-@myQ)*@mymQ)^@myeQ) + \ cabs(@martfnQ((mv2Q-@mxQ)*@mxmQ)^@mxeQ) y = @maaQ - cabs(@fnmx1Q((mv3Q-@mxxQ)*@mxxmQ)^@mxxeQ) endif else if @martOpQ == "1" x = real(@fnmy1Q((mv1Q-@myQ)*@mymQ)^@myeQ) - \ real(@martfnQ((mv2Q-@mxQ)*@mxmQ)^@mxeQ) y = @maaQ - real(@fnmx1Q((mv3Q-@mxxQ)*@mxxmQ)^@mxxeQ) elseif @martOpQ == "2" x = real(@fnmy1Q((mv1Q-@myQ)*@mymQ)^@myeQ) + \ real(@martfnQ((mv2Q-@mxQ)*@mxmQ)^@mxeQ) y = @maaQ - real(@fnmx1Q((mv3Q-@mxxQ)*@mxxmQ)^@mxxeQ) endif endif elseif @formulaQ == "Popcorn" if @funcPopTypeQ == true vQ = cabs(@fnpopxQ(x)*@popxQ) wQ = cabs(@fnpopyQ(y)*@popyQ) else vQ = real(@fnpopxQ(x)*@popxQ) wQ = real(@fnpopyQ(y)*@popyQ) endif if @v1Q == true qaQ = ((xx-@pop1aQ)*@pop1bQ)^@pop1cQ else qaQ = ((y-@pop1aQ)*@pop1bQ)^@pop1cQ endif if @v2Q == true qbQ = ((xx-@pop2aQ)*@pop2bQ)^@pop2cQ else qbQ = ((y-@pop2aQ)*@pop2bQ)^@pop2cQ endif if @v3Q == true qcQ = ((y-@pop3aQ)*@pop3bQ)^@pop3cQ else qcQ = ((xx-@pop3aQ)*@pop3bQ)^@pop3cQ endif if @v4Q == true qdQ = ((y-@pop4aQ)*@pop4bQ)^@pop4cQ else qdQ = ((xx-@pop4aQ)*@pop4bQ)^@pop4cQ endif if @popflavor1Q == "1" if @popflavor2Q == "1" x = vQ - real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "2" x = vQ - real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "3" x = vQ + real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "4" x = vQ + real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) endif elseif @popflavor1Q == "2" if @popflavor2Q == "1" x = vQ - real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "2" x = vQ - real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "3" x = vQ + real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "4" x = vQ + real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) endif elseif @popflavor1Q == "3" if @popflavor2Q == "1" x = vQ - real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "2" x = vQ - real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "3" x = vQ + real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "4" x = vQ + real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) endif elseif @popflavor1Q == "4" if @popflavor2Q == "1" x = vQ - real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "2" x = vQ - real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "3" x = vQ + real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "4" x = vQ + real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) endif endif elseif @formulaQ == "Vine" if @vinV1Q == true vv1Q = ((y-@v1aQ)*@v1bQ)^@v1cQ vv4Q = ((x-@v4aQ)*@v4bQ)^@v4cQ else vv1Q = ((x-@v1aQ)*@v1bQ)^@v1cQ vv4Q = ((y-@v4aQ)*@v4bQ)^@v4cQ endif if @vinV2Q == true vv2Q = ((xx-@v2aQ)*@v2bQ)^@v2cQ else vv2Q = ((y-@v2aQ)*@v2bQ)^@v2cQ endif if @vinV3Q == true vv3Q = ((xx-@v3aQ)*@v3bQ)^@v3cQ else vv3Q = ((y-@v3aQ)*@v3bQ)^@v3cQ endif if @vinV5Q == true vv5Q = ((y-@v5aQ)*@v5bQ)^@v5cQ else vv5Q = ((xx-@v5aQ)*@v5bQ)^@v5cQ endif if @vinV6Q == true vv6Q = ((y-@v6aQ)*@v6bQ)^@v6cQ else vv6Q = ((xx-@v6aQ)*@v6bQ)^@v6cQ endif if @vinV7Q == true vv7Q = ((xx-@v7aQ)*@v7bQ)^@v7cQ else vv7Q = ((y-@v7aQ)*@v7bQ)^@v7cQ endif if @vinV8Q == true vv8Q = ((y-@v8aQ)*@v8bQ)^@v8cQ else vv8Q = ((xx-@v8aQ)*@v8bQ)^@v8cQ endif if @vinOp1Q == "1" if @vinFlavorQ == true if @flavorQ == 0 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ * vv3Q ))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * cabs(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ * vv6Q))) elseif @flavorQ == 1 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q^@vbQ + \ @vinfn3Q(@vaQ * vv3Q))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * cabs(@vinfn2Q(vv5Q^@vbQ + \ @vinfn4Q(@vaQ * vv6Q))) elseif @flavorQ == 2 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ *(vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * cabs(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ *(vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = cabs(@vinfn7Q(y)) float newy = cabs(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3cQ == "1" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "2" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "3" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "4" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2cQ == "1" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "2" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "3" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "4" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) endif endif else if @flavorQ == 0 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * real(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q^@vbQ + \ @vinfn3Q(@vaQ * vv3Q))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * real(@vinfn2Q(vv5Q^@vbQ + \ @vinfn4Q(@vaQ * vv6Q))) elseif @flavorQ == 2 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * real(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ *(vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = real(@vinfn7Q(y)) float newy = real(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3rQ == "1" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "2" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "3" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "4" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2rQ == "1" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "2" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "3" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "4" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) endif endif endif elseif @vinOp1Q == "2" if @vinFlavorQ == true if @flavorQ == 0 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * cabs(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q^@vbQ + \ @vinfn3Q (@vaQ * vv3Q))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * cabs(@vinfn2Q(vv5Q^@vbQ + \ @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ *(vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * cabs(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ *(vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = cabs(@vinfn7Q(y)) float newy = cabs(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3cQ == "1" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "2" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "3" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "4" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2cQ == "1" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "2" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "3" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "4" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) endif endif else if @flavorQ == 0 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * real(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q^@vbQ + \ @vinfn3Q (@vaQ * vv3Q))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * real(@vinfn2Q(vv5Q^@vbQ + \ @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * real(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ * (vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = real(@vinfn7Q(y)) float newy = real(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3rQ == "1" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "2" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "3" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "4" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2rQ == "1" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "2" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "3" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "4" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) endif endif endif elseif @vinOp1Q == "3" if @vinFlavorQ == true if @flavorQ == 0 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * cabs(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * cabs(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * \ cabs(@vinfn1Q(vv2Q^@vbQ + @vinfn3Q (@vaQ * vv3Q))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * \ cabs(@vinfn2Q(vv5Q^@vbQ + @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * cabs(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * cabs(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ * (vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = cabs(@vinfn7Q(y)) float newy = cabs(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3cQ == "1" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "2" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "3" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "4" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2cQ == "1" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "2" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "3" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "4" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) endif endif else if @flavorQ == 0 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * real(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * real(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * \ real(@vinfn1Q(vv2Q^@vbQ + @vinfn3Q (@vaQ * vv3Q))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * \ real(@vinfn2Q(vv5Q^@vbQ + @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * real(@vinfn1Q \ (vv2Q + @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * real(@vinfn2Q \ (vv5Q + @vinfn4Q(@vaQ * (vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = real(@vinfn7Q(y)) float newy = real(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3rQ == "1" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "2" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "3" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "4" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2rQ == "1" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "2" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "3" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "4" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) endif endif endif elseif @vinOp1Q == "4" if @vinFlavorQ == true if @flavorQ == 0 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * cabs(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * cabs(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * \ cabs(@vinfn1Q(vv2Q^@vbQ + @vinfn3Q (@vaQ * vv3Q))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * \ cabs(@vinfn2Q(vv5Q^@vbQ + @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * cabs(@vinfn1Q \ (vv2Q + @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * cabs(@vinfn2Q \ (vv5Q + @vinfn4Q(@vaQ * (vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = cabs(@vinfn7Q(y)) float newy = cabs(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3cQ == "1" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "2" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "3" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "4" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2cQ == "1" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "2" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "3" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "4" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) endif endif else if @flavorQ == 0 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * real(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * real(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * \ real(@vinfn1Q(vv2Q^@vbQ + @vinfn3Q (@vaQ * vv3Q))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * \ real(@vinfn2Q(vv5Q^@vbQ + @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * real(@vinfn1Q \ (vv2Q + @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * real(@vinfn2Q \ (vv5Q + @vinfn4Q(@vaQ * (vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = real(@vinfn7Q(y)) float newy = real(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3rQ == "1" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "2" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "3" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "4" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2rQ == "1" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "2" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "3" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "4" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) endif endif endif endif elseif @formulaQ == "Glyph" if @glyphFlavor1Q == true float newx = cabs(@glyfn11Q(y)) float newy = cabs(@glyfn12Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @glv1Q == "y" ; glv1Q = ((y-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "x" glv1Q = ((x-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "newy" glv1Q = ((newy-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "newx" glv1Q = ((newx-@gly1aQ)*@gly1bQ)^@gly1cQ endif if @glv2Q == "y" glv2Q = ((y-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "x" glv2Q = ((x-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "newy" glv2Q = ((newy-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "newx"; glv2Q = ((newx-@gly2aQ)*@gly2bQ)^@gly2cQ endif if @glv3Q == "y" glv3Q = ((y-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "x" glv3Q = ((x-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "newy" glv3Q = ((newy-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "newx"; glv3Q = ((newx-@gly3aQ)*@gly3bQ)^@gly3cQ endif if @glv4Q == "y" glv4Q = ((y-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "x"; glv4Q = ((x-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "newy" glv4Q = ((newy-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "newx" glv4Q = ((newx-@gly4aQ)*@gly4bQ)^@gly4cQ endif if @glv5Q == "y" glv5Q = ((y-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "x" glv5Q = ((x-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "newy"; glv5Q = ((newy-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "newx" glv5Q = ((newx-@gly5aQ)*@gly5bQ)^@gly5cQ endif if @glv6Q == "y" glv6Q = ((y-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "x" glv6Q = ((x-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "newy" ; glv6Q = ((newy-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "newx" glv6Q = ((newx-@gly6aQ)*@gly6bQ)^@gly6cQ endif if @glyOp1Q == "1" newx = cabs(@glyfn3Q(glv1Q)) + @h4rQ * real(@glyfn5Q(@glyaQ * \ glv2Q)) + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = cabs(@glyfn4Q(glv4Q)) + @h4iQ * real(@glyfn6Q(@glyaQ * \ glv5Q)) + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "2" newx = cabs(@glyfn3Q(glv1Q)) - @h4rQ * real(@glyfn5Q(@glyaQ * \ glv2Q)) + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = cabs(@glyfn4Q(glv4Q)) + @h4iQ * real(@glyfn6Q(@glyaQ * \ glv5Q)) + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "3" newx = cabs(@glyfn3Q(glv1Q)) + @h4rQ * real(@glyfn5Q(@glyaQ * \ glv2Q)) + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = cabs(@glyfn4Q(glv4Q)) - @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "4" newx = cabs(@glyfn3Q(glv1Q)) - @h4rQ * real(@glyfn5Q(@glyaQ * glv2Q)) \ + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = cabs(@glyfn4Q(glv4Q)) - @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) endif endwhile if @glv7Q == "y" glv7Q = ((y-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "x"; glv7Q = ((x-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "newy" glv7Q = ((newy-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "newx" glv7Q = ((newx-@gly7aQ)*@gly7bQ)^@gly7cQ endif if @glv8Q == "y" glv8Q = ((y-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "x" glv8Q = ((x-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "newy" glv8Q = ((newy-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "newx"; glv8Q = ((newx-@gly8aQ)*@gly8bQ)^@gly8cQ endif if @glv9Q == "y" glv9Q = ((y-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "x" glv9Q = ((x-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "newy" glv9Q = ((newy-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "newx"; glv9Q = ((newx-@gly9aQ)*@gly9bQ)^@gly9cQ endif if @glv10Q == "y"; glv10Q = ((y-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "x" glv10Q = ((x-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "newy" glv10Q = ((newy-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "newx" glv10Q = ((newx-@gly10aQ)*@gly10bQ)^@gly10cQ endif if @glv11Q == "y" glv11Q = ((y-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "x" glv11Q = ((x-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "newy"; glv11Q = ((newy-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "newx" glv11Q = ((newx-@gly11aQ)*@gly11bQ)^@gly11cQ endif if @glv12Q == "y" glv12Q = ((y-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "x" glv12Q = ((x-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "newy"; glv12Q = ((newy-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "newx" glv12Q = ((newx-@gly12aQ)*@gly12bQ)^@gly12cQ endif if @glyOp2Q == "1" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "2" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "3" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "4" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "5" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "6" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "7" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "8" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "9" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "10" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "11" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "12" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "13" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "14" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "15" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "16" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) endif elseif @glyphFlavor1Q == false float newx = real(@glyfn11Q(y)) float newy = real(@glyfn12Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @glv1Q == "y" ; glv1Q = ((y-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "x" glv1Q = ((x-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "newy" glv1Q = ((newy-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "newx" glv1Q = ((newx-@gly1aQ)*@gly1bQ)^@gly1cQ endif if @glv2Q == "y" glv2Q = ((y-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "x" glv2Q = ((x-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "newy" glv2Q = ((newy-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "newx"; glv2Q = ((newx-@gly2aQ)*@gly2bQ)^@gly2cQ endif if @glv3Q == "y" glv3Q = ((y-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "x" glv3Q = ((x-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "newy" glv3Q = ((newy-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "newx"; glv3Q = ((newx-@gly3aQ)*@gly3bQ)^@gly3cQ endif if @glv4Q == "y" glv4Q = ((y-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "x"; glv4Q = ((x-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "newy" glv4Q = ((newy-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "newx" glv4Q = ((newx-@gly4aQ)*@gly4bQ)^@gly4cQ endif if @glv5Q == "y" glv5Q = ((y-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "x" glv5Q = ((x-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "newy"; glv5Q = ((newy-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "newx" glv5Q = ((newx-@gly5aQ)*@gly5bQ)^@gly5cQ endif if @glv6Q == "y" glv6Q = ((y-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "x" glv6Q = ((x-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "newy" ; glv6Q = ((newy-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "newx" glv6Q = ((newx-@gly6aQ)*@gly6bQ)^@gly6cQ endif if @glyOp1Q == "1" newx = real(@glyfn3Q(glv1Q)) + @h4rQ * real(@glyfn5Q(@glyaQ * glv2Q)) \ + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = real(@glyfn4Q(glv4Q)) + @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "2" newx = real(@glyfn3Q(glv1Q)) - @h4rQ * real(@glyfn5Q(@glyaQ * glv2Q)) \ + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = real(@glyfn4Q(glv4Q)) + @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "3" newx = real(@glyfn3Q(glv1Q)) + @h4rQ * real(@glyfn5Q(@glyaQ * glv2Q)) \ + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = real(@glyfn4Q(glv4Q)) - @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "4" newx = real(@glyfn3Q(glv1Q)) - @h4rQ * real(@glyfn5Q(@glyaQ * glv2Q)) \ + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = real(@glyfn4Q(glv4Q)) - @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) endif endwhile if @glv7Q == "y" glv7Q = ((y-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "x"; glv7Q = ((x-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "newy" glv7Q = ((newy-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "newx" glv7Q = ((newx-@gly7aQ)*@gly7bQ)^@gly7cQ endif if @glv8Q == "y" glv8Q = ((y-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "x" glv8Q = ((x-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "newy" glv8Q = ((newy-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "newx"; glv8Q = ((newx-@gly8aQ)*@gly8bQ)^@gly8cQ endif if @glv9Q == "y" glv9Q = ((y-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "x" glv9Q = ((x-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "newy" glv9Q = ((newy-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "newx"; glv9Q = ((newx-@gly9aQ)*@gly9bQ)^@gly9cQ endif if @glv10Q == "y"; glv10Q = ((y-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "x" glv10Q = ((x-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "newy" glv10Q = ((newy-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "newx" glv10Q = ((newx-@gly10aQ)*@gly10bQ)^@gly10cQ endif if @glv11Q == "y" glv11Q = ((y-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "x" glv11Q = ((x-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "newy"; glv11Q = ((newy-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "newx" glv11Q = ((newx-@gly11aQ)*@gly11bQ)^@gly11cQ endif if @glv12Q == "y" glv12Q = ((y-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "x" glv12Q = ((x-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "newy"; glv12Q = ((newy-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "newx" glv12Q = ((newx-@gly12aQ)*@gly12bQ)^@gly12cQ endif if @glyOp2Q == "1" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "2" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "3" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "4" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "5" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "6" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "7" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "8" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "9" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "10" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "11" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "12" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "13" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "14" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "15" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "16" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) endif endif elseif @formulaQ == "Gnarl" if @gn1Q == true gn1Q = ((y-@gn1aQ)*@gn1bQ)^@gn1cQ gn5Q = ((x-@gn5aQ)*@gn5bQ)^@gn5cQ else gn1Q = ((x-@gn1aQ)*@gn1bQ)^@gn1cQ gn5Q = ((y-@gn5aQ)*@gn5bQ)^@gn5cQ endif if @gn2Q == true gn2Q = ((x-@gn2aQ)*@gn2bQ)^@gn2cQ else gn2Q = ((y-@gn2aQ)*@gn2bQ)^@gn2cQ endif if @gn3Q == true gn3Q = ((x-@gn3aQ)*@gn3bQ)^@gn3cQ else gn3Q = ((y-@gn3aQ)*@gn3bQ)^@gn3cQ endif if @gn4Q == true gn4Q = ((x-@gn4aQ)*@gn4bQ)^@gn4cQ else gn4Q = ((y-@gn4aQ)*@gn4bQ)^@gn4cQ endif if @gn6Q == true gn6Q = ((y-@gn6aQ)*@gn6bQ)^@gn6cQ else gn6Q = ((xx-@gn6aQ)*@gn6bQ)^@gn6cQ endif if @gn7Q == true gn7Q = ((y-@gn7aQ)*@gn7bQ)^@gn7cQ else gn7Q = ((xx-@gn7aQ)*@gn7bQ)^@gn7cQ endif if @gn8Q == true gn8Q = ((y-@gn8aQ)*@gn8bQ)^@gn8cQ else gn8Q = ((xx-@gn8aQ)*@gn8bQ)^@gn8cQ endif if @gnFlavorQ == true if @gnOpQ == "1" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "2" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "3" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "4" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "5" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "6" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "7" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "8" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "9" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "10" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "11" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "12" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "13" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "14" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "15" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "16" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "17" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "18" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "19" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "20" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "21" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "22" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "23" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "24" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "25" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "26" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "27" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "28" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "29" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "30" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "31" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "32" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "33" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "34" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "35" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "36" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "37" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "38" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "39" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "40" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "41" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "42" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "43" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "44" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "45" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "46" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "47" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "48" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "49" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "50" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "51" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "52" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "53" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "54" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "55" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "56" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "57" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "58" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "59" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "60" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "61" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "62" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "63" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "64" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) endif else if @gnOpQ == "1" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "2" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "3" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "4" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "5" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "6" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "7" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "8" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "9" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "10" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "11" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "12" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "13" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "14" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "15" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "16" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "17" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "18" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "19" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "20" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "21" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "22" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "23" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "24" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "25" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "26" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "27" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "28" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "29" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "30" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "31" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "32" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "33" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "34" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "35" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "36" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "37" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "38" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "39" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "40" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "41" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "42" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "43" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "44" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "45" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "46" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "47" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "48" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "49" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "50" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "51" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "52" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "53" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "54" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "55" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "56" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "57" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "58" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "59" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "60" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "61" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "62" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "63" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "64" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) endif endif elseif @formulaQ == "Hopalong" float sxQ = 1.0 if x < @hopQ sxQ = @sxQ endif float txQ = real(@fnhopQ(x)) if @hopFlavor == true x = y - sxQ * cabs(@fnhop2Q(abs(@pBQ * x - @pCQ))) else x = y - sxQ * real(@fnhop2Q(abs(@pBQ * x - @pCQ))) endif y = @pAQ - txQ elseif @formulaQ == "Dynamic" if @dynv1Q == true dynv1Q =((y-@dynv1aQ)*@dynv1bQ)^@dynv1cQ dynv4Q = ((xx-@dynv4aQ)*@dynv4bQ)^@dynv4cQ else dynv1Q = ((x-@dynv1aQ)*@dynv1bQ)^@dynv1cQ dynv4Q = ((y-@dynv4aQ)*@dynv4bQ)^@dynv4cQ endif if @dynv2Q == true dynv2Q = ((x-@dynv2aQ)*@dynv2bQ)^@dynv2cQ else dynv2Q = ((y-@dynv2aQ)*@dynv2bQ)^@dynv2cQ endif if @dynv3Q == true dynv3Q = ((x-@dynv3aQ)*@dynv3bQ)^@dynv3cQ else dynv3Q = ((y-@dynv3aQ)*@dynv3bQ)^@dynv3cQ endif if @dynv5Q == true dynv5Q = ((y-@dynv5aQ)*@dynv5bQ)^@dynv5cQ else dynv5Q = ((xx-@dynv5aQ)*@dynv5bQ)^@dynv5cQ endif if @dynv6Q == true dynv6Q = ((y-@dynv6aQ)*@dynv6bQ)^@dynv6cQ else dynv6Q = ((xx-@dynv6aQ)*@dynv6bQ)^@dynv6cQ endif float dyn1Q = 0 float dyn4Q = 0 if @dynflavorQ == true dyn1Q = cabs(@dynfn1Q(dynv1Q)) dyn4Q = cabs(@dynfn4Q(dynv4Q)) else dyn1Q = real(@dynfn1Q(dynv1Q)) dyn4Q = real(@dynfn4Q(dynv4Q)) endif if @dynOpQ == "1" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "2" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "3" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "4" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "5" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "6" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "7" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "8" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "9" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "10" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "11" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "12" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "13" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "14" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "15" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "16" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) endif elseif @formulaQ == "Tanglewood" if @twsv1Q == true twsv1Q = ((y-@twsv1aQ)*@twsv1bQ)^@twsv1cQ twsv5Q = ((x-@twsv5aQ)*@twsv5bQ)^@twsv5cQ else twsv1Q = ((x-@twsv1aQ)*@twsv1bQ)^@twsv1cQ twsv5Q = ((y-@twsv5aQ)*@twsv5bQ)^@twsv5cQ endif if @twsv2Q == true twsv2Q = ((y-@twsv2aQ)*@twsv2bQ)^@twsv2cQ else twsv2Q = ((xx-@twsv2aQ)*@twsv2bQ)^@twsv2cQ endif if @twsv3Q == true twsv3Q = ((y-@twsv3aQ)*@twsv3bQ)^@twsv3cQ else twsv3Q = ((xx-@twsv3aQ)*@twsv3bQ)^@twsv3cQ endif if @twsv4Q == true twsv4Q = ((xx-@twsv4aQ)*@twsv4bQ)^@twsv4cQ else twsv4Q = ((y-@twsv4aQ)*@twsv4bQ)^@twsv4cQ endif if @twsv6Q == true twsv6Q = ((xx-@twsv6aQ)*@twsv6bQ)^@twsv6cQ else twsv6Q = ((y-@twsv6aQ)*@twsv6bQ)^@twsv6cQ endif if @twsv7Q == true twsv7Q = ((xx-@twsv7aQ)*@twsv7bQ)^@twsv7cQ else twsv7Q = ((y-@twsv7aQ)*@twsv7bQ)^@twsv7cQ endif if @twsv8Q == true twsv8Q = ((y-@twsv8aQ)*@twsv8bQ)^@twsv8cQ else twsv8Q = ((xx-@twsv8aQ)*@twsv8bQ)^@twsv8cQ endif float tang1Q = 0 float tang5Q = 0 if @twsFlavor1Q == true tang1Q = cabs(@twsfn1Q(twsv1Q)) tang5Q = cabs(@twsfn5Q(twsv5Q)) else tang1Q = real(@twsfn1Q(twsv1Q)) tang5Q = real(@twsfn5Q(twsv5Q)) endif if @twsOp1Q == "1" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "2" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "3" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "4" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "5" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "6" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "7" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "8" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "9" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "10" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "11" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "12" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "13" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "14" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "15" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "16" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "17" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "18" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "19" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "20" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "21" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "22" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "23" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "24" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "25" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "26" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "27" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "28" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "29" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "30" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "31" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "32" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "33" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "34" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "35" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "36" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "37" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "38" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "39" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "40" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "41" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "42" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "43" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "44" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "45" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "46" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "47" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "48" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "49" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "50" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "51" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "52" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "53" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "54" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "55" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "56" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "57" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "58" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "59" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "60" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "61" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "62" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "63" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "64" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) endif if @twsv9Q == true twsv9Q = ((newy-@twsv9aQ)*@twsv9bQ)^@twsv9cQ twsv13Q = ((newx-@twsv13aQ)*@twsv13bQ)^@twsv13cQ else twsv9Q = ((newx-@twsv9aQ)*@twsv9bQ)^@twsv9cQ twsv13Q = ((newy-@twsv13aQ)*@twsv13bQ)^@twsv13cQ endif if @twsv10Q == true twsv10Q = ((y-@twsv10aQ)*@twsv10bQ)^@twsv10cQ else twsv10Q = ((xx-@twsv10aQ)*@twsv10bQ)^@twsv10cQ endif if @twsv11Q == true twsv11Q = ((y-@twsv11aQ)*@twsv11bQ)^@twsv11cQ else twsv11Q = ((xx-@twsv11aQ)*@twsv11bQ)^@twsv11cQ endif if @twsv12Q == true twsv12Q = ((xx-@twsv12aQ)*@twsv12bQ)^@twsv12cQ else twsv12Q = ((y-@twsv12aQ)*@twsv12bQ)^@twsv12cQ endif if @twsv14Q == true twsv14Q = ((y-@twsv14aQ)*@twsv14bQ)^@twsv14cQ else twsv14Q = ((xx-@twsv14aQ)*@twsv14bQ)^@twsv14cQ endif if @twsv15Q == true twsv15Q = ((xx-@twsv15aQ)*@twsv15bQ)^@twsv15cQ else twsv15Q = ((y-@twsv15aQ)*@twsv15bQ)^@twsv15cQ endif if @twsv16Q == true twsv16Q = ((y-@twsv16aQ)*@twsv16bQ)^@twsv16cQ else twsv16Q = ((xx-@twsv16aQ)*@twsv16bQ)^@twsv16cQ endif if @twsOp2Q == "1" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "2" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "3" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "4" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "5" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "6" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "7" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "8" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "9" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "10" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "11" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "12" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "13" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "14" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "15" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "16" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "17" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "18" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "19" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "20" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "21" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "22" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "23" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "24" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "25" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "26" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "27" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "28" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "29" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "30" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "31" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "32" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "33" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "34" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "35" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "36" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "37" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "38" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "39" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "40" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "41" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "42" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "43" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "44" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "45" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "46" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "47" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "48" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "49" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "50" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "51" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "52" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "53" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "54" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "55" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "56" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "57" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "58" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "59" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "60" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "61" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "62" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "63" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "64" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) endif elseif @formulaQ == "Twirl" if @twv1Q == true twv1Q = ((y-@twv1aQ)*@twv1bQ)^@twv1cQ twv6Q = ((x-@twv6aQ)*@twv6bQ)^@twv6cQ else twv1Q = ((x-@twv1aQ)*@twv1bQ)^@twv1cQ twv6Q = ((y-@twv6aQ)*@twv6bQ)^@twv6cQ endif if @twv2Q == true twv2Q = ((y-@twv2aQ)*@twv2bQ)^@twv2cQ else twv2Q = ((xx-@twv2aQ)*@twv2bQ)^@twv2cQ endif if @twv3Q == true twv3Q = ((xx-@twv3aQ)*@twv3bQ)^@twv3cQ else twv3Q = ((y-@twv3aQ)*@twv3bQ)^@twv3cQ endif if @twv4Q == true twv4Q = ((y-@twv4aQ)*@twv4bQ)^@twv4cQ else twv4Q = ((xx-@twv4aQ)*@twv4bQ)^@twv4cQ endif if @twv5Q == true twv5Q = ((xx-@twv5aQ)*@twv5bQ)^@twv5cQ else twv5Q = ((y-@twv5aQ)*@twv5bQ)^@twv5cQ endif if @twv7Q == true twv7Q = ((xx-@twv7aQ)*@twv7bQ)^@twv7cQ else twv7Q = ((y-@twv7aQ)*@twv7bQ)^@twv7cQ endif if @twv8Q == true twv8Q = ((y-@twv8aQ)*@twv8bQ)^@twv8cQ else twv8Q = ((xx-@twv8aQ)*@twv8bQ)^@twv8cQ endif if @twv9Q == true twv9Q = ((xx-@twv9aQ)*@twv9bQ)^@twv9cQ else twv9Q = ((y-@twv9aQ)*@twv9bQ)^@twv9cQ endif if @twv10Q == true twv10Q = ((xx-@twv10aQ)*@twv10bQ)^@twv10cQ else twv10Q = ((y-@twv10aQ)*@twv10bQ)^@twv10cQ endif float twirl1Q = 0 float twirl6Q = 0 if @twiFlavorQ == true twirl1Q = cabs(@twfn1Q(twv1Q)) twirl6Q = cabs(@twfn6Q(twv6Q)) else twirl1Q = real(@twfn1Q(twv1Q)) twirl6Q = real(@twfn6Q(twv6Q)) endif if @twiOpQ == "1" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "2" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "3" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "4" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "5" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "6" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "7" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "8" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "9" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "10" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "11" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "12" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "13" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "14" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "15" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "16" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "17" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "18" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "19" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "20" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "21" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "22" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "23" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "24" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "25" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "26" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "27" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "28" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "29" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "30" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "31" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "32" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "33" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "34" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "35" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "36" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "37" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "38" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "39" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "40" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "41" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "42" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "43" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "44" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "45" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "46" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "47" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "48" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "49" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "50" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "51" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "52" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "53" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "54" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "55" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "56" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "57" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "58" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "59" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "60" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "61" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "62" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "63" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "64" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) endif elseif @formulaQ == "Driftwood" if @tgwv1Q == true tgwv1Q = ((y-@tgwv1aQ)*@tgwv1bQ)^@tgwv1cQ tgwv5Q = ((x-@tgwv5aQ)*@tgwv5bQ)^@tgwv5cQ else tgwv1Q = ((x-@tgwv1aQ)*@tgwv1bQ)^@tgwv1cQ tgwv5Q = ((y-@tgwv5aQ)*@tgwv5bQ)^@tgwv5cQ endif if @tgwv2Q == true tgwv2Q = ((y-@tgwv2aQ)*@tgwv2bQ)^@tgwv2cQ else tgwv2Q = ((xx-@tgwv2aQ)*@tgwv2bQ)^@tgwv2cQ endif if @tgwv3Q == true tgwv3Q = ((xx-@tgwv3aQ)*@tgwv3bQ)^@tgwv3cQ else tgwv3Q = ((y-@tgwv3aQ)*@tgwv3bQ)^@tgwv3cQ endif if @tgwv4Q == true tgwv4Q = ((xx-@tgwv4aQ)*@tgwv4bQ)^@tgwv4cQ else tgwv4Q = ((y-@tgwv4aQ)*@tgwv4bQ)^@tgwv4cQ endif if @tgwv6Q == true tgwv6Q = ((y-@tgwv6aQ)*@tgwv6bQ)^@tgwv6cQ else tgwv6Q = ((xx-@tgwv6aQ)*@tgwv6bQ)^@tgwv6cQ endif float drift1Q = 0 float drift5Q = 0 if @tgwFlavor1Q == true drift1Q = cabs(@tgwfn1Q(tgwv1Q)) drift5Q = cabs(@tgwfn5Q(tgwv5Q)) else drift1Q = real(@tgwfn1Q(tgwv1Q)) drift5Q = real(@tgwfn5Q(tgwv5Q)) endif if @tgwOp1Q == "1" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "2" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "3" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "4" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "5" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "6" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "7" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "8" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "5" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q - \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "6" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q - \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "7" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q - \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "8" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q - \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) endif if @tgwv7Q == true tgwv7Q = ((newy-@tgwv7aQ)*@tgwv7bQ)^@tgwv7cQ tgwv11Q = ((newx-@tgwv11aQ)*@tgwv11bQ)^@tgwv11cQ else tgwv7Q = ((newx-@tgwv7aQ)*@tgwv7bQ)^@tgwv7cQ tgwv11Q = ((newy-@tgwv11aQ)*@tgwv11bQ)^@tgwv11cQ endif if @tgwv8Q == true tgwv8Q = ((xx-@tgwv8aQ)*@tgwv8bQ)^@tgwv8cQ else tgwv8Q = ((y-@tgwv8aQ)*@tgwv8bQ)^@tgwv8cQ endif if @tgwv9Q == true tgwv9Q = ((y-@tgwv9aQ)*@tgwv9bQ)^@tgwv9cQ else tgwv9Q = ((xx-@tgwv9aQ)*@tgwv9bQ)^@tgwv9cQ endif if @tgwv10Q == true tgwv10Q = ((xx-@tgwv10aQ)*@tgwv10bQ)^@tgwv10cQ else tgwv10Q = ((y-@tgwv10aQ)*@tgwv10bQ)^@tgwv10cQ endif if @tgwv12Q == true tgwv12Q = ((xx-@tgwv12aQ)*@tgwv12bQ)^@tgwv12cQ else tgwv12Q = ((y-@tgwv12aQ)*@tgwv12bQ)^@tgwv12cQ endif if @tgwOp2Q == "1" x = real(@tgwfn7Q(tgwv7Q)) - real(@tgwh2Q * @tgwfn8Q(tgwv8Q + \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) + imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "2" x = real(@tgwfn7Q(tgwv7Q)) + real(@tgwh2Q * @tgwfn8Q(tgwv8Q + \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) - imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "3" x = real(@tgwfn7Q(tgwv7Q)) + real(@tgwh2Q * @tgwfn8Q(tgwv8Q + \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) + imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "4" x = real(@tgwfn7Q(tgwv7Q)) - real(@tgwh2Q * @tgwfn8Q(tgwv8Q + \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) - imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "5" x = real(@tgwfn7Q(tgwv7Q)) - real(@tgwh2Q * @tgwfn8Q(tgwv8Q - \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) + imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "6" x = real(@tgwfn7Q(tgwv7Q)) + real(@tgwh2Q * @tgwfn8Q(tgwv8Q - \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) - imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "7" x = real(@tgwfn7Q(tgwv7Q)) + real(@tgwh2Q * @tgwfn8Q(tgwv8Q - \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) + imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "8" x = real(@tgwfn7Q(tgwv7Q)) - real(@tgwh2Q * @tgwfn8Q(tgwv8Q - \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) - imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) endif endif endif i = i + 1 endwhile x = real(@fnx2((x-@pvol2a)*@pvol2b)^ @pvol2) y = real(@fny2((y-@pvol3a)*@pvol3b) ^ @pvol3) IF @nuflav == true IF @nuflav2 == true IF @opxy == "X+Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) + @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "X-Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) - @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "Y-X" z = @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b))-@nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) ENDIF ELSE IF @opxy == "X+Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) + flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "X-Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) - flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "Y-X" z = flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b))-@nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) ENDIF ENDIF IF @opadd == "None" z = z ELSEIF @opadd == "+(X+Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x + \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X+Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x + \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(X-Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x - \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd== "-(X-Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x - \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y-X)" z = z + (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y - \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y-X)" z = z - (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y - \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "+(X*Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x * \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X*Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x * \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(X/Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x / \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X/Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x / \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y/X)" z = z + (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y / \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y/X)" z = z - (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y / \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "+(X^Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x ^ \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X^Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x ^ \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y^X)" z = z + (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y ^ \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y^X)" z = z - (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y ^ \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ENDIF ELSE IF @nuflav2 == true IF @opxy == "X+Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) + @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "X-Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) - @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "Y-X" z = @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b))-@nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) ENDIF ELSE IF @opxy == "X+Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) + flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "X-Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) - flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "Y-X" z = flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b))-@nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) ENDIF ENDIF IF @varType == "Normal" z = z ELSEIF @varType == "Modulus" z = |z| ELSEIF @varType == "Atan2" z = atan2(z) ELSEIF @varType == "Real" z = real(z) ELSEIF @varType == "Imag" z = imag(z) ENDIF IF @opadd == "None" z = z ELSEIF @opadd == "+(X+Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x + \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X+Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x + \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(X-Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x - \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd== "-(X-Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x - \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y-X)" z = z + (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y - \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y-X)" z = z - (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y - \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "+(X*Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x * \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X*Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x * \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(X/Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x / \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X/Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x / \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y/X)" z = z + (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y / \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y/X)" z = z - (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y / \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "+(X^Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x ^ \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X^Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x ^ \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y^X)" z = z + (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y ^ \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y^X)" z = z - (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y ^ \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ENDIF ENDIF IF @zmod == "Normal" tz = z ELSEIF @zmod == "Modulus" tz = |z| ELSEIF @zmod == "Atan 2" tz = atan2(z) ELSEIF @zmod == "Real" tz = real(z) ELSEIF @zmod == "Imag" tz = imag(z) ENDIF IF @loop == "Simple" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 ELSEIF @loop == "Complex" IF @op4 == "+" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "+" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "*" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "/" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "^" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ENDIF ENDIF bailout: iter < @bail default: title = "Mandy Mix'n'Match" param version caption = "Version" default = 1.0 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param sscale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam int param begex caption = "User Mode" enum = "Simple""Advanced" default = 0 endparam heading caption = "Initial Section" endheading bool param np caption = "Initial Section" default = true endparam param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 0 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnzInit caption = "init Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fncInit caption = "Init C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc func ssfn caption = "Switch Seed Func" default = ident() hint = "Applies a function to the initial Z" endfunc func pixfn caption = "Switch Pixel Func" default = ident() hint = "Applies a function to the initial C" endfunc heading caption = "General Parameters" endheading param loop caption = "Loop Type" enum = "Simple""Complex" default = 0 endparam int param zmod caption = "2nd Z Definition" enum = "Normal""Modulus""Atan 2""Real""Imag" default = 0 visible = @loop == "Complex" endparam complex param startseed caption = "Start/Seed" default = (1,0) endparam float param bail caption = "Bailout" default = 12 endparam int param varType caption = "X/Y Species" enum = "Normal""Modulus""Atan2""Real""Imag" default = 0 endparam int param opxy caption = "X/Y Operator" enum = "X+Y""X-Y""Y-X" default = 0 hint = "The last two choices add an extra set of X and Y values to the \ definition of Z whose strength and associated functions can \ be varied according to the parameters below" visible = @pat && @varType != "Modulus" endparam func nufnx2 caption = "X Function" default = ident () endfunc func nufny2 caption = "Y Function" default = ident () endfunc bool param nuflav2 caption = "Change Y Fn Flavor" default = false endparam int param opadd caption = "Extra X/Y" enum = "None""+(X+Y)""-(X+Y)""+(X-Y)""-(X-Y)""+(Y-X)""-(Y-X)""+(X*Y)"\ "-(X*Y)""+(X/Y)""-(X/Y)""+(Y/X)""-(Y/X)""+(X^Y)""-(X^Y)""+(Y^X)""-(Y^X)" default = 0 visible = @pat endparam func nufuncxtx caption = "Extra X Fn" default = sin() hint = "Varies the function associated with the X variable in the \ extra X/Y set." visible = @pat && @opadd > 0 endfunc func nufuncxty caption = "Extra Y Fn" default = sin() hint = "Varies the function associated with the Y variable in the \ extra X/Y set." visible = @pat && @opadd > 0 endfunc bool param nuflav caption = "Change Extra Y Fn Flavor" default = false visible = @opadd > 0 endparam complex param xtra1x caption = "Extra X Offset" default = (0,0) hint = "Varies the offset in the extra X/Y set" visible = @opadd > 0 endparam complex param xtra2x caption = "Extra X Strength" default = (1,0) hint = "Varies the strength in the extra X/Y set" visible = @opadd > 0 endparam complex param xtra3x caption = "Extra X Power" default = (1,0) hint = "Varies the offset in the extra X/Y set" visible = @opadd > 0 endparam complex param xtra1y caption = "Extra Y Offset" default = (0,0) hint = "Varies the offset in the extra X/Y set" visible = @opadd > 0 endparam complex param xtra2y caption = "Extra Y Strength" default = (1,0) hint = "Varies the strength in the extra X/Y set" visible = @opadd > 0 endparam complex param xtra3y caption = "Extra Y Power" default = (1,0) hint = "Varies the offset in the extra X/Y set" visible = @opadd > 0 endparam heading caption = "Formula Parameters" endheading bool param pat caption = "All Formula Parameters" default = true endparam int param seq caption = "Formula Scenario" enum = "Single""Modulated""Blend" default = 0 hint = "Defines if and how the effects of two different formulae are used \ to determine how the elements are colored. 'Single' uses only one \ formula. 'Modulated' uses a second formula after a user-determined \ number of iterations, however in this formula the effect is \ a type of blend. 'Blend' mixes the effects of two different \ formuale" visible = @patPar && @pat endparam int param modCmp caption = "Mod Intensity" default = 3 hint = "At what iteration the modulation starts. If '0' all iters are \ of modulation formula. In this formula the effect does not \ create sets of discrete elements, but varies the look of \ all the elements" visible = @seq == "Modulated" && @pat endparam int param modBy caption = "Mod Depth" default = 2 hint = "How many iterations of 2nd formula are present. In this formula \ the effect does not create sets of discrete elements, but varies \ the look of all the elements" visible = @seq == "Modulated" && @pat endparam int param randomseed caption = "Random Seed" default = 123456 hint = "Affects how the two formuale are mixed in 'Blend' mode" visible = @seq == "Blend" && @pat endparam float param prob1 caption = "Blend Proportion" default = 0.5 min = 0.0 max = 1.0 hint = "Determines the predominance of one or the other formula \ using 'Blend' mode. In this formula the effect is often \ 'either/or', and depends somewhat on the value of the \ random seed" visible = @seq == "Blend" && @pat endparam int param blendFn caption = "Blending Function" enum = "abs""ident""tan""sin""sinh (fixed value)""cos" \ "cosh (fixed value)""acos""exp (fixed value)" default = 0 hint = "Changes the way the formulae are blended to create \ the element shapes using 'Blend'. 'sinh', 'cosh' \ and 'exp' do not respond to changes in 'Blend \ Proportion'" visible = @seq == "Blend" && @pat endparam int param iters caption = "# of Formula Iters" default = 5 min = 1 hint = "How many times the formula pattern is iterated before going \ into the loop. Larger values render more slowly and create \ more complex patterns." visible = @pat endparam complex param scale caption = "Emphasis" default = (1,0) hint = "Changes the sizes and shapes of the elements" visible = @pat endparam float param exr caption = "Deform 1" default = 1 hint = "Changes the sizes and shapes of the elements" visible = @begex == 1 && @pat endparam float param pp2 caption = "Deform 2" default = 1 hint = "Changes the sizes and shapes of the elements" visible = @begex == 1 && @pat endparam float param scale2 caption = "X Intensity (pre)" default = 1 hint = "Changes the value of X at the top of the loop" visible = @begex == 1 && @pat endparam float param pvol2a caption = "X Offset" default = 0 hint = "Changes the pattern distribution on the real axis" visible = @begex == 1 && @pat endparam float param pvol2b caption = "X Strength" default = 1 hint = "Changes the pattern distribution on the real axis" visible = @begex == 1 && @pat endparam float param pvol2 caption = "X Exponent" default = 1 hint = "Changes the pattern distribution on the real axis" visible = @begex == 1 && @pat endparam float param scale3 caption = "Y Intensity (pre)" default = 1 hint = "Changes the value of Y at the top of the loop" visible = @begex == 1 && @pat endparam float param pvol3a caption = "Y Offset" default = 0 hint = "Changes the pattern distribution on the imaginary axis" visible = @begex == 1 && @pat endparam float param pvol3b caption = "Y Strength" default = 1 hint = "Changes the pattern distribution on the imaginary axis" visible = @begex == 1 && @pat endparam float param pvol3 caption = "Y Exponent" default = 1 hint = "Changes the pattern distribution on the imaginary axis" visible = @begex == 1 && @pat endparam complex param offset1 caption = "Offset" default = (0,0) visible = @begex == 1 && @pat endparam complex param paramP3 caption = "Offset 2" default = (0,0) visible = @begex == 1 && @pat endparam float param distD caption = "Edge 1" default = 0 hint = "Creates an 'edge' around the elements" visible = @begex == 1 && @pat endparam float param distE caption = "Edge 2" default = 1 hint = "Creates an 'edge' around the elements" visible = @begex == 1 && @pat endparam complex param distF caption = "Edge 3" default = (1,0) hint = "Creates an 'edge' around the elements" visible = @begex == 1 && @pat endparam heading caption = "'Single' Formula Parameters" visible = @patPar && @pat endheading bool param patPar caption = "'Single' Formula Parameters" default = true visible = @pat endparam param formula caption = "Formula Type" enum = "Martin" "Popcorn" "Vine" "Glyph" "Gnarl" "Hopalong" "Dynamic" \ "Tanglewood""Twirl""Driftwood" default = 4 visible = @patPar && @pat endparam heading caption = "Martin Parameters" visible = @formula == 0 && @patPar && @pat endheading bool param martV1 caption = "Change 1st Variable" default = false visible = @formula == 0 && @patPar && @pat endparam bool param martV2 caption = "Change 2nd Variable" default = false visible = @formula == 0 && @patPar && @pat endparam bool param martV3 caption = "Change 3rd Variable" default = false visible = @formula == 0 && @patPar && @pat endparam int param martOp caption = "Martin Flavor" enum = "1""2" default = 0 visible = @formula == 0 && @patPar && @pat endparam float param maa caption = "Martin Alpha" default = 3.14 visible = @formula == 0 && @patPar && @pat endparam complex param mx caption = "Martin X1" default = (0,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat endparam float param mxm caption = "Martin X2" default = 1 visible = @begex == 1 && @formula == 0 && @patPar && @pat endparam complex param mxe caption = "Martin X3" default = (1,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat endparam complex param my caption = "Martin Y1" default = (0,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat endparam complex param mym caption = "Martin Y2" default = (1,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat endparam complex param mye caption = "Martin Y3" default = (1,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat endparam complex param mxx caption = "Martin XX1" default = (0,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat endparam float param mxxm caption = "Martin XX2" default = 1 visible = @begex == 1 && @formula == 0 && @patPar && @pat endparam complex param mxxe caption = "Martin XX3" default = (1,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat endparam bool param martFlav caption = "Symmetry" default = false visible = @formula == 0 && @patPar && @pat endparam func martfn caption = "Martin X Func" default = sin() visible = @formula == 0 && @patPar && @pat endfunc func fnmy1 caption = "Martin Y Func" default = ident() visible = @formula == 0 && @patPar && @pat endfunc func fnmx1 caption = "Martin XX Func" default = ident() visible = @formula == 0 && @patPar && @pat endfunc heading caption = "Vine Parameters" visible = @formula == 2 && @patPar && @pat endheading param flavor caption = "Vine flavor" default = 2 min = 0 visible = @formula == 2 && @patPar && @pat endparam bool param vinV1 caption = "Change Main Variables" default = false visible = @formula == 2 && @patPar && @flavor < 3 && @pat endparam bool param vinV2 caption = "Change 2nd Variable" default = false visible = @formula == 2 && @patPar && @flavor < 3 && @pat endparam bool param vinV3 caption = "Change 3rd Variable" default = false visible = @formula == 2 && @patPar && @flavor < 3 && @pat endparam bool param vinV5 caption = "Change 5th Variable" default = false visible = @formula == 2 && @patPar && @flavor < 3 && @pat endparam bool param vinV6 caption = "Change 6th Variable" default = false visible = @formula == 2 && @patPar && @flavor < 3 && @pat endparam bool param vinV7 caption = "Change 7th Variable" default = false visible = @formula == 2 && (@flavor > 1 && @flavor < 3) && @patPar && @pat endparam bool param vinV8 caption = "Change 8th Variable" default = false visible = @formula == 2 && @patPar && (@flavor > 1 && @flavor < 3) && @pat endparam int param vinOp1 caption = "Vine Operator 1" enum = "1""2""3""4" default = 0 visible = @formula == 2 && @flavor <3 && @patPar && @pat endparam int param vinOp2c caption = "Vine Operator 2" enum = "1""2""3""4" default = 0 visible = @vinFlavor == true && @formula == 2 && @flavor > 2 && @patPar && \ @pat endparam int param vinOp2r caption = "Vine Operator 2" enum = "1""2""3""4" default = 0 visible = @vinFlavor == false && @formula == 2 && @flavor > 2 && @patPar &&\ @pat endparam int param vinOp3c caption = "Vine Operator 3" enum = "1""2""3""4" default = 0 visible = @vinFlavor == true && @formula == 2 && @flavor > 2 && @patPar && \ @pat endparam int param vinOp3r caption = "Vine Operator 3" enum = "1""2""3""4" default = 0 visible = @vinFlavor == false && @formula == 2 && @flavor > 2 && @patPar &&\ @pat endparam float param va caption = "Vine Alpha" default = 3.0 visible = @formula == 2 && @patPar && @pat endparam float param vb caption = "Vine Beta" default = 2.0 visible = @formula == 2 && (@flavor > 1 && @flavor < 3) && @patPar && @pat endparam float param h2r caption = "Step Size (re)" default = 0.05 visible = @formula == 2 && @flavor < 3 && @patPar && @pat endparam float param h2i caption = "Step Size (im)" default = 0.05 visible = @formula == 2 && @flavor < 3 && @patPar && @pat endparam float param h3r caption = "Step Size 2 (re)" default = 0.05 visible = @formula == 2 && @flavor < 3 && @patPar && @pat endparam float param h3i caption = "Step Size 2 (im)" default = 0.05 visible = @formula == 2 && @flavor < 3 && @patPar && @pat endparam float param v1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v7a caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 && \ @flavor < 3) && @pat endparam float param v7b caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 && \ @flavor < 3) && @pat endparam float param v7c caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 && \ @flavor < 3) && @pat endparam float param v8a caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 \ && @flavor < 3) && @pat endparam float param v8b caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 \ && @flavor < 3) && @pat endparam float param v8c caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 && \ @flavor < 3) && @pat endparam bool param vinFlavor caption = "Symmetry" default = false visible = @formula == 2 && @patPar && @pat endparam func vinfnx1 caption = "Vine X Fn" default = ident() visible = @formula == 2 && @patPar && @pat endfunc func vinfny1 caption = "Vine Y Fn" default = ident() visible = @formula == 2 && @patPar && @pat endfunc func vinfnx2 caption = "Vine X Fn 2" default = ident() visible = @formula == 2 && @patPar && @flavor >2 && @pat endfunc func vinfny2 caption = "Vine Y Fn 2" default = ident() visible = @formula == 2 && @flavor >2 && @patPar && @pat endfunc func vinfn1 caption = "Vine Fn 1" default = sin() visible = @formula == 2 && @patPar && @pat endfunc func vinfn2 caption = "Vine Fn 2" default = sin() visible = @formula == 2 && @patPar && @pat endfunc func vinfn3 caption = "Vine Fn 3" default = sin() visible = @formula == 2 && @patPar && @pat endfunc func vinfn4 caption = "Vine Fn 4" default = sin() visible = @formula == 2 && @patPar && @pat endfunc func vinfn5 caption = "Vine Fn 5" default = sin() visible = @formula == 2 && @flavor == 2 && @patPar && @pat endfunc func vinfn6 caption = "Vine Fn 6" default = sin() visible = @formula == 2 && @flavor == 2 && @patPar && @pat endfunc func vinfn7 caption = "Vine Fn 7" default = ident() visible = @formula == 2 && @flavor > 2 && @patPar && @pat endfunc func vinfn8 caption = "Vine Fn 8" default = ident() visible = @formula == 2 && @flavor > 2 && @patPar && @pat endfunc func vinfn9 caption = "Vine Fn 9" default = sin() visible = @formula == 2 && @flavor > 2 && @patPar && @pat endfunc func vinfn10 caption = "Vine Fn 10" default = sin() visible = @formula == 2 && @flavor > 2 && @patPar && @pat endfunc func vinfn11 caption = "Vine Fn 11" default = sin() visible = @formula == 2 && @flavor > 2 && @patPar && @pat endfunc heading caption = "Popcorn Parameters" visible = @formula == 1 && @patPar && @pat endheading int param popflavor1 caption = "1st Flavor" enum = "1""2""3""4" default = 0 visible = @formula == 1 && @patPar && @pat endparam int param popflavor2 caption = "2nd Flavor" enum = "1""2""3""4" default = 0 visible = @formula == 1 && @patPar && @pat endparam bool param v1 caption = "Change 1st Variable" default = false visible = @formula == 1 && @patPar && @pat endparam bool param v2 caption = "Change 2nd Variable" default = false visible = @formula == 1 && @patPar && @pat endparam bool param v3 caption = "Change 3rd Variable" default = false visible = @formula == 1 && @patPar && @pat endparam bool param v4 caption = "Change 4th Variable" default = false visible = @formula == 1 && @patPar && @pat endparam float param popx caption = "X Param" default = 1 visible = @formula == 1 && @patPar && @pat endparam float param popy caption = "Y Param" default = 1 visible = @formula == 1 && @patPar && @pat endparam complex param popc caption = "Constant" default = (3,3) visible = @formula == 1 && @patPar && @pat endparam complex param h1 caption = "Step Size" default = (.05,.05) visible = @formula == 1 && @patPar && @pat endparam float param pop1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam float param pop1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam float param pop1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam float param pop2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam float param pop2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam float param pop2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam float param pop3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam float param pop3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam float param pop3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam float param pop4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam float param pop4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam float param pop4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat endparam bool param funcPopType caption = "Symmetry" default = false visible = @formula == 1 && @patPar && @pat endparam func fnpopx caption = "Popcorn X Function" default = ident() visible = @formula == 1 && @patPar && @pat endfunc func fnpopy caption = "Popcorn Y Function" default = ident() visible = @formula == 1 && @patPar && @pat endfunc func popfn1 caption = "Popcorn Fn 1" default = sin() visible = @formula == 1 && @patPar && @pat endfunc func popfn2 caption = "Popcorn Fn 2" default = tan() visible = @formula == 1 && @patPar && @pat endfunc func popfn3 caption = "Popcorn Fn 3" default = sin() visible = @formula == 1 && @patPar && @pat endfunc func popfn4 caption = "Popcorn Fn 4" default = tan() visible = @formula == 1 && @patPar && @pat endfunc heading caption = "Glyph Parameters" visible = @formula == 3 && @patPar && @pat endheading int param glv1 caption = "1st Variable Type" enum = "x""y""newx""newy" default = 1 visible = @formula == 3 && @patPar && @pat endparam int param glv2 caption = "2nd Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formula == 3 && @patPar && @pat endparam int param glv3 caption = "3rd Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formula == 3 && @patPar && @pat endparam int param glv4 caption = "4th Variable Type" enum = "x""y""newx""newy" default = 0 visible = @formula == 3 && @patPar && @pat endparam int param glv5 caption = "5th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formula == 3 && @patPar && @pat endparam int param glv6 caption = "6th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formula == 3 && @patPar && @pat endparam int param glv7 caption = "7th Variable Type" enum = "x""y""newx""newy" default = 0 visible = @formula == 3 && @patPar && @pat endparam int param glv8 caption = "8th Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formula == 3 && @patPar && @pat endparam int param glv9 caption = "9th Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formula == 3 && @patPar && @pat endparam int param glv10 caption = "10th Variable Type" enum = "x""y""newx""newy" default = 1 visible = @formula == 3 && @patPar && @pat endparam int param glv11 caption = "11th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formula == 3 && @patPar && @pat endparam int param glv12 caption = "12th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formula == 3 && @patPar && @pat endparam int param glyOp1 caption = "Operator 1" enum = "1""2""3""4" default = 0 visible = @formula == 3 && @patPar && @pat endparam int param glyOp2 caption = "Operator 2" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16" default = 0 visible = @formula == 3 && @patPar && @pat endparam float param glya caption = "Glyph Alpha" default = 3 visible = @formula == 3 && @patPar && @pat endparam float param h4r caption = "Step Size 1 (re)" default = .8 visible = @formula == 3 && @patPar && @pat endparam float param h4i caption = "Step Size 1 (im)" default = .8 visible = @formula == 3 && @patPar && @pat endparam float param h5r caption = "Step Size 2 (re)" default = .8 visible = @formula == 3 && @patPar && @pat endparam float param h5i caption = "Step Size 2 (im)" default = .8 visible = @formula == 3 && @patPar && @pat endparam float param h6r caption = "Step Size 3 (re)" default = .05 visible = @formula == 3 && @patPar && @pat endparam float param h6i caption = "Step Size 3 (im)" default = .05 visible = @formula == 3 && @patPar && @pat endparam float param h7r caption = "Step Size 4 (re)" default = .05 visible = @formula == 3 && @patPar && @pat endparam float param h7i caption = "Step Size 4 (im)" default = .05 visible = @formula == 3 && @patPar && @pat endparam float param gly1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly7a caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly7b caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly7c caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly8a caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly8b caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly8c caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly9a caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly9b caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly9c caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly10a caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly10b caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly10c caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly11a caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly11b caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly11c caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly12a caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly12b caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam float param gly12c caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat endparam bool param glyphFlavor1 caption = "Symmetry" default = false visible = @formula == 3 && @patPar && @pat endparam func glyfn1 caption = "Glyph Fn 1" default = cos() visible = @formula == 3 && @patPar && @pat endfunc func glyfn2 caption = "Glyph Fn 2" default = cos() visible = @formula == 3 && @patPar && @pat endfunc func glyfn3 caption = "Glyph Fn 3" default = ident() visible = @formula == 3 && @patPar && @pat endfunc func glyfn4 caption = "Glyph Fn 4" default = ident() visible = @formula == 3 && @patPar && @pat endfunc func glyfn5 caption = "Glyph Fn 5" default = sin() visible = @formula == 3 && @patPar && @pat endfunc func glyfn6 caption = "Glyph Fn 6" default = sin() visible = @formula == 3 && @patPar && @pat endfunc func glyfn7 caption = "Glyph Fn 7" default = sin() visible = @formula == 3 && @patPar && @pat endfunc func glyfn8 caption = "Glyph Fn 8" default = sin() visible = @formula == 3 && @patPar && @pat endfunc func glyfn9 caption = "Glyph Fn 9" default = ident() visible = @formula == 3 && @patPar && @pat endfunc func glyfn10 caption = "Glyph Fn 10" default = ident() visible = @formula == 3 && @patPar && @pat endfunc func glyfn11 caption = "Glyph Fn 11" default = ident() visible = @formula == 3 && @patPar && @pat endfunc func glyfn12 caption = "Glyph Fn 12" default = ident() visible = @formula == 3 && @patPar && @pat endfunc func glyfn13 caption = "Glyph Fn 13" default = cos() visible = @formula == 3 && @patPar && @pat endfunc func glyfn14 caption = "Glyph Fn 14" default = cos() visible = @formula == 3 && @patPar && @pat endfunc heading caption = "Gnarl Parameters" visible = @formula == 4 && @patPar && @pat endheading bool param gn1 caption = "Change Main Variables" default = false visible = @formula == 4 && @patPar && @pat endparam bool param gn2 caption = "Change 2nd Variable" default = false visible = @formula == 4 && @patPar && @pat endparam bool param gn3 caption = "Change 3rd Variable" default = false visible = @formula == 4 && @patPar && @pat endparam bool param gn4 caption = "Change 4th Variable" default = false visible = @formula == 4 && @patPar && @pat endparam bool param gn6 caption = "Change 6th Variable" default = false visible = @formula == 4 && @patPar && @pat endparam bool param gn7 caption = "Change 7th Variable" default = false visible = @formula == 4 && @patPar && @pat endparam bool param gn8 caption = "Change 8th Variable" default = false visible = @formula == 4 && @patPar && @pat endparam int param gnOp caption = "Gnarl Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formula == 4 && @patPar && @pat endparam float param gna caption = "Gnarl Alpha" default = 3 visible = @formula == 4 && @patPar && @pat endparam float param gnb caption = "Gnarl Beta" default = 2 visible = @formula == 4 && @patPar && @pat endparam float param h8r caption = "Step Size (re)" default = .05 visible = @formula == 4 && @patPar && @pat endparam float param h8i caption = "Step Size (im)" default = .05 visible = @formula == 4 && @patPar && @pat endparam float param gn1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn7a caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn7b caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn7c caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn8a caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn8b caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam float param gn8c caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat endparam bool param gnFlavor caption = "Symmetry" default = false visible = @formula == 4 && @patPar && @pat endparam func gnfnx caption = "Gnarl Fn 1" default = ident() visible = @formula == 4 && @patPar && @pat endfunc func gnfn1 caption = "Gnarl Fn 2" default = sin() visible = @formula == 4 && @patPar && @pat endfunc func gnfn2 caption = "Gnarl Fn 3" default = sin() visible = @formula == 4 && @patPar && @pat endfunc func gnfn3 caption = "Gnarl Fn 4" default = sin() visible = @formula == 4 && @patPar && @pat endfunc func gnfny caption = "Gnarl Fn 5" default = ident() visible = @formula == 4 && @patPar && @pat endfunc func gnfn4 caption = "Gnarl Fn 6" default = sin() visible = @formula == 4 && @patPar && @pat endfunc func gnfn5 caption = "Gnarl Fn 7" default = sin() visible = @formula == 4 && @patPar && @pat endfunc func gnfn6 caption = "Gnarl Fn 8" default = sin() visible = @formula == 4 && @patPar && @pat endfunc heading caption = "Hopalong Parameters" visible = @formula == 5 && @patPar && @pat endheading float param pA caption = "A" default = 0.4 visible = @formula == 5 && @patPar && @pat endparam float param pB caption = "B" default = 1.0 visible = @formula == 5 && @patPar && @pat endparam float param pC caption = "C" default = 0.0 visible = @formula == 5 && @patPar && @pat endparam float param sx caption = "Spread" default = -1 visible = @formula == 5 && @patPar && @pat endparam float param hop caption = "Depth" default = 0 visible = @formula == 5 && @patPar && @pat endparam bool param hopFlavor caption = "Symmetry" default = false visible = @formula == 5 && @patPar && @pat endparam func fnhop caption = "Hopalong Function" default = ident () visible = @formula == 5 && @patPar && @pat endfunc func fnhop2 caption = "Hopalong Function 2" default = sqrt () visible = @formula == 5 && @patPar && @pat endfunc heading caption = "Dynamic Parameters" visible = @formula == 6 && @patPar && @pat endheading bool param dynv1 caption = "Change Main Variables" default = false visible = @formula == 6 && @patPar && @pat endparam bool param dynv2 caption = "Change 2nd Variable" default = false visible = @formula == 6 && @patPar && @pat endparam bool param dynv3 caption = "Change 3rd Variable" default = false visible = @formula == 6 && @patPar && @pat endparam bool param dynv5 caption = "Change 5th Variable" default = false visible = @formula == 6 && @patPar && @pat endparam bool param dynv6 caption = "Change 6th Variable" default = false visible = @formula == 6 && @patPar && @pat endparam int param dynOp caption = "Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16" default = 0 visible = @formula == 6 && @patPar && @pat endparam complex param da caption = "Dynamic Alpha" default = (3,3) visible = @formula == 6 && @patPar && @pat endparam complex param db caption = "Dynamic Beta" default = (2,2) visible = @formula == 6 && @patPar && @pat endparam complex param dhx caption = "Step Size" default = (.05,.05) visible = @formula == 6 && @patPar && @pat endparam float param dynv1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam float param dynv6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat endparam bool param dynFlavor caption = "Symmetry" default = false visible = @formula == 6 && @patPar && @pat endparam func dynfn1 caption = "Dynamic Fn 1" default = ident () visible = @formula == 6 && @patPar && @pat endfunc func dynfn2 caption = "Dynamic Fn 2" default = sin () visible = @formula == 6 && @patPar && @pat endfunc func dynfn3 caption = "Dynamic Fn 3" default = sin () visible = @formula == 6 && @patPar && @pat endfunc func dynfn4 caption = "Dynamic Fn 4" default = ident () visible = @formula == 6 && @patPar && @pat endfunc func dynfn5 caption = "Dynamic Fn 5" default = sin () visible = @formula == 6 && @patPar && @pat endfunc func dynfn6 caption = "Dynamic Fn 6" default = sin () visible = @formula == 6 && @patPar && @pat endfunc heading caption = "Tanglewood Parameters" visible = @formula == 7 && @patPar && @pat endheading bool param twsv1 caption = "Change Main Variables 1" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv9 caption = "Change Main Variables 2" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv2 caption = "Change 2nd Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv3 caption = "Change 3rd Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv4 caption = "Change 4th Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv6 caption = "Change 6th Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv7 caption = "Change 7th Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv8 caption = "Change 8th Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv10 caption = "Change 10th Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv11 caption = "Change 11th Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv12 caption = "Change 12th Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv14 caption = "Change 14th Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv15 caption = "Change 15th Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twsv16 caption = "Change 16th Variable" default = false visible = @formula == 7 && @patPar && @pat endparam int param TwsOp1 caption = "Operator 1" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formula == 7 && @patPar && @pat endparam int param TwsOp2 caption = "Operator 2" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formula == 7 && @patPar && @pat endparam float param twa1 caption = "Tanglewood Alpha 1 (re)" default = 3 visible = @formula == 7 && @patPar && @pat endparam float param twa1b caption = "Tanglewood Alpha 1 (im)" default = 3 visible = @formula == 7 && @patPar && @pat endparam float param twa2 caption = "Tanglewood Alpha 2 (re)" default = 3 visible = @formula == 7 && @patPar && @pat endparam float param twa2b caption = "Tanglewood Alpha 2 (im)" default = 3 visible = @formula == 7 && @patPar && @pat endparam float param twb1 caption = "Tanglewood Beta 1 (re)" default = 2 visible = @formula == 7 && @patPar && @pat endparam float param twb1b caption = "Tanglewood Beta 1 (im)" default = 2 visible = @formula == 7 && @patPar && @pat endparam float param twb2 caption = "Tanglewood Beta 2 (re)" default = 2 visible = @formula == 7 && @patPar && @pat endparam float param twb2b caption = "Tanglewood Beta 2 (im)" default = 2 visible = @formula == 7 && @patPar && @pat endparam float param twsh1 caption = "Step Size 1 (re)" default = .05 visible = @formula == 7 && @patPar && @pat endparam float param twsh1b caption = "Step Size 1 (im)" default = .05 visible = @formula == 7 && @patPar && @pat endparam float param twsh2 caption = "Step Size 2 (re)" default = .05 visible = @formula == 7 && @patPar && @pat endparam float param twsh2b caption = "Step Size 2 (im)" default = .05 visible = @formula == 7 && @patPar && @pat endparam float param twsv1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && \ @pat endparam float param twsv2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && \ @pat endparam float param twsv5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv7a caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv7b caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv7c caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv8a caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv8b caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv8c caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv9a caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv9b caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv9c caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv10a caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv10b caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv10c caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv11a caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv11b caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv11c caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv12a caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv12b caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv12c caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv13a caption = "13th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv13b caption = "13th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv13c caption = "13th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv14a caption = "14th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv14b caption = "14th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv14c caption = "14th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv15a caption = "15th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv15b caption = "15th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv15c caption = "15th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv16a caption = "16th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv16b caption = "16th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat endparam float param twsv16c caption = "16th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && \ @pat endparam bool param twsFlavor1 caption = "Symmetry" default = false visible = @formula == 7 && @patPar && @pat endparam func twsfn1 caption = "Tanglewood Fn 1" default = ident() visible = @formula == 7 && @patPar && @pat endfunc func twsfn2 caption = "Tanglewood Fn 2" default = sin() visible = @formula == 7 && @patPar && @pat endfunc func twsfn3 caption = "Tanglewood Fn 3" default = sin() visible = @formula == 7 && @patPar && @pat endfunc func twsfn4 caption = "Tanglewood Fn 4" default = sin() visible = @formula == 7 && @patPar && @pat endfunc func twsfn5 caption = "Tanglewood Fn 5" default = ident() visible = @formula == 7 && @patPar && @pat endfunc func twsfn6 caption = "Tanglewood Fn 6" default = sin() visible = @formula == 7 && @patPar && @pat endfunc func twsfn7 caption = "Tanglewood Fn 7" default = sin() visible = @formula == 7 && @patPar && @pat endfunc func twsfn8 caption = "Tanglewood Fn 8" default = sin() visible = @formula == 7 && @patPar && @pat endfunc func twsfn9 caption = "Tanglewood Fn 9" default = ident() visible = @formula == 7 && @patPar && @pat endfunc func twsfn10 caption = "Tanglewood Fn 10" default = sin() visible = @formula == 7 && @patPar && @pat endfunc func twsfn11 caption = "Tanglewood Fn 11" default = sin() visible = @formula == 7 && @patPar && @pat endfunc func twsfn12 caption = "Tanglewood Fn 12" default = sin() visible = @formula == 7 && @patPar && @pat endfunc func twsfn13 caption = "Tanglewood Fn 13" default = ident() visible = @formula == 7 && @patPar && @pat endfunc func twsfn14 caption = "Tanglewood Fn 14" default = sin() visible = @formula == 7 && @patPar && @pat endfunc func twsfn15 caption = "Tanglewood Fn 15" default = sin() visible = @formula == 7 && @patPar && @pat endfunc func twsfn16 caption = "Tanglewood Fn 16" default = sin() visible = @formula == 7 && @patPar && @pat endfunc heading caption = "Twirl Parameters" visible = @formula == 8 && @patPar && @pat endheading bool param twv1 caption = "Change Main Variables" default = false visible = @formula == 8 && @patPar && @pat endparam bool param twv2 caption = "Change 2nd Variable" default = false visible = @formula == 8 && @patPar && @pat endparam bool param twv3 caption = "Change 3rd Variable" default = false visible = @formula == 8 && @patPar && @pat endparam bool param twv4 caption = "Change 4th Variable" default = false visible = @formula == 8 && @patPar && @pat endparam bool param twv5 caption = "Change 5th Variable" default = false visible = @formula == 8 && @patPar && @pat endparam bool param twv7 caption = "Change 7th Variable" default = false visible = @formula == 7 && @patPar && @pat endparam bool param twv8 caption = "Change 8th Variable" default = false visible = @formula == 8 && @patPar && @pat endparam bool param twv9 caption = "Change 9th Variable" default = false visible = @formula == 8 && @patPar && @pat endparam bool param twv10 caption = "Change 10th Variable" default = false visible = @formula == 8 && @patPar && @pat endparam int param twiOp caption = "Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formula == 8 && @patPar && @pat endparam complex param ta caption = "Twirl Alpha" default = (3,3) visible = @formula == 8 && @patPar && @pat endparam complex param tb caption = "Twirl Beta" default = (2,2) visible = @formula == 8 && @patPar && @pat endparam float param th caption = "Step Size (re)" default = .05 visible = @formula == 8 && @patPar && @pat endparam float param th2 caption = "Step Size (im)" default = .05 visible = @formula == 8 && @patPar && @pat endparam float param twv1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv7a caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv7b caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv7c caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv8a caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv8b caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv8c caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv9a caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv9b caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv9c caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv10a caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv10b caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam float param twv10c caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat endparam bool param twiFlavor caption = "Symmetry" default = false visible = @formula == 8 && @patPar && @pat endparam func twfn1 caption = "Twirl Fn 1" default = ident() visible = @formula == 8 && @patPar && @pat endfunc func twfn2 caption = "Twirl Fn 2" default = sin() visible = @formula == 8 && @patPar && @pat endfunc func twfn3 caption = "Twirl Fn 3" default = sin() visible = @formula == 8 && @patPar && @pat endfunc func twfn4 caption = "Twirl Fn 4" default = sin() visible = @formula == 8 && @patPar && @pat endfunc func twfn5 caption = "Twirl Fn 5" default = ident() visible = @formula == 8 && @patPar && @pat endfunc func twfn6 caption = "Twirl Fn 6" default = sin() visible = @formula == 8 && @patPar && @pat endfunc func twfn7 caption = "Twirl Fn 7" default = sin() visible = @formula == 8 && @patPar && @pat endfunc func twfn8 caption = "Twirl Fn 8" default = sin() visible = @formula == 8 && @patPar && @pat endfunc func twfn9 caption = "Twirl Fn 9" default = ident() visible = @formula == 8 && @patPar && @pat endfunc func twfn10 caption = "Twirl Fn 10" default = sin() visible = @formula == 8 && @patPar && @pat endfunc heading caption = "Driftwood Parameters" visible = @formula == 9 && @patPar && @pat endheading bool param tgwv1 caption = "Change Main Variables 1" default = false visible = @formula == 9 && @patPar && @pat endparam bool param tgwv7 caption = "Change Main Variables 2" default = false visible = @formula == 9 && @patPar && @pat endparam bool param tgwv2 caption = "Change 2nd Variable" default = false visible = @formula == 9 && @patPar && @pat endparam bool param tgwv3 caption = "Change 3rd Variable" default = false visible = @formula == 9 && @patPar && @pat endparam bool param tgwv4 caption = "Change 4th Variable" default = false visible = @formula == 9 && @patPar && @pat endparam bool param tgwv6 caption = "Change 6th Variable" default = false visible = @formula == 9 && @patPar && @pat endparam bool param tgwv8 caption = "Change 8th Variable" default = false visible = @formula == 9 && @patPar && @pat endparam bool param tgwv9 caption = "Change 9th Variable" default = false visible = @formula == 9 && @patPar && @pat endparam bool param tgwv10 caption = "Change 10th Variable" default = false visible = @formula == 9 && @patPar && @pat endparam bool param tgwv12 caption = "Change 12th Variable" default = false visible = @formula == 9 && @patPar && @pat endparam int param tgwOp1 caption = "Operator 1" enum = "1""2""3""4""5""6""7""8" default = 0 visible = @formula == 9 && @patPar && @pat endparam int param tgwOp2 caption = "Operator 2" enum = "1""2""3""4""5""6""7""8" default = 0 visible = @formula == 9 && @patPar && @pat endparam float param tgwa1 caption = "Driftwood Alpha 1" default = 3 visible = @formula == 9 && @patPar && @pat endparam float param tgwa2 caption = "Driftwood Alpha 2" default = 3 visible = @formula == 9 && @patPar && @pat endparam float param tgwb1 caption = "Driftwood Beta 1" default = 2 visible = @formula == 9 && @patPar && @pat endparam float param tgwb2 caption = "Driftwood Beta 2" default = 2 visible = @formula == 9 && @patPar && @pat endparam complex param tgwh1 caption = "Step Size 1" default = (.05,.05) visible = @formula == 9 && @patPar && \ @pat endparam complex param tgwh2 caption = "Step Size 2" default = (.05,.05) visible = @formula == 9 && @patPar && @pat endparam float param tgwv1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv7a caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv7b caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv7c caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv8a caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv8b caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv8c caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv9a caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv9b caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv9c caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv10a caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv10b caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv10c caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv11a caption = "13th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv11b caption = "13th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv11c caption = "13th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv12a caption = "14th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv12b caption = "14th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam float param tgwv12c caption = "14th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam bool param tgwFlavor1 caption = "Symmetry" default = false visible = @begex == 1 && @formula == 9 && @patPar && @pat endparam func tgwfn1 caption = "Driftwood Fn 1" default = ident() visible = @formula == 9 && @patPar && @pat endfunc func tgwfn2 caption = "Driftwood Fn 2" default = sin() visible = @formula == 9 && @patPar && @pat endfunc func tgwfn3 caption = "Driftwood Fn 3" default = sin() visible = @formula == 9 && @patPar && @pat endfunc func tgwfn4 caption = "Driftwood Fn 4" default = sin() visible = @formula == 9 && @patPar && @pat endfunc func tgwfn5 caption = "Driftwood Fn 5" default = ident() visible = @formula == 9 && @patPar && @pat endfunc func tgwfn6 caption = "Driftwood Fn 6" default = sin() visible = @formula == 9 && @patPar && @pat endfunc func tgwfn7 caption = "Driftwood Fn 7" default = ident() visible = @formula == 9 && @patPar && @pat endfunc func tgwfn8 caption = "Driftwood Fn 8" default = sin() visible = @formula == 9 && @patPar && @pat endfunc func tgwfn9 caption = "Driftwood Fn 9" default = sin() visible = @formula == 9 && @patPar && @pat endfunc func tgwfn10 caption = "Driftwood Fn 10" default = sin() visible = @formula == 9 && @patPar && @pat endfunc func tgwfn11 caption = "Driftwood Fn 11" default = ident() visible = @formula == 9 && @patPar && @pat endfunc func tgwfn12 caption = "Driftwood Fn 12" default = sin() visible = @formula == 9 && @patPar && @pat endfunc heading caption = "Formula 2 Parameters" visible = @seq != "Single" && @pat endheading bool param patParQ caption = "Formula 2 Parameters" default = true visible = @seq != "Single" && @pat endparam param formulaQ caption = "2nd Formula Type" enum = "Martin" "Popcorn" "Vine" "Glyph" "Gnarl" "Hopalong" "Dynamic" \ "Tanglewood" "Twirl" "Driftwood" default = 7 visible = @patParQ && @seq != "Single" && @pat endparam heading caption = "Martin 2 Parameters" visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat endheading bool param martV1Q caption = "Change 1st Variable" default = false visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat endparam bool param martV2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat endparam bool param martV3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat endparam int param martOpQ caption = "Martin Flavor" enum = "1""2" default = 0 visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat endparam float param maaQ caption = "Martin Alpha" default = 3.14 visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat endparam complex param mxQ caption = "Martin X1" default = (0,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat endparam float param mxmQ caption = "Martin X2" default = 1 visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat endparam complex param mxeQ caption = "Martin X3" default = (1,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat endparam complex param myQ caption = "Martin Y1" default = (0,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat endparam complex param mymQ caption = "Martin Y2" default = (1,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat endparam complex param myeQ caption = "Martin Y3" default = (1,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat endparam complex param mxxQ caption = "Martin XX1" default = (0,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat endparam float param mxxmQ caption = "Martin XX2" default = 1 visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat endparam complex param mxxeQ caption = "Martin XX3" default = (1,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat endparam bool param martFlavQ caption = "Symmetry" default = false visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat endparam func martfnQ caption = "Martin X Func" default = sin() visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat endfunc func fnmy1Q caption = "Martin Y Func" default = ident() visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat endfunc func fnmx1Q caption = "Martin XX Func" default = ident() visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat endfunc heading caption = "Vine 2 Parameters" visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat endheading param flavorQ caption = "Vine flavor" default = 2 min = 0 visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat endparam bool param vinV1Q caption = "Change Main Variables" default = false visible = @formulaQ == 2 && @patParQ && @flavorQ < 3 && @seq != "Single" \ && @pat endparam bool param vinV2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 2 && @patParQ && @flavorQ < 3 && @seq != "Single" \ && @pat endparam bool param vinV3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 2 && @patParQ && @flavorQ < 3 && @seq != "Single" \ && @pat endparam bool param vinV5Q caption = "Change 5th Variable" default = false visible = @formulaQ == 2 && @patParQ && @flavorQ < 3 && @seq != "Single" \ && @pat endparam bool param vinV6Q caption = "Change 6th Variable" default = false visible = @formulaQ == 2 && @patParQ && @flavorQ < 3 && @seq != "Single" \ && @pat endparam bool param vinV7Q caption = "Change 7th Variable" default = false visible = @formulaQ == 2 && (@flavorQ > 1 && @flavorQ < 3) && @patParQ && \ @seq != "Single" && @pat endparam bool param vinV8Q caption = "Change 8th Variable" default = false visible = @formulaQ == 2 && @patParQ && (@flavorQ > 1 && @flavorQ < 3) && \ @seq != "Single" && @pat endparam int param vinOp1Q caption = "Vine Operator 1" enum = "1""2""3""4" default = 0 visible = @formulaQ == 2 && @flavorQ <3 && @patParQ && \ @seq != "Single" && @pat endparam int param vinOp2cQ caption = "Vine Operator 2" enum = "1""2""3""4" default = 0 visible = @vinFlavorQ == true && @formulaQ == 2 && @flavorQ > 2 && @patParQ\ && @seq != "Single" && @pat endparam int param vinOp2rQ caption = "Vine Operator 2" enum = "1""2""3""4" default = 0 visible = @vinFlavorQ == false && @formulaQ == 2 && @flavorQ > 2 && \ @patParQ && @seq != "Single" && @pat endparam int param vinOp3cQ caption = "Vine Operator 3" enum = "1""2""3""4" default = 0 visible = @vinFlavorQ == true && @formulaQ == 2 && @flavorQ > 2 && \ @patParQ && @seq != "Single" && @pat endparam int param vinOp3rQ caption = "Vine Operator 3" enum = "1""2""3""4" default = 0 visible = @vinFlavorQ == false && @formulaQ == 2 && @flavorQ > 2 && \ @patParQ && @seq != "Single" && @pat endparam float param vaQ caption = "Vine Alpha" default = 3.0 visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat endparam float param vbQ caption = "Vine Beta" default = 2.0 visible = @formulaQ == 2 && (@flavorQ > 1 && @flavorQ < 3) && @patParQ && \ @seq != "Single" && @pat endparam float param h2rQ caption = "Step Size (re)" default = 0.05 visible = @formulaQ == 2 && @flavorQ < 3 && @patParQ && \ @seq != "Single" && @pat endparam float param h2iQ caption = "Step Size (im)" default = 0.05 visible = @formulaQ == 2 && @flavorQ < 3 && @patParQ && \ @seq != "Single" && @pat endparam float param h3rQ caption = "Step Size (re)" default = 0.05 visible = @formulaQ == 2 && @flavorQ < 3 && @patParQ && @seq != "Single" \ && @pat endparam float param h3iQ caption = "Step Size (im)" default = 0.05 visible = @formulaQ == 2 && @flavorQ < 3 && @patParQ && @seq != "Single" \ && @pat endparam float param v1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 \ && @seq != "Single" && @pat endparam float param v2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 \ && @seq != "Single" && @pat endparam float param v3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat endparam float param v7aQ caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat endparam float param v7bQ caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat endparam float param v7cQ caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat endparam float param v8aQ caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat endparam float param v8bQ caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat endparam float param v8cQ caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat endparam bool param vinFlavorQ caption = "Symmetry" default = false visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat endparam func vinfnx1Q caption = "Vine X Fn" default = ident() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat endfunc func vinfny1Q caption = "Vine Y Fn" default = ident() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat endfunc func vinfnx2Q caption = "Vine X Fn 2" default = ident() visible = @formulaQ == 2 && @patParQ && @flavorQ >2 && \ @seq != "Single" && @pat endfunc func vinfny2Q caption = "Vine Y Fn 2" default = ident() visible = @formulaQ == 2 && @flavorQ >2 && @patParQ && \ @seq != "Single" && @pat endfunc func vinfn1Q caption = "Vine Fn 1" default = sin() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat endfunc func vinfn2Q caption = "Vine Fn 2" default = sin() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat endfunc func vinfn3Q caption = "Vine Fn 3" default = sin() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat endfunc func vinfn4Q caption = "Vine Fn 4" default = sin() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat endfunc func vinfn5Q caption = "Vine Fn 5" default = sin() visible = @formulaQ == 2 && @flavorQ == 2 && @patParQ && \ @seq != "Single" && @pat endfunc func vinfn6Q caption = "Vine Fn 6" default = sin() visible = @formulaQ == 2 && @flavorQ == 2 && @patParQ && \ @seq != "Single" && @pat endfunc func vinfn7Q caption = "Vine Fn 7" default = ident() visible = @formulaQ == 2 && @flavorQ > 2 && @patParQ && \ @seq != "Single" && @pat endfunc func vinfn8Q caption = "Vine Fn 8" default = ident() visible = @formulaQ == 2 && @flavorQ > 2 && @patParQ && \ @seq != "Single" && @pat endfunc func vinfn9Q caption = "Vine Fn 9" default = sin() visible = @formulaQ == 2 && @flavorQ > 2 && @patParQ && \ @seq != "Single" && @pat endfunc func vinfn10Q caption = "Vine Fn 10" default = sin() visible = @formulaQ == 2 && @flavorQ > 2 && @patParQ && \ @seq != "Single" && @pat endfunc func vinfn11Q caption = "Vine Fn 11" default = sin() visible = @formulaQ == 2 && @flavorQ > 2 && @patParQ && \ @seq != "Single" && @pat endfunc heading caption = "Popcorn 2 Parameters" visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endheading int param popflavor1Q caption = "1st Flavor" enum = "1""2""3""4" default = 0 visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endparam int param popflavor2Q caption = "2nd Flavor" enum = "1""2""3""4" default = 0 visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endparam bool param v1Q caption = "Change 1st Variable" default = false visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endparam bool param v2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endparam bool param v3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endparam bool param v4Q caption = "Change 4th Variable" default = false visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endparam float param popxQ caption = "X Param" default = 1 visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endparam float param popyQ caption = "Y Param" default = 1 visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endparam complex param popcQ caption = "Constant" default = (3,3) visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endparam complex param h1Q caption = "Step Size" default = (.05,.05) visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endparam float param pop1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam float param pop1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam float param pop1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam float param pop2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam float param pop2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam float param pop2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam float param pop3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam float param pop3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam float param pop3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam float param pop4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam float param pop4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam float param pop4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat endparam bool param funcPopTypeQ caption = "Symmetry" default = false visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endparam func fnpopxQ caption = "Popcorn X Function" default = ident() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endfunc func fnpopyQ caption = "Popcorn Y Function" default = ident() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endfunc func popfn1Q caption = "Popcorn Fn 1" default = sin() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endfunc func popfn2Q caption = "Popcorn Fn 2" default = tan() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endfunc func popfn3Q caption = "Popcorn Fn 3" default = sin() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endfunc func popfn4Q caption = "Popcorn Fn 4" default = tan() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat endfunc heading caption = "Glyph 2 Parameters" visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endheading int param glv1Q caption = "1st Variable Type" enum = "x""y""newx""newy" default = 1 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glv2Q caption = "2nd Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glv3Q caption = "3rd Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glv4Q caption = "4th Variable Type" enum = "x""y""newx""newy" default = 0 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glv5Q caption = "5th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glv6Q caption = "6th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glv7Q caption = "7th Variable Type" enum = "x""y""newx""newy" default = 0 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glv8Q caption = "8th Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glv9Q caption = "9th Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glv10Q caption = "10th Variable Type" enum = "x""y""newx""newy" default = 1 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glv11Q caption = "11th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glv12Q caption = "12th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glyOp1Q caption = "Operator 1" enum = "1""2""3""4" default = 0 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam int param glyOp2Q caption = "Operator 2" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16" default = 0 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam float param glyaQ caption = "Glyph Alpha" default = 3 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam float param h4rQ caption = "Step Size 1 (re)" default = .8 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam float param h4iQ caption = "Step Size 1 (im)" default = .8 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam float param h5rQ caption = "Step Size 2 (re)" default = .8 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam float param h5iQ caption = "Step Size 2 (im)" default = .8 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam float param h6rQ caption = "Step Size 3 (re)" default = .05 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam float param h6iQ caption = "Step Size 3 (im)" default = .05 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam float param h7rQ caption = "Step Size 4 (re)" default = .05 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam float param h7iQ caption = "Step Size 4 (im)" default = .05 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam float param gly1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly7aQ caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly7bQ caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly7cQ caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly8aQ caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly8bQ caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly8cQ caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly9aQ caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly9bQ caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly9cQ caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly10aQ caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly10bQ caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly10cQ caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly11aQ caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly11bQ caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly11cQ caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly12aQ caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly12bQ caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam float param gly12cQ caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat endparam bool param glyphFlavor1Q caption = "Symmetry" default = false visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endparam func glyfn1Q caption = "Glyph Fn 1" default = cos() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn2Q caption = "Glyph Fn 2" default = cos() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn3Q caption = "Glyph Fn 3" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn4Q caption = "Glyph Fn 4" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn5Q caption = "Glyph Fn 5" default = sin() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn6Q caption = "Glyph Fn 6" default = sin() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn7Q caption = "Glyph Fn 7" default = sin() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn8Q caption = "Glyph Fn 8" default = sin() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn9Q caption = "Glyph Fn 9" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn10Q caption = "Glyph Fn 10" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn11Q caption = "Glyph Fn 11" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn12Q caption = "Glyph Fn 12" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn13Q caption = "Glyph Fn 13" default = cos() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc func glyfn14Q caption = "Glyph Fn 14" default = cos() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat endfunc heading caption = "Gnarl 2 Functions" visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endheading bool param gn1Q caption = "Change Main Variables" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam bool param gn2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam bool param gn3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam bool param gn4Q caption = "Change 4th Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam bool param gn6Q caption = "Change 6th Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam bool param gn7Q caption = "Change 7th Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam bool param gn8Q caption = "Change 8th Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam int param gnOpQ caption = "Gnarl Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam float param gnaQ caption = "Gnarl Alpha" default = 3 visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam float param gnbQ caption = "Gnarl Beta" default = 2 visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam float param h8rQ caption = "Step Size (re)" default = .05 visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam float param h8iQ caption = "Step Size (im)" default = .05 visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam float param gn1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn7aQ caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn7bQ caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn7cQ caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn8aQ caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn8bQ caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam float param gn8cQ caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat endparam bool param gnFlavorQ caption = "Symmetry" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endparam func gnfnxQ caption = "Gnarl Fn 1" default = ident() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endfunc func gnfn1Q caption = "Gnarl Fn 2" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endfunc func gnfn2Q caption = "Gnarl Fn 3" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endfunc func gnfn3Q caption = "Gnarl Fn 4" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endfunc func gnfnyQ caption = "Gnarl Fn 5" default = ident() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endfunc func gnfn4Q caption = "Gnarl Fn 6" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endfunc func gnfn5Q caption = "Gnarl Fn 7" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endfunc func gnfn6Q caption = "Gnarl Fn 8" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat endfunc heading caption = "Hopalong 2 Parameters" visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat endheading float param pAQ caption = "A" default = 0.4 visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat endparam float param pBQ caption = "B" default = 1.0 visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat endparam float param pCQ caption = "C" default = 0.0 visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat endparam float param sxQ caption = "Spread" default = -1 visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat endparam float param hopQ caption = "Depth" default = 0 visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat endparam bool param hopFlavorQ caption = "Symmetry" default = false visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat endparam func fnhopQ caption = "Hopalong Function" default = ident () visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat endfunc func fnhop2Q caption = "Hopalong Function 2" default = sqrt () visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat endfunc heading caption = "Dynamic 2 Parameters" visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endheading bool param dynv1Q caption = "Change Main Variables" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam bool param dynv2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam bool param dynv3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam bool param dynv5Q caption = "Change 5th Variable" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam bool param dynv6Q caption = "Change 6th Variable" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam int param dynOpQ caption = "Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16" default = 0 visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam complex param daQ caption = "Dynamic Alpha" default = (3,3) visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam complex param dbQ caption = "Dynamic Beta" default = (2,2) visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam complex param dhxQ caption = "Step Size" default = (.05,.05) visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam float param dynv1aQ caption = "1st Variable P1" default = 0 visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam float param dynv1bQ caption = "1st Variable P2" default = 1 visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam float param dynv1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam float param dynv6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat endparam bool param dynFlavorQ caption = "Symmetry" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endparam func dynfn1Q caption = "Dynamic Fn 1" default = ident () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endfunc func dynfn2Q caption = "Dynamic Fn 2" default = sin () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endfunc func dynfn3Q caption = "Dynamic Fn 3" default = sin () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endfunc func dynfn4Q caption = "Dynamic Fn 4" default = ident () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endfunc func dynfn5Q caption = "Dynamic Fn 5" default = sin () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endfunc func dynfn6Q caption = "Dynamic Fn 6" default = sin () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat endfunc heading caption = "Tanglewood 2 Parameters" visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endheading bool param twsv1Q caption = "Change Main Variables 1" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv9Q caption = "Change Main Variables 2" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv4Q caption = "Change 4th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv6Q caption = "Change 6th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv7Q caption = "Change 7th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv8Q caption = "Change 8th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv10Q caption = "Change 10th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv11Q caption = "Change 11th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv12Q caption = "Change 12th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv14Q caption = "Change 14th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv15Q caption = "Change 15th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam bool param twsv16Q caption = "Change 16th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam int param twsOp1Q caption = "Operator 1" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam int param twsOp2Q caption = "Operator 2" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twa1Q caption = "Tanglewood Alpha 1 (re)" default = 3 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twa1bQ caption = "Tanglewood Alpha 1 (im)" default = 3 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twa2Q caption = "Tanglewood Alpha 2 (re)" default = 3 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twa2bQ caption = "Tanglewood Alpha 2 (im)" default = 3 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twb1Q caption = "Tanglewood Beta 1 (re)" default = 2 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twb1bQ caption = "Tanglewood Beta 1 (im)" default = 2 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twb2Q caption = "Tanglewood Beta 2 (re)" default = 2 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twb2bQ caption = "Tanglewood Beta 2 (im)" default = 2 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twsh1Q caption = "Step Size 1 (re)" default = .05 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twsh1bQ caption = "Step Size 1 (im)" default = .05 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twsh2Q caption = "Step Size 2 (re)" default = .05 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twsh2bQ caption = "Step Size 2 (im)" default = .05 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam float param twsv1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv7aQ caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv7bQ caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv7cQ caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv8aQ caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv8bQ caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv8cQ caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv9aQ caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv9bQ caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv9cQ caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv10aQ caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv10bQ caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv10cQ caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv11aQ caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv11bQ caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv11cQ caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv12aQ caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv12bQ caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv12cQ caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv13aQ caption = "13th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv13bQ caption = "13th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv13cQ caption = "13th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv14aQ caption = "14th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv14bQ caption = "14th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv14cQ caption = "14th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv15aQ caption = "15th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv15bQ caption = "15th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv15cQ caption = "15th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv16aQ caption = "16th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv16bQ caption = "16th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam float param twsv16cQ caption = "16th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat endparam bool param twsFlavor1Q caption = "Symmetry" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endparam func twsfn1Q caption = "Tanglewood Fn 1" default = ident() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn2Q caption = "Tanglewood Fn 2" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn3Q caption = "Tanglewood Fn 3" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn4Q caption = "Tanglewood Fn 4" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn5Q caption = "Tanglewood Fn 5" default = ident() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn6Q caption = "Tanglewood Fn 6" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn7Q caption = "Tanglewood Fn 7" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn8Q caption = "Tanglewood Fn 8" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn9Q caption = "Tanglewood Fn 9" default = ident() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn10Q caption = "Tanglewood Fn 10" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn11Q caption = "Tanglewood Fn 11" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn12Q caption = "Tanglewood Fn 12" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn13Q caption = "Tanglewood Fn 13" default = ident() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn14Q caption = "Tanglewood Fn 14" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn15Q caption = "Tanglewood Fn 15" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc func twsfn16Q caption = "Tanglewood Fn 16" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat endfunc heading caption = "Twirl 2 Parameters" visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endheading bool param twv1Q caption = "Change Main Variables" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam bool param twv2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam bool param twv3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam bool param twv4Q caption = "Change 4th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam bool param twv5Q caption = "Change 5th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam bool param twv7Q caption = "Change 7th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam bool param twv8Q caption = "Change 8th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam bool param twv9Q caption = "Change 9th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam bool param twv10Q caption = "Change 10th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam int param twiOpQ caption = "Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam complex param taQ caption = "Twirl Alpha" default = (3,3) visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam complex param tbQ caption = "Twirl Beta" default = (2,2) visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam float param thQ caption = "Step Size (re)" default = .05 visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam float param th2Q caption = "Step Size (im)" default = .05 visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam float param twv1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv7aQ caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv7bQ caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv7cQ caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv8aQ caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv8bQ caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv8cQ caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv9aQ caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv9bQ caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv9cQ caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv10aQ caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv10bQ caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam float param twv10cQ caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat endparam bool param twiFlavorQ caption = "Symmetry" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endparam func twfn1Q caption = "Twirl Fn 1" default = ident() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endfunc func twfn2Q caption = "Twirl Fn 2" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endfunc func twfn3Q caption = "Twirl Fn 3" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endfunc func twfn4Q caption = "Twirl Fn 4" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endfunc func twfn5Q caption = "Twirl Fn 5" default = ident() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endfunc func twfn6Q caption = "Twirl Fn 6" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endfunc func twfn7Q caption = "Twirl Fn 7" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endfunc func twfn8Q caption = "Twirl Fn 8" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endfunc func twfn9Q caption = "Twirl Fn 9" default = ident() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endfunc func twfn10Q caption = "Twirl Fn 10" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat endfunc heading caption = "Driftwood 2 Parameters" visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endheading bool param tgwv1Q caption = "Change Main Variables 1" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam bool param tgwv7Q caption = "Change Main Variables 2" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam bool param tgwv2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam bool param tgwv3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam bool param tgwv4Q caption = "Change 4th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam bool param tgwv6Q caption = "Change 6th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam bool param tgwv8Q caption = "Change 8th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam bool param tgwv9Q caption = "Change 9th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam bool param tgwv10Q caption = "Change 10th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam bool param tgwv12Q caption = "Change 12th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam int param tgwOp1Q caption = "Operator 1" enum = "1""2""3""4""5""6""7""8" default = 0 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam int param tgwOp2Q caption = "Operator 2" enum = "1""2""3""4""5""6""7""8" default = 0 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam float param tgwa1Q caption = "Driftwood Alpha 1" default = 3 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam float param tgwa2Q caption = "Driftwood Alpha 2" default = 3 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam float param tgwb1Q caption = "Driftwood Beta 1" default = 2 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam float param tgwb2Q caption = "Driftwood Beta 2" default = 2 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam complex param tgwh1Q caption = "Step Size 1" default = (.05,.05) visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam complex param tgwh2Q caption = "Step Size 2" default = (.05,.05) visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam float param tgwv1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv7aQ caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv7bQ caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv7cQ caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv8aQ caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv8bQ caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv8cQ caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv9aQ caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv9bQ caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv9cQ caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv10aQ caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv10bQ caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv10cQ caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv11aQ caption = "13th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv11bQ caption = "13th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv11cQ caption = "13th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv12aQ caption = "14th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv12bQ caption = "14th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam float param tgwv12cQ caption = "14th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat endparam bool param tgwFlavor1Q caption = "Symmetry" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endparam func tgwfn1Q caption = "Driftwood Fn 1" default = ident() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc func tgwfn2Q caption = "Driftwood Fn 2" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc func tgwfn3Q caption = "Driftwood Fn 3" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc func tgwfn4Q caption = "Driftwood Fn 4" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc func tgwfn5Q caption = "Driftwood Fn 5" default = ident() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc func tgwfn6Q caption = "Driftwood Fn 6" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc func tgwfn7Q caption = "Driftwood Fn 7" default = ident() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc func tgwfn8Q caption = "Driftwood Fn 8" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc func tgwfn9Q caption = "Driftwood Fn 9" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc func tgwfn10Q caption = "Driftwood Fn 10" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc func tgwfn11Q caption = "Driftwood Fn 11" default = ident() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc func tgwfn12Q caption = "Driftwood Fn 12" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat endfunc heading caption = "Global Formula Functions" visible = @pat endheading func fnov1 caption = "Formula Fn 1" default = ident() visible = @pat endfunc func fnov2 caption = "Formula Fn 2" default = ident() visible = @pat endfunc func fnx3 caption = "Formula X Fn 1" default = ident () visible = @pat endfunc func fnx2 caption = "Formula X Fn 2" default = ident () visible = @pat endfunc func fny3 caption = "Formula Y Fn 1" default = ident () visible = @pat endfunc func fny2 caption = "Formula Y Fn 2" default = ident () visible = @pat endfunc heading caption = "Loop Parameters" endheading complex param zpar1 caption = "Z Offset" default = (0,0) endparam complex param zpar2 caption = "Z Strength" default = (1,0) endparam complex param zpar3 caption = "Z Power" default = (1,0) endparam complex param cpar1 caption = "C Offset" default = (0,0) endparam complex param cpar2 caption = "C Strength" default = (1,0) endparam complex param cpar3 caption = "C Power" default = (1,0) endparam complex param zzpar1 caption = "Z2 Offset" default = (0,0) visible = @loop == "Complex" endparam complex param zzpar2 caption = "Z2 Strength" default = (1,0) visible = @loop == "Complex" endparam complex param zzpar3 caption = "Z2 Power" default = (1,0) visible = @loop == "Complex" endparam complex param ccpar1 caption = "C2 Offset" default = (0,0) visible = @loop == "Complex" endparam complex param ccpar2 caption = "C2 Strength" default = (1,0) visible = @loop == "Complex" endparam complex param ccpar3 caption = "C2 Power" default = (1,0) visible = @loop == "Complex" endparam param op3 caption = "Operator 3" enum = "+""-""*""/""^" default = 2 visible = @loop == "Complex" endparam param op4 caption = "Operator 4" enum = "+""-""*""/""^" default = 0 visible = @loop == "Complex" endparam heading caption = "Loop Functions" endheading func fnc caption = "C Function" default = ident() endfunc func fncc caption = "C2 Function" default = ident() visible = @loop == "Complex" endfunc func fnz caption = "Z Function" default = ident() endfunc func fnzz caption = "Z2 Function" default = ident() visible = @loop == "Complex" endfunc switch: type = "MandyMix'n'Match" startseed = pixel version = @version flavor = @flavor bail = @bail op = @op zmod = @zmod fn1a = @fn1a fn1b = @fn1b fn2a = @fn2a fn2b = @fn2b fn3a = @fn3a fn3b = @fn3b fn4 = @fn4 fn5 = @fn5 op3 = @op3 op4 = @op4 zpar1 = @zpar1 zpar2 = @zpar2 zpar3 = @zpar3 cpar1 = @cpar1 cpar2 = @cpar2 cpar3 = @cpar3 zzpar1 = @zzpar1 zzpar2 = @zzpar2 zzpar3 = @zzpar3 ccpar1 = @ccpar1 ccpar2 = @ccpar2 ccpar3 = @ccpar3 fnc = @fnc fncc = @fncc fnz = @fnz fnzz = @fnzz mode=@switchmode switchmode=@mode center=@swcenter sscale=@swscale loop = @loop select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnzInit = @fnzInit fncInit = @fncinit begex = @begex pat = @pat seq = @seq modCmp = @modCmp modBy = @modBy randomseed = @randomseed prob1 = @prob1 blendFn = @blendFn iters = @iters scale = @scale exr = @exp pp2 = @pp2 scale2 = @scale2 pvol2a = @pvol2a pvol2b = @pvol2b pvol2 = @pvol2 scale3 = @scale3 pvol3a = @pvol3a pvol3b = @pvol3b pvol3 = @pvol3 offset1 = @offset1 paramP3 = @paramP3 distD = @distD distE = @distE distF = @distF patPar = @patPar formula = @formula martV1 = @martV1 martV2 = @martV2 martV3 = @martV3 martOp = @martOp maa = @maa mx = @mx mxm = @mxm my = @my mym = @mym mye = @mye mxx = @mxx mxxm = @mxxm mxxe = @mxxe martFlav = @martFlav martfn = @martfn fnmy1 = @fnmy1 fnmx1 = @fnmx1 flavor = @flavor vinV2 = @vinV2 vinV3 = @vinV3 vinV4 = @vinV4 vinV5 = @vinV5 vinV6 = @vinV6 vinV7 = @vinV7 vinV8 = @vinV8 vinOp1 = @vinOp1 vinOp2c = @vinOp2c vinOp2r = @vinOp2r vinOp3c = @vinOp3c vinOp3r = @vinOp3r va = @va vb = @vb h2r = @h2r h2i = @h2i h3r = @h3r h3i = @h3i v1a = @v1a v1b = @v1b v1c = @v1c v2a = @v2a v2b = @v2b v2c = @v2c v3a = @v3a v3b = @v3b v3c = @v3c v4a = @v4a v4b = @v4b v4c = @v4c v5a = @v5a v5b = @v5b v5c = @v5c v6a = @v6a v6b = @v6b v6c = @v6c v7a = @v7a v7b = @v7b v7c = @v7c v8a = @v8a v8b = @v8b v8c = @v8c vinFlavor = @vinFlavor vinfnx1 = @vinfnx1 vinfny1 = @vinfny1 vinfnx2 = @vinfnx2 vinfny2 = @vinfny2 vinfn1 = @vinfn1 vinfn2 = @vinfn2 vinfn3 = @vinfn3 vinfn4 = @vinfn4 vinfn5 = @vinfn5 vinfn6 = @vinfn6 vinfn7 = @vinfn7 vinfn8 = @vinfn8 vinfn9 = @vinfn9 vinfn10 = @vinfn10 vinfn11 = @vinfn11 popflavor1 = @popflavor1 popflavor2 = @popflavor2 v1 = @v1 v2 = @v2 v3 = @v3 v4 = @v4 popx = @popx popy = @popy popc = @popc h1 = @h1 pop1a = @pop1a pop1b = @pop1b pop1c = @pop1c pop2a = @pop1a pop2b = @pop2b pop2c = @pop2c pop3a = @pop2a pop3b = @pop3b pop3c = @pop3c pop4a = @pop4a pop4b = @pop4b pop4c = @pop4c funcPopType = @funcPopType fnpopx = @fnpopx fnpopy = @fnpopy popfn1 = @popfn1 popfn2 = @popfn2 popfn3 = @popfn3 popfn4 = @popfn4 glv1 = @glv1 glv2 = @glv2 glv3 = @glv3 glv4 = @glv4 glv5 = @glv5 glv6 = @glv6 glv7 = @glv7 glv8 = @glv8 glv9 = @glv9 glv10 = @glv10 glv11 = @glv11 glv12 = @glv12 glyOp1 = @glyOp1 glyOp2 = @glyOp2 glya = @glya h4r = @h4r h4i = @h4i h5r = @h5r h5i = @h5i h6r = @h6r h6i = @h6i h7r = @h7r h7i = @h7i gly1a = @gly1a gly1b = @gly1b gly1c = @gly1c gly2a = @gly2a gly2b = @gly2b gly2c = @gly2c gly3a = @gly3a gly3b = @gly3b gly3c = @gly3c gly4a = @gly4a gly4b = @gly4b gly4c = @gly4c gly5a = @gly5a gly5b = @gly5b gly5c = @gly5c gly6a = @gly6a gly6b = @gly6b gly6c = @gly6c gly7a = @gly7a gly7b = @gly7b gly7c = @gly7c gly8a = @gly8a gly8b = @gly8b gly8c = @gly8c gly9a = @gly9a gly9b = @gly9b gly9c = @gly9c gly10a = @gly10a gly10b = @gly10b gly10c = @gly10c gly11a = @gly11a gly11b = @gly11b gly11c = @gly11c gly12a = @gly12a gly12b = @gly12b gly12c = @gly12c glyphFlavor1 = @glyphFlavor1 glyfn1 = @glyfn1 glyfn2 = @glyfn2 glyfn3 = @glyfn3 glyfn4 = @glyfn4 glyfn5 = @glyfn5 glyfn6 = @glyfn6 glyfn7 = @glyfn7 glyfn8 = @glyfn8 glyfn9 = @glyfn9 glyfn10 = @glyfn10 glyfn11 = @glyfn11 glyfn12 = @glyfn12 glyfn13 = @glyfn13 glyfn14 = @glyfn14 gn1 = @gn1 gn2 = @gn2 gn3 = @gn3 gn4 = @gn4 gn5 = @gn5 gn6 = @gn6 gn7 = @gn7 gn8 = @gn8 gnOp = @gnOp gna = @gna gnb = @gnb h8r = @h8r h8i = @h8i gn1a = @gn1a gn1b = @gn1b gn1c = @gn1c gn2a = @gn2a gn2b = @gn2b gn2c = @gn2c gn3a = @gn3a gn3b = @gn3b gn3c = @gn3c gn4a = @gn4a gn4b = @gn4b gn4c = @gn4c gn5a = @gn5a gn5b = @gn5b gn5c = @gn5c gn6a = @gn6a gn6b = @gn6b gn6c = @gn6c gn7a = @gn7a gn7b = @gn7b gn7c = @gn7c gn8a = @gn8a gn8b = @gn8b gn8c = @gn8c gnFlavor = @gnFlavor gnfnx = @gnfnx gnfny = @gnfny gnfn1 = @gnfn1 gnfn2 = @gnfn2 gnfn3 = @gnfn3 gnfn4 = @gnfn4 gnfn5 = @gnfn5 gnfn6 = @gnfn6 pA = @pA pB = @pB pC = @pC sx = @sx hop = @hop hopFlavor = @hopFlavor fnhop = @fnhop fnhop2 = @fnhop2 dynv1 = @dynv1 dynv2 = @dynv2 dynv3 = @dynv3 dynv4 = @dynv4 dynv5 = @dynv5 dynv6 = @dynv6 dynOp = @dynOp da = @da db = @db dhx = @dhx dynv1a = @dynv1a dynv1b = @dynv1b dynv1c = @dynv1c dynv2a = @dynv2a dynv2b = @dynv2b dynv2c = @dynv2c dynv3a = @dynv3a dynv3b = @dynv3b dynv3c = @dynv3c dynv4a = @dynv4a dynv4b = @dynv4b dynv4c = @dynv4c dynv5a = @dynv5a dynv5b = @dynv5b dynv5c = @dynv5c dynv6a = @dynv6a dynv6b = @dynv6b dynv6c = @dynv6c dynFlavor = @dynFlavor dynfn1 = @dynfn1 dynfn2 = @dynfn2 dynfn3 = @dynfn3 dynfn4 = @dynfn4 dynfn5 = @dynfn5 dynfn6 = @dynfn6 twsv1 = @twsv1 twsv2 = @twsv2 twsv3 = @twsv3 twsv4 = @twsv4 twsv5 = @twsv5 twsv6 = @twsv6 twsv7 = @twsv7 twsv8 = @twsv8 twsv9 = @twsv9 twsv10 = @twsv10 twsv11 = @twsv11 twsv12 = @twsv12 twsv13 = @twsv13 twsv14 = @twsv14 twsv15 = @twsv15 twsv16 = @twsv16 twsOp1 = @twsOp1 twsOp2 = @twsOp2 twa1 = @twa1 twa1b = @twa1b twa2 = @twa2 twa2b = @twa2b twb1 = @twb1 twb1b = @twb1b twb2 = @twb2 twb2b = @twb2b twsh1 = @twsh1 twsh1b = @twsh1b twsh2 = @twsh2 twsh2b = @twsh2b twsv1a = @twsv1a twsv1b = @twsv1b twsv1c = @twsv1c twsv2a = @twsv2a twsv2b = @twsv2b twsv2c = @twsv2c twsv3a = @twsv3a twsv3b = @twsv3b twsv3c = @twsv3c twsv4a = @twsv4a twsv4b = @twsv4b twsv4c = @twsv4c twsv5a = @twsv5a twsv5b = @twsv5b twsv5c = @twsv5c twsv6a = @twsv6a twsv6b = @twsv6b twsv6c = @twsv6c twsv7a = @twsv7a twsv7b = @twsv7b twsv7c = @twsv7c twsv8a = @twsv8a twsv8b = @twsv8b twsv8c = @twsv8c twsv9a = @twsv9a twsv9b = @twsv9b twsv9c = @twsv9c twsv10a = @twsv10a twsv10b = @twsv10b twsv10c = @twsv10c twsv11a = @twsv11a twsv11b = @twsv11b twsv11c = @twsv11c twsv12a = @twsv12a twsv12b = @twsv12b twsv12c = @twsv12c twsv13a = @twsv13a twsv13b = @twsv13b twsv13c = @twsv13c twsv14a = @twsv14a twsv14b = @twsv14b twsv14c = @twsv14c twsv15a = @twsv15a twsv15b = @twsv15b twsv15c = @twsv15c twsv16a = @twsv16a twsv16b = @twsv16b twsv16c = @twsv16c twsFlavor1 = @twsFlavor1 twsfn1 = @twsfn1 twsfn2 = @twsfn2 twsfn3 = @twsfn3 twsfn4 = @twsfn4 twsfn5 = @twsfn5 twsfn6 = @twsfn6 twsfn7 = @twsfn7 twsfn8 = @twsfn8 twsfn9 = @twsfn9 twsfn10 = @twsfn10 twsfn11 = @twsfn11 twsfn12 = @twsfn12 twsfn13 = @twsfn13 twsfn14 = @twsfn14 twsfn15 = @twsfn15 twsfn16 = @twsfn16 twv1 = @twv1 twv2 = @twv2 twv3 = @twv3 twv4 = @twv4 twv5 = @twv5 twv6 = @twv6 twv7 = @twv7 twv8 = @twv8 twv9 = @twv9 twv10 = @twv10 twiOp = @twiOp ta = @ta th = @th th2 = @th2 twv1a = @twv1a twv1b = @twv1b twv1c = @twv1c twv2a = @twv2a twv2b = @twv2b twv2c = @twv2c twv3a = @twv3a twv3b = @twv3b twv3c = @twv3c twv4a = @twv4a twv4b = @twv4b twv4c = @twv4c twv5a = @twv5a twv5b = @twv5b twv5c = @twv5c twv6a = @twv6a twv6b = @twv6b twv6c = @twv6c twv7a = @twv7a twv7b = @twv7b twv7c = @twv7c twv8a = @twv8a twv8b = @twv8b twv8c = @twv8c twv9a = @twv9a twv9b = @twv9b twv9c = @twv9c twv10a = @twv10a twv10b = @twv10b twv10c = @twv10c twiFlavor = @twiFlavor twfn1 = @twfn1 twfn2 = @twfn2 twfn3 = @twfn3 twfn4 = @twfn4 twfn5 = @twfn5 twfn6 = @twfn6 twfn7 = @twfn7 twfn8 = @twfn8 twfn9 = @twfn9 twfn10 = @twfn10 tgwv1 = @tgwv1 tgwv2 = @tgwv2 tgwv3 = @tgwv3 tgwv4 = @tgwv4 tgwv5 = @tgwv5 tgwv6 = @tgwv6 tgwv7 = @tgwv7 tgwv8 = @tgwv8 tgwv9 = @tgwv9 tgwv10 = @tgwv10 tgwv11 = @tgwv11 tgwv12 = @tgwv12 tgwOp1 = @tgwOp1 tgwOp2 = @tgwOp2 tgwa1 = @tgwa1 tgwb1 = @tgwb1 tgwa2 = @tgwa2 tgwb2 = @tgwb2 tgwh1 = @tgwh1 tgwh2 = @tgwh2 tgwv1a = @tgwv1a tgwv1b = @tgwv1b tgwv1c = @tgwv1c tgwv2a = @tgwv2a tgwv2b = @tgwv2b tgwv2c = @tgwv2c tgwv3a = @tgwv3a tgwv3b = @tgwv3b tgwv3c = @tgwv3c tgwv4a = @tgwv4a tgwv4b = @tgwv4b tgwv4c = @tgwv4c tgwv5a = @tgwv5a tgwv5b = @tgwv5b tgwv5c = @tgwv5c tgwv6a = @tgwv6a tgwv6b = @tgwv6b tgwv6c = @tgwv6c tgwv7a = @tgwv7a tgwv7b = @tgwv7b tgwv7c = @tgwv7c tgwv8a = @tgwv8a tgwv8b = @tgwv8b tgwv8c = @tgwv8c tgwv9a = @tgwv9a tgwv9b = @tgwv9b tgwv9c = @tgwv9c tgwv10a = @tgwv10a tgwv10b = @tgwv10b tgwv10c = @tgwv10c tgwv11a = @tgwv11a tgwv11b = @tgwv11b tgwv11c = @tgwv11c tgwv12a = @tgwv12a tgwv12b = @tgwv12b tgwv12c = @tgwv12c tgwfn1 = @tgwfn1 tgwfn2 = @tgwfn2 tgwfn3 = @tgwfn3 tgwfn4 = @tgwfn4 tgwfn5 = @tgwfn5 tgwfn6 = @tgwfn6 tgwfn7 = @tgwfn7 tgwfn8 = @tgwfn8 tgwfn9 = @tgwfn9 tgwfn10 = @tgwfn10 tgwfn11 = @tgwfn11 tgwfn12 = @tgwfn12 martV1Q = @martV1Q martV2Q = @martV2Q martV3Q = @martV3Q martOpQ = @martOpQ maaQ = @maaQ mxQ = @mxQ mxmQ = @mxmQ myQ = @myQ mymQ = @mymQ myeQ = @myeQ mxxQ = @mxxQ mxxmQ = @mxxmQ mxxeQ = @mxxeQ martFlavQ = @martFlavQ martfnQ = @martfnQ fnmy1Q = @fnmy1Q fnmx1Q = @fnmx1Q flavorQ = @flavorQ vinV2Q = @vinV2Q vinV3Q = @vinV3Q vinV4Q = @vinV4Q vinV5Q = @vinV5Q vinV6Q = @vinV6Q vinV7Q = @vinV7Q vinV8Q = @vinV8Q vinOp1Q = @vinOp1Q vinOp2cQ = @vinOp2cQ vinOp2rQ = @vinOp2rQ vinOp3cQ = @vinOp3cQ vinOp3rQ = @vinOp3rQ vaQ = @vaQ vbQ = @vbQ h2rQ = @h2rQ h2iQ = @h2iQ h3rQ = @h3rQ h3iQ = @h3iQ v1aQ = @v1aQ v1bQ = @v1bQ v1cQ = @v1cQ v2aQ = @v2aQ v2bQ = @v2bQ v2cQ = @v2cQ v3aQ = @v3aQ v3bQ = @v3bQ v3cQ = @v3cQ v4aQ = @v4aQ v4bQ = @v4bQ v4cQ = @v4cQ v5aQ = @v5aQ v5bQ = @v5bQ v5cQ = @v5cQ v6aQ = @v6aQ v6bQ = @v6bQ v6cQ = @v6cQ v7aQ = @v7aQ v7bQ = @v7bQ v7cQ = @v7cQ v8aQ = @v8aQ v8bQ = @v8bQ v8cQ = @v8cQ vinFlavorQ = @vinFlavorQ vinfnx1Q = @vinfnx1Q vinfny1Q = @vinfny1Q vinfnx2Q = @vinfnx2Q vinfny2Q = @vinfny2Q vinfn1Q = @vinfn1Q vinfn2Q = @vinfn2Q vinfn3Q = @vinfn3Q vinfn4Q = @vinfn4Q vinfn5Q = @vinfn5Q vinfn6Q = @vinfn6Q vinfn7Q = @vinfn7Q vinfn8Q = @vinfn8Q vinfn9Q = @vinfn9Q vinfn10Q = @vinfn10Q vinfn11Q = @vinfn11Q popflavor1Q = @popflavor1Q popflavor2Q = @popflavor2Q v1Q = @v1Q v2Q = @v2Q v3Q = @v3Q v4Q = @v4Q popxQ = @popxQ popyQ = @popyQ popcQ = @popcQ h1Q = @h1Q pop1aQ = @pop1aQ pop1bQ = @pop1bQ pop1cQ = @pop1cQ pop2aQ = @pop1aQ pop2bQ = @pop2bQ pop2cQ = @pop2cQ pop3aQ = @pop2aQ pop3bQ = @pop3bQ pop3cQ = @pop3cQ pop4aQ = @pop4aQ pop4bQ = @pop4bQ pop4cQ = @pop4cQ funcPopTypeQ = @funcPopTypeQ fnpopxQ = @fnpopxQ fnpopyQ = @fnpopyQ popfn1Q = @popfn1Q popfn2Q = @popfn2Q popfn3Q = @popfn3Q popfn4Q = @popfn4Q glv1Q = @glv1Q glv2Q = @glv2Q glv3Q = @glv3Q glv4Q = @glv4Q glv5Q = @glv5Q glv6Q = @glv6Q glv7Q = @glv7Q glv8Q = @glv8Q glv9Q = @glv9Q glv10Q = @glv10Q glv11Q = @glv11Q glv12Q = @glv12Q glyOp1Q = @glyOp1Q glyOp2Q = @glyOp2Q glyaQ = @glyaQ h4rQ = @h4rQ h4iQ = @h4iQ h5rQ = @h5rQ h5iQ = @h5iQ h6rQ = @h6rQ h6iQ = @h6iQ h7rQ = @h7rQ h7iQ = @h7iQ gly1aQ = @gly1aQ gly1bQ = @gly1bQ gly1cQ = @gly1cQ gly2aQ = @gly2aQ gly2bQ = @gly2bQ gly2cQ = @gly2cQ gly3aQ = @gly3aQ gly3bQ = @gly3bQ gly3cQ = @gly3cQ gly4aQ = @gly4aQ gly4bQ = @gly4bQ gly4cQ = @gly4cQ gly5aQ = @gly5aQ gly5bQ = @gly5bQ gly5cQ = @gly5cQ gly6aQ = @gly6aQ gly6bQ = @gly6bQ gly6cQ = @gly6cQ gly7aQ = @gly7aQ gly7bQ = @gly7bQ gly7cQ = @gly7cQ gly8aQ = @gly8aQ gly8bQ = @gly8bQ gly8cQ = @gly8cQ gly9aQ = @gly9aQ gly9bQ = @gly9bQ gly9cQ = @gly9cQ gly10aQ = @gly10aQ gly10bQ = @gly10bQ gly10cQ = @gly10cQ gly11aQ = @gly11aQ gly11bQ = @gly11bQ gly11cQ = @gly11cQ gly12aQ = @gly12aQ gly12bQ = @gly12bQ gly12cQ = @gly12cQ glyphFlavor1Q = @glyphFlavor1Q glyfn1Q = @glyfn1Q glyfn2Q = @glyfn2Q glyfn3Q = @glyfn3Q glyfn4Q = @glyfn4Q glyfn5Q = @glyfn5Q glyfn6Q = @glyfn6Q glyfn7Q = @glyfn7Q glyfn8Q = @glyfn8Q glyfn9Q = @glyfn9Q glyfn10Q = @glyfn10Q glyfn11Q = @glyfn11Q glyfn12Q = @glyfn12Q glyfn13Q = @glyfn13Q glyfn14Q = @glyfn14Q gn1Q = @gn1Q gn2Q = @gn2Q gn3Q = @gn3Q gn4Q = @gn4Q gn5Q = @gn5Q gn6Q = @gn6Q gn7Q = @gn7Q gn8Q = @gn8Q gnOpQ = @gnOpQ gnaQ = @gnaQ gnbQ = @gnbQ h8rQ = @h8rQ h8iQ = @h8iQ gn1aQ = @gn1aQ gn1bQ = @gn1bQ gn1cQ = @gn1cQ gn2aQ = @gn2aQ gn2bQ = @gn2bQ gn2cQ = @gn2cQ gn3aQ = @gn3aQ gn3bQ = @gn3bQ gn3cQ = @gn3cQ gn4aQ = @gn4aQ gn4bQ = @gn4bQ gn4cQ = @gn4cQ gn5aQ = @gn5aQ gn5bQ = @gn5bQ gn5cQ = @gn5cQ gn6aQ = @gn6aQ gn6bQ = @gn6bQ gn6cQ = @gn6cQ gn7aQ = @gn7aQ gn7bQ = @gn7bQ gn7cQ = @gn7cQ gn8aQ = @gn8aQ gn8bQ = @gn8bQ gn8cQ = @gn8cQ gnFlavorQ = @gnFlavorQ gnfnxQ = @gnfnxQ gnfnyQ = @gnfnyQ gnfn1Q = @gnfn1Q gnfn2Q = @gnfn2Q gnfn3Q = @gnfn3Q gnfn4Q = @gnfn4Q gnfn5Q = @gnfn5Q gnfn6Q = @gnfn6Q pAQ = @pAQ pBQ = @pBQ pCQ = @pCQ sxQ = @sxQ hopQ = @hopQ hopFlavorQ = @hopFlavorQ fnhopQ = @fnhopQ fnhop2Q = @fnhop2Q dynv1Q = @dynv1Q dynv2Q = @dynv2Q dynv3Q = @dynv3Q dynv4Q = @dynv4Q dynv5Q = @dynv5Q dynv6Q = @dynv6Q dynOpQ = @dynOpQ daQ = @daQ dbQ = @dbQ dhxQ = @dhxQ dynv1aQ = @dynv1aQ dynv1bQ = @dynv1bQ dynv1cQ = @dynv1cQ dynv2aQ = @dynv2aQ dynv2bQ = @dynv2bQ dynv2cQ = @dynv2cQ dynv3aQ = @dynv3aQ dynv3bQ = @dynv3bQ dynv3cQ = @dynv3cQ dynv4aQ = @dynv4aQ dynv4bQ = @dynv4bQ dynv4cQ = @dynv4cQ dynv5aQ = @dynv5aQ dynv5bQ = @dynv5bQ dynv5cQ = @dynv5cQ dynv6aQ = @dynv6aQ dynv6bQ = @dynv6bQ dynv6cQ = @dynv6cQ dynFlavorQ = @dynFlavorQ dynfn1Q = @dynfn1Q dynfn2Q = @dynfn2Q dynfn3Q = @dynfn3Q dynfn4Q = @dynfn4Q dynfn5Q = @dynfn5Q dynfn6Q = @dynfn6Q twsv1Q = @twsv1Q twsv2Q = @twsv2Q twsv3Q = @twsv3Q twsv4Q = @twsv4Q twsv5Q = @twsv5Q twsv6Q = @twsv6Q twsv7Q = @twsv7Q twsv8Q = @twsv8Q twsv9Q = @twsv9Q twsv10Q = @twsv10Q twsv11Q = @twsv11Q twsv12Q = @twsv12Q twsv13Q = @twsv13Q twsv14Q = @twsv14Q twsv15Q = @twsv15Q twsv16Q = @twsv16Q twsOp1Q = @twsOp1Q twsOp2Q = @twsOp2Q twa1Q = @twa1Q twa1bQ = @twa1bQ twa2Q = @twa2Q twa2bQ = @twa2bQ twb1Q = @twb1Q twb1bQ = @twb1bQ twb2Q = @twb2Q twb2bQ = @twb2bQ twsh1Q = @twsh1Q twsh1bQ = @twsh1bQ twsh2Q = @twsh2Q twsh2bQ = @twsh2bQ twsv1aQ = @twsv1aQ twsv1bQ = @twsv1bQ twsv1cQ = @twsv1cQ twsv2aQ = @twsv2aQ twsv2bQ = @twsv2bQ twsv2cQ = @twsv2cQ twsv3aQ = @twsv3aQ twsv3bQ = @twsv3bQ twsv3cQ = @twsv3cQ twsv4aQ = @twsv4aQ twsv4bQ = @twsv4bQ twsv4cQ = @twsv4cQ twsv5aQ = @twsv5aQ twsv5bQ = @twsv5bQ twsv5cQ = @twsv5cQ twsv6aQ = @twsv6aQ twsv6bQ = @twsv6bQ twsv6cQ = @twsv6cQ twsv7aQ = @twsv7aQ twsv7bQ = @twsv7bQ twsv7cQ = @twsv7cQ twsv8aQ = @twsv8aQ twsv8bQ = @twsv8bQ twsv8cQ = @twsv8cQ twsv9aQ = @twsv9aQ twsv9bQ = @twsv9bQ twsv9cQ = @twsv9cQ twsv10aQ = @twsv10aQ twsv10bQ = @twsv10bQ twsv10cQ = @twsv10cQ twsv11aQ = @twsv11aQ twsv11bQ = @twsv11bQ twsv11cQ = @twsv11cQ twsv12aQ = @twsv12aQ twsv12bQ = @twsv12bQ twsv12cQ = @twsv12cQ twsv13aQ = @twsv13aQ twsv13bQ = @twsv13bQ twsv13cQ = @twsv13cQ twsv14aQ = @twsv14aQ twsv14bQ = @twsv14bQ twsv14cQ = @twsv14cQ twsv15aQ = @twsv15aQ twsv15bQ = @twsv15bQ twsv15cQ = @twsv15cQ twsv16aQ = @twsv16aQ twsv16bQ = @twsv16bQ twsv16cQ = @twsv16cQ twsFlavor1Q = @twsFlavor1Q twsfn1Q = @twsfn1Q twsfn2Q = @twsfn2Q twsfn3Q = @twsfn3Q twsfn4Q = @twsfn4Q twsfn5Q = @twsfn5Q twsfn6Q = @twsfn6Q twsfn7Q = @twsfn7Q twsfn8Q = @twsfn8Q twsfn9Q = @twsfn9Q twsfn10Q = @twsfn10Q twsfn11Q = @twsfn11Q twsfn12Q = @twsfn12Q twsfn13Q = @twsfn13Q twsfn14Q = @twsfn14Q twsfn15Q = @twsfn15Q twsfn16Q = @twsfn16Q twv1Q = @twv1Q twv2Q = @twv2Q twv3Q = @twv3Q twv4Q = @twv4Q twv5Q = @twv5Q twv6Q = @twv6Q twv7Q = @twv7Q twv8Q = @twv8Q twv9Q = @twv9Q twv10Q = @twv10Q twiOpQ = @twiOpQ taQ = @taQ thQ = @thQ th2Q = @th2Q twv1aQ = @twv1aQ twv1bQ = @twv1bQ twv1cQ = @twv1cQ twv2aQ = @twv2aQ twv2bQ = @twv2bQ twv2cQ = @twv2cQ twv3aQ = @twv3aQ twv3bQ = @twv3bQ twv3cQ = @twv3cQ twv4aQ = @twv4aQ twv4bQ = @twv4bQ twv4cQ = @twv4cQ twv5aQ = @twv5aQ twv5bQ = @twv5bQ twv5cQ = @twv5cQ twv6aQ = @twv6aQ twv6bQ = @twv6bQ twv6cQ = @twv6cQ twv7aQ = @twv7aQ twv7bQ = @twv7bQ twv7cQ = @twv7cQ twv8aQ = @twv8aQ twv8bQ = @twv8bQ twv8cQ = @twv8cQ twv9aQ = @twv9aQ twv9bQ = @twv9bQ twv9cQ = @twv9cQ twv10aQ = @twv10aQ twv10bQ = @twv10bQ twv10cQ = @twv10cQ twiFlavorQ = @twiFlavorQ twfn1Q = @twfn1Q twfn2Q = @twfn2Q twfn3Q = @twfn3Q twfn4Q = @twfn4Q twfn5Q = @twfn5Q twfn6Q = @twfn6Q twfn7Q = @twfn7Q twfn8Q = @twfn8Q twfn9Q = @twfn9Q twfn10Q = @twfn10Q tgwv1Q = @tgwv1Q tgwv2Q = @tgwv2Q tgwv3Q = @tgwv3Q tgwv4Q = @tgwv4Q tgwv5Q = @tgwv5Q tgwv6Q = @tgwv6Q tgwv7Q = @tgwv7Q tgwv8Q = @tgwv8Q tgwv9Q = @tgwv9Q tgwv10Q = @tgwv10Q tgwv11Q = @tgwv11Q tgwv12Q = @tgwv12Q tgwOp1Q = @tgwOp1Q tgwOp2Q = @tgwOp2Q tgwa1Q = @tgwa1Q tgwb1Q = @tgwb1Q tgwa2Q = @tgwa2Q tgwb2Q = @tgwb2Q tgwh1Q = @tgwh1Q tgwh2Q = @tgwh2Q tgwv1aQ = @tgwv1aQ tgwv1bQ = @tgwv1bQ tgwv1cQ = @tgwv1cQ tgwv2aQ = @tgwv2aQ tgwv2bQ = @tgwv2bQ tgwv2cQ = @tgwv2cQ tgwv3aQ = @tgwv3aQ tgwv3bQ = @tgwv3bQ tgwv3cQ = @tgwv3cQ tgwv4aQ = @tgwv4aQ tgwv4bQ = @tgwv4bQ tgwv4cQ = @tgwv4cQ tgwv5aQ = @tgwv5aQ tgwv5bQ = @tgwv5bQ tgwv5cQ = @tgwv5cQ tgwv6aQ = @tgwv6aQ tgwv6bQ = @tgwv6bQ tgwv6cQ = @tgwv6cQ tgwv7aQ = @tgwv7aQ tgwv7bQ = @tgwv7bQ tgwv7cQ = @tgwv7cQ tgwv8aQ = @tgwv8aQ tgwv8bQ = @tgwv8bQ tgwv8cQ = @tgwv8cQ tgwv9aQ = @tgwv9aQ tgwv9bQ = @tgwv9bQ tgwv9cQ = @tgwv9cQ tgwv10aQ = @tgwv10aQ tgwv10bQ = @tgwv10bQ tgwv10cQ = @tgwv10cQ tgwv11aQ = @tgwv11aQ tgwv11bQ = @tgwv11bQ tgwv11cQ = @tgwv11cQ tgwv12aQ = @tgwv12aQ tgwv12bQ = @tgwv12bQ tgwv12cQ = @tgwv12cQ tgwfn1Q = @tgwfn1Q tgwfn2Q = @tgwfn2Q tgwfn3Q = @tgwfn3Q tgwfn4Q = @tgwfn4Q tgwfn5Q = @tgwfn5Q tgwfn6Q = @tgwfn6Q tgwfn7Q = @tgwfn7Q tgwfn8Q = @tgwfn8Q tgwfn9Q = @tgwfn9Q tgwfn10Q = @tgwfn10Q tgwfn11Q = @tgwfn11Q tgwfn12Q = @tgwfn12Q fnov1 = @fnov1 fnov2 = @fnov2 fnx3 = @fnx3 fnx2 = @fnx2 fny3 = @fny3 fny2 = @fny2 nufuncx = @nufuncx nufuncy = @nufuncy xtra1 = @xtra1 xtra2 = @xtra2 ssfn = @ssfn pixfn = @pixfn varType = @varType opxy = @opxy nuflav2 = @nuflav2 opadd = @opadd nufnx2 = @nufnx2 nufny2 = @nufny2 nufuncxtx = @nufuncxtx nufuncxty = @nufuncxty nuflav = @nuflav xtra1x = @xtrax1 xtra2x = @xtrax2 xtra3x = @xtrax3 xtra1y = @xtray1 xtra2y = @xtray2 xtra3y = @xtray3 } *********************************************************************** gnd+tma-hypercomplexMultiM/J { ; This formula includes many of your favorite formula loops, ; but with the complex variables split a number of times ; into real and imaginary components which can be processed ; and modified in numerous ways before finally being ; recombined. ; ; Essentially there are four levels where this happens--which ; I have labelled 1st, 2nd and 3rd Order and Pattern--each ; with a set of functions and parameters. ; ; The "Orders" tend to affect the result quite radically, while ; "Pattern" introduces (but is not limited to)a gnarly effect ; which can be changed by manipulating the various parameters in ; that group. ; ; Note that the amount of the pattern can be varied via the param ; labelled "Pattern Amt", which essentially controls all four step ; sizes at once. When this is set to zero the pattern group is ; inactive and disappears. ; ; Just below "Pattern Amt" is a param called "Intensify", which ; is visible when the pattern amount is not set to (0,0). If this ; is set to (-1,0) it will yield undistorted formula sets-- ; the Mandelbrot set will appear undistorted, for instance. ; Setting this higher distorts the formula sets somewhat, but ; also intensifies the effect of the pattern functions. ; I suggest the default setting (3,0) if you wish to see the effects of ; the pattern functions, which can be quite interesting. ; ; Many thanks to Gilles Nadeau for too many things to mention, ; but which include the original hypercomplex structure, the ; rotation params and the addition of the various formula loops. ; I have taken it to a place he probably didn't expect, but then ; that is the fun and the value of collaborative ventures such as ; this. Thanks also to Frederik Slijkerman for the bailout tests, ; which proved quite valuable in this formula. ; ; Toby Marshall, Aug 2005, v 1.35 ; init: complex z = 0 complex w = 0 complex cz = #pixel complex ch = @ch if @mode == "Mandelbrot" if @loop == "Mandel Lambda Fn" z = (0.0, 0.0) + #pixel w = (0.0, 0.0) + ch elseif @loop == "Mandelbrot" z = (0.0, 0.0) w = (0.0, 0.0) elseif @loop == "Mark's Mandel" z = (0.0, 0.0) w = (0.0, 0.0) elseif @loop == "Ikenaga" z = (0.0, 0.0) w = (0.0, 0.0) elseif @loop == "Barnsley 1" z = (0.0, 0.0) w = (0.0, 0.0) elseif @loop == "Barnsley 2" z = (0.0, 0.0) w = (0.0, 0.0) elseif @loop == "Barnsley 3" z = (0.0, 0.0) w = (0.0, 0.0) elseif @loop == "Phoenix Mandel" z = (0.0, 0.0) w = (0.0, 0.0) elseif @loop == "Phoenix Mandel Fn" z = (0.0, 0.0) + #pixel w = (0.0, 0.0) + ch elseif @loop == "Fender C" z = (0.0, 0.0) w = (0.0, 0.0) elseif @loop == "Talis" z = (0.0, 0.0) w = (0.0, 0.0) endif elseif @mode == "Julia" z = #pixel w = @ct cz = @startseed ch = @ch endif if @sscale != 1.0 z = z / @sscale endif if @center != (0.0,0.0) z = z + @center endif complex cc = @cc complex cd = @cw complex pz = @pz complex pw = @pw complex c = 0 complex d = 0 complex hc = 0 complex hd = 0 complex c1 = 0 complex c2 = 0 complex nz = 0 complex nw = 0 complex na = 0 complex nb = 0 complex pa = 0 complex pb = 0 complex a = 0 complex b = 0 float rx = 0 float ry = 0 float rz = 0 ; (yz plane rotation) ry = imag(z)*cos(#pi*@rotx/180) - real(w)*sin(#pi*@rotx/180) rz = imag(z)*sin(#pi*@rotx/180) + real(w)*cos(#pi*@rotx/180) z = real(z) + ry*1i w = rz + imag(w)*1i ry = imag(cz)*cos(#pi*@rotx/180) - real(ch)*sin(#pi*@rotx/180) rz = imag(cz)*sin(#pi*@rotx/180) + real(ch)*cos(#pi*@rotx/180) cz = real(cz) + ry*1i ch = rz + imag(ch)*1i ; (xz plane rotation) rx = real(w)*sin(#pi*@roty/180) + real(z)*cos(#pi*@roty/180) rz = real(w)*cos(#pi*@roty/180) - real(z)*sin(#pi*@roty/180) z = rx + imag(z)*1i w = rz + imag(w)*1i rx = real(ch)*sin(#pi*@roty/180) + real(cz)*cos(#pi*@roty/180) rz = real(ch)*cos(#pi*@roty/180) - real(cz)*sin(#pi*@roty/180) cz = rx + imag(cz)*1i ch = rz + imag(ch)*1i ; (xy plane rotation) rx = real(z)*cos(#pi*@rotz/180) - imag(z)*sin(#pi*@rotz/180) ry = real(z)*sin(#pi*@rotz/180) + imag(z)*cos(#pi*@rotz/180) z = rx + ry*1i rx = real(cz)*cos(#pi*@rotz/180) - imag(cz)*sin(#pi*@rotz/180) ry = real(cz)*sin(#pi*@rotz/180) + imag(cz)*cos(#pi*@rotz/180) cz = rx + ry*1i loop: a = real(z) - imag(w) + flip(imag(z) + real(w)) b = real(z) + imag(w) + flip(imag(z) - real(w)) c1 = real(cz) - imag(ch) + flip(imag(cz) + real(ch)) c2 = real(cz) + imag(ch) + flip(imag(cz) - real(ch)) a = @fnzInit(a-@zg)*@ezg b = @fnzInit(b-@zg)*@ezg c1 = @fncInit((c1-@cg)*@cmg)^@ecg c2 = @fncInit((c2-@cg)*@cmg)^@ecg ; Select the global definition of Z if @select == "z"; select variable type a = a b = b elseif @select == "z+c" a = a+c1 b = b+c2 elseif @select == "z-c" a = a-c1 b = b-c2 elseif @select == "c-z" a = c1-a b = c2-b elseif @select == "z*c" a = a*c1 b = b*c2 elseif @select == "z/c" a = a/c1 b = b/c2 elseif @select == "z+c|z+c" a = a+c1 a = a+c1 b = b+c2 b = b+c2 elseif @select == "z+c|c-z" a = a+c1 a = a-c1 b = b+c2 b = b-c2 elseif @select == "z+c|z*c" a = a+c1 a = a*c1 b = b+c2 b = b*c2 elseif @select == "z+c|z/c" a = a+c1 a = a/c1 b = b+c2 b = b/c2 elseif @select == "z-c|z-c" a = a-c1 a = a-c1 b = b-c2 b = b-c2 elseif @select == "z-c|c-z" a = a-c1 a = c1-a b = b-c2 b = c2-b elseif @select == "z-c|z*c" a = a-c1 a = a*c1 b = b-c2 b = b*c2 elseif @select == "z-c|z/c" a = a-c1 a = a*c1 b = b-c2 b = b*c2 elseif @select == "c-z|z*c" a = c1-a a = a*c1 b = c2-b b = b*c2 elseif @select == "c-z|z/c" a = c1-a a = a/c1 b = c2-b b = b/c2 elseif @select == "z*c|c-z" a = a*c1 a = c1-a b = b*c2 b = c2-b elseif @select == "z*c|z*c" a = a*c1 a = a*c1 b = b*c2 b = b*c2 elseif @select == "z/c|z+c" a = a/c1 a = a+c1 b = b/c2 b = b+c2 elseif @select == "z/c|z-c" a = a/c1 a = a-c1 b = b/c2 b = b-c2 elseif @select == "z/c|c-z" a = a/c1 a = c1-a b = b/c2 b = c2-b elseif @select == "z/c|z/c" a = a/c1 a = a/c1 b = b/c2 b = b/c2 elseif @select == "z*c+(Rz+Iz)" a = a*c1+(real(a)+imag(a)) b = b*c2+(real(b)+imag(b)) elseif @select == "z/c+(Rz+Iz)" a = a/c1+(real(a)+imag(a)) b = b/c2+(real(b)+imag(b)) elseif @select == "z/c-(Rz+Iz)" a = a/c1-(real(a)+imag(a)) b = b/c2-(real(b)+imag(b)) elseif @select == "z*c-+(Rz+Iz)" a = a*c1-(real(a)+imag(a)) a = a*c1+(real(a)+imag(a)) b = b*c2-(real(b)+imag(b)) b = b*c2+(real(b)+imag(b)) elseif @select == "z/c-+(Rz+Iz)" a = a/c1-(real(a)+imag(a)) a = a/c1+(real(a)+imag(a)) b = b/c2-(real(b)+imag(b)) b = b/c2+(real(b)+imag(b)) elseif @select == "z*c+(Rz+Iz)|z+c" a = a*c1+(real(a)+imag(a)) a = a+c1 b = b*c2+(real(b)+imag(b)) b = b+c2 elseif @select == "z*c+(Rz+Iz)|z-c" a = a*c1+(real(a)+imag(a)) a = a-c1 b = b*c2+(real(b)+imag(b)) b = b-c2 elseif @select == "z*c+(Rz+Iz)|c-z" a = a*c1+(real(a)+imag(a)) a = c1-a b = b*c2+(real(b)+imag(b)) b = c2-b elseif @select == "z*c+(Rz+Iz)|z*c" a = a*c1+(real(a)+imag(a)) a = a*c1 b = b*c2+(real(b)+imag(b)) b = b*c2 elseif @select == "z*c+(Rz+Iz)|z/c" a = a*c1+(real(a)+imag(a)) a = a/c1 b = b*c2+(real(b)+imag(b)) b = b/c2 endif z=(a+b)/2 w=(b-a)*1i/2 if @typea == false if @flavor == "1" a = real(@zfn1a(z*@za1))-imag(@wfn1a(w*@wa1))+flip(imag(@zfn2a(z*@za2))\ +real(@wfn2a(w*@wa2))) b = real(@zfn1b(z*@zb1))+imag(@wfn1b(w*@wb1))+flip(imag(@zfn2a(z*@zb2))\ -real(@wfn2b(w*@wb2))) elseif @flavor == "2" a = @zfn1a(real(z*@za1))-@wfn1a(imag(w*@wa1))+@zfn2a(flip(imag(z*@za2))\ +@wfn2a(real(w*@wa2))) b = @zfn1b(real(z*@zb1))+@wfn1b(imag(w*@wb1))+@zfn2b(flip(imag(z*@zb2))\ -@wfn2b(real(w*@wb2))) elseif @flavor == "3" a = @zfn1a(real(z*@za1))-@wfn1a(imag(w*@wa1))+flip(@zfn2a(imag(z*@za2))\ +@wfn2a(real(w*@wa2))) b = @zfn1b(real(z*@zb1))+@wfn1b(imag(w*@wb1))+flip(@zfn2b(imag(z*@zb2))\ -@wfn2b(real(w*@wb2))) elseif @flavor == "4" a = @zfn1a(real(z*@za1))-imag(@wfn1a(w*@wa1))+flip(imag(@zfn2a(z*@za2))\ +real(@wfn2a(w*@wa2))) b = @zfn1b(real(z*@zb1))+imag(@wfn1b(w*@wb1))+flip(imag(@zfn2a(z*@zb2))\ -real(@wfn2b(w*@wb2))) elseif @flavor == "5" a = real(@zfn1a(z*@za1))-@wfn1a(imag(w*@wa1))+@zfn2a(flip(imag(z*@za2))\ +@wfn2a(real(w*@wa2))) b = real(@zfn1b(z*@zb1))+@wfn1b(imag(w*@wb1))+@zfn2b(flip(imag(z*@zb2))\ -@wfn2b(real(w*@wb2))) elseif @flavor == "6" a = real(@zfn1a(z*@za1))-@wfn1a(imag(w*@wa1))+flip(@zfn2a(imag(z*@za2))\ +@wfn2a(real(w*@wa2))) b = real(@zfn1b(z*@zb1))+@wfn1b(imag(w*@wb1))+flip(@zfn2b(imag(z*@zb2))\ -@wfn2b(real(w*@wb2))) endif elseif @typea == true if @flavor == "1" a = real(@zfn1a(z*@za1)) b = flip(imag(@zfn1b(z*@zb1))) elseif @flavor == "2" a = @zfn1a(real(z*@za1)) b = flip(@zfn1b(imag(z*@zb1))) elseif @flavor == "3" a = @zfn1a(real(z*@za1)) b = @zfn1b(flip(imag(z*@zb1))) elseif @flavor == "4" a = real(@zfn1a(z*@za1)) b = flip(@zfn1b(imag(z*@zb1))) elseif @flavor == "5" a = @zfn1a(real(z*@za1)) b = @zfn1b(flip(imag(z*@zb1))) elseif @flavor == "6" a = real(@zfn1a(z*@za1)) b = @zfn1b(flip(imag(z*@zb1))) endif endif c1 = real(cz) - imag(ch) + flip(imag(cz) + real(ch)) c2 = real(cz) + imag(ch) + flip(imag(cz) - real(ch)) ca = (real(cc)) - (imag(cd)-flip(@ccd1)) + flip(imag(cc) + real(cd)) cb = real(cc*@ccc1) + imag(cd-flip(@ccd2)) + flip(imag(cc) - real(cd)) pa = real(pz) - imag(pw) + flip(imag(pz) + real(pw)) pb = real(pz) + imag(pw) + flip(imag(pz) - real(pw)) a = @fna(a-@a1)*@a2 b = @fnb(b-@b1)*@b2 if @cop == "1" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "2" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "3" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "4" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "5" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "6" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "7" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "8" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "9" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "10" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "11" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "12" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "13" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "14" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "15" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "16" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ +flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "17" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "18" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "19" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "20" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "21" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "22" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "23" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "24" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))-(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "25" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "26" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "27" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "28" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)-@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "29" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "30" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)+@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "31" c = @fn5a((real(a))+(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower elseif @cop == "32" c = @fn5a((real(a))-(@h1*@h)*@fn1a(imag(a)-@fn2(@fn2a(ca*imag(a))))\ -flip(@fn6a(imag(a))+(@h2*@h)*@fn3a(real(a)+@fn4(@fn4a(ca*real(a))))) \ -@goffset)*@gpower endif if @dop == "1" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "2" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "3" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "4" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "5" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "6" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "7" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "8" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "9" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "10" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "11" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "12" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "13" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "14" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "15" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "16" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ +flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "17" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "18" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "19" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "20" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "21" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "22" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "23" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "24" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))-(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "25" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "26" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "27" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "28" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)-@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "29" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "30" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)+@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "31" d = @fn5b((real(b))+(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower elseif @dop == "32" d = @fn5b((real(b))-(@h3*@h)*@fn1b(imag(b)-@fn2(@fn2b(cb*imag(b)))) \ -flip(@fn6b(imag(b))+(@h4*@h)*@fn3b(real(b)+@fn4(@fn4b(cb*real(b))))) \ -@goffset)*@gpower endif c = @fnc(c-@c1)*@c2 d = @fnd(d-@d1)*@d2 c1 = @fnc1((c1-@c1o)*@c1p) c2 = @fnc1((c2-@c1o)*@c1p) if @loop == "Mandel Lambda Fn" hc = @nufn(c)*c1 hd = @nufn(d)*c2 z =(@hcfn1a(real(hc-@hcz1)*@hcw1) + @hdfn1a(real(hd-@hdz1)*@hdw1) + \ flip(@hcfn2a(imag(hc-flip(@hcz2))*@hcw2) + \ @hdfn2a(imag(hd-flip(@hdz2))*@hdw2))) / @p1fn(@p1) w =(@hcfn1b(imag(hc)) - @hdfn1b(imag(hd)) + flip(@hdfn2b(real(hd)) - \ @hcfn2b(real(hc)))) / @p2fn(@p2) elseif @loop == "Mandelbrot" hc = @nufn(c)^@power+c1 hd = @nufn(d)^@power+c2 z =(@hcfn1a(real(hc-@hcz1)*@hcw1) + @hdfn1a(real(hd-@hdz1)*@hdw1) + \ flip(@hcfn2a(imag(hc-flip(@hcz2))*@hcw2) + \ @hdfn2a(imag(hd-flip(@hdz2))*@hdw2))) / @p1fn(@p1) w = (@hcfn1b(imag(hc)) - @hdfn1b(imag(hd)) + flip(@hdfn2b(real(hd)) - \ @hcfn2b(real(hc)))) / @p2fn(@p2) elseif @loop == "Mark's Mandel" hc = (c1^(@power-1))*@nufn(c)+c1 hd = (c2^(@power-1))*@nufn(d)+c2 z =(@hcfn1a(real(hc-@hcz1)*@hcw1) + @hdfn1a(real(hd-@hdz1)*@hdw1) + \ flip(@hcfn2a(imag(hc-flip(@hcz2))*@hcw2) + \ @hdfn2a(imag(hd-flip(@hdz2))*@hdw2))) / @p1fn(@p1) w =(@hcfn1b(imag(hc)) - @hdfn1b(imag(hd)) + flip(@hdfn2b(real(hd)) - \ @hcfn2b(real(hc)))) / @p2fn(@p2) elseif @loop == "Ikenaga" c = @nufn(c) d = @nufn(d) hc = c^3+c*c1-c-c1 hd = d^3+d*c2-d-c2 z =(@hcfn1a(real(hc-@hcz1)*@hcw1) + @hdfn1a(real(hd-@hdz1)*@hdw1) + \ flip(@hcfn2a(imag(hc-flip(@hcz2))*@hcw2) + \ @hdfn2a(imag(hd-flip(@hdz2))*@hdw2))) / @p1fn(@p1) w =(@hcfn1b(imag(hc)) - @hdfn1b(imag(hd)) + flip(@hdfn2b(real(hd)) - \ @hcfn2b(real(hc)))) / @p2fn(@p2) elseif @loop == "Barnsley 1" if real(c) >= 0 hc = @nufn(c)*c1-c1 else hc = @nufn(c)*c1+c1 endif if real(d) >= 0 hd = @nufn(d)*c2-c2 else hd = @nufn(d)*c2+c2 endif z =(@hcfn1a(real(hc-@hcz1)*@hcw1) + @hdfn1a(real(hd-@hdz1)*@hdw1) + \ flip(@hcfn2a(imag(hc-flip(@hcz2))*@hcw2) + \ @hdfn2a(imag(hd-flip(@hdz2))*@hdw2))) / @p1fn(@p1) w =(@hcfn1b(imag(hc)) - @hdfn1b(imag(hd)) + flip(@hdfn2b(real(hd)) - \ @hcfn2b(real(hc)))) / @p2fn(@p2) elseif @loop == "Barnsley 2" if real(c)*imag(c1)+real(c1)*imag(c) >= 0 hc = @nufn(c)*c1-c1 else hc = @nufn(c)*c1+c1 endif if real(d)*imag(c2)+real(c2)*imag(d) >= 0 hd = @nufn(d)*c2-c2 else hd = @nufn(d)*c2+c2 endif z =(@hcfn1a(real(hc-@hcz1)*@hcw1) + @hdfn1a(real(hd-@hdz1)*@hdw1) + \ flip(@hcfn2a(imag(hc-flip(@hcz2))*@hcw2) + \ @hdfn2a(imag(hd-flip(@hdz2))*@hdw2))) / @p1fn(@p1) w =(@hcfn1b(imag(hc)) - @hdfn1b(imag(hd)) + flip(@hdfn2b(real(hd)) - \ @hcfn2b(real(hc)))) / @p2fn(@p2) elseif @loop == "Barnsley 3" c = @nufn(c) d = @nufn(d) if real(c) >= 0 hc = @nufn1(c)-1 else hc = @nufn1(c)-1+c1*real(c) endif if real(d) >= 0 hd = @nufn1(d)-1 else hd = @nufn1(d)-1+c2*real(d) endif z =(@hcfn1a(real(hc-@hcz1)*@hcw1) + @hdfn1a(real(hd-@hdz1)*@hdw1) + \ flip(@hcfn2a(imag(hc-flip(@hcz2))*@hcw2) + \ @hdfn2a(imag(hd-flip(@hdz2))*@hdw2))) / @p1fn(@p1) w =(@hcfn1b(imag(hc)) - @hdfn1b(imag(hd)) + flip(@hdfn2b(real(hd)) - \ @hcfn2b(real(hc)))) / @p2fn(@p2) elseif @loop == "Phoenix Mandel" c = @nufn(c) d = @nufn(d) hc = @nufn1(c) + c1 hd = @nufn1(d) + c2 na =(@hcfn1a(real(hc-@hcz1)*@hcw1) + @hdfn1a(real(hd-@hdz1)*@hdw1) + \ flip(@hcfn2a(imag(hc-flip(@hcz2))*@hcw2) + \ @hdfn2a(imag(hd-flip(@hdz2))*@hdw2))) / @p1fn(@p1) + pa*nz nb =(@hcfn1b(imag(hc)) - @hdfn1b(imag(hd)) + flip(@hdfn2b(real(hd)) - \ @hcfn2b(real(hc)))) / @p2fn(@p2) + pb*nw nz = z nw = w z = na w = nb elseif @loop == "Phoenix Mandel Fn" hc = c1*@nufn(c) hd = c2*@nufn(d) na =(@hcfn1a(real(hc-@hcz1)*@hcw1) + @hdfn1a(real(hd-@hdz1)*@hdw1) + \ flip(@hcfn2a(imag(hc-flip(@hcz2))*@hcw2) + \ @hdfn2a(imag(hd-flip(@hdz2))*@hdw2))) / @p1fn(@p1)+ pa*nz nb =(@hcfn1b(imag(hc)) - @hdfn1b(imag(hd)) + flip(@hdfn2b(real(hd)) - \ @hcfn2b(real(hc)))) / @p2fn(@p2)+ pb*nw nz = z nw = w z = na w = nb elseif @loop == "Fender C" if 1<|c| c = @nufn(c)+c1 endif c = @nufn1(c)+c1 if 1<|d| d = @nufn(d)+c2 endif d = @nufn1(d)+c2 z = (@hcfn1a(real(c-@hcz1)*@hcw1) + @hdfn1a(real(d-@hdz1)*@hdw1) + \ flip(@hcfn2a(imag(c-flip(@hcz2))*@hcw2) + \ @hdfn2a(imag(d-flip(@hdz2))*@hdw2))) / @p1fn(@p1) w = (@hcfn1b(imag(c)) - @hdfn1b(imag(d)) + flip(@hdfn2b(real(d)) - \ @hcfn2b(real(c)))) / @p2fn(@p2) elseif @loop == "Talis" hc =@tfn1((c-@tp1)*@tp1a)*@tfn2(c)/@tfn3(@tp2+(@tfn4(c)*@tp2a))+@tfn5\ (c1-@tp3)*@tp3a hd =@tfn1((d-@tp1)*@tp1a)*@tfn2(d)/@tfn3(@tp2+(@tfn4(d)*@tp2a))+@tfn5\ (c2-@tp3)*@tp3a z =(@hcfn1a(real(hc-@hcz1)*@hcw1) + @hdfn1a(real(hd-@hdz1)*@hdw1) + \ flip(@hcfn2a(imag(hc-flip(@hcz2))*@hcw2) + \ @hdfn2a(imag(hd-flip(@hdz2))*@hdw2))) / @p1fn(@p1) w = (@hcfn1b(imag(hc)) - @hdfn1b(imag(hd)) + flip(@hdfn2b(real(hd)) - \ @hcfn2b(real(hc)))) / @p2fn(@p2) endif bailout: (@test == 0 && (|z|+|w|) <= @bailout) || \ (@test == 1 && sqr(real(z+w)) <= @bailout) || \ (@test == 2 && sqr(imag(z+w)) <= @bailout) || \ (@test == 3 && (sqr(real(z+w)) <= @bailout && sqr(imag(z+w)) < @bailout)) || \ (@test == 4 && (sqr(real(z+w)) <= @bailout || sqr(imag(z+w)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z+w)) + abs(imag(z+w))) <= @bailout)) || \ (@test == 6 && (sqr(real(z+w) + imag(z+w)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z+w)) <= @bailout)) default: title = "Hypercomplex Multi M/J" maxiter = 500 magn = 0.7 periodicity = 0 heading caption = "Switch Parameters" visible = @show endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param sscale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam float param version default = 1.35 visible = false endparam heading caption = "Initial Section" endheading bool param np caption = "Initial Section" default = true endparam param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 0 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnzInit caption = "Init Z Fn" default = ident() hint = "Applies a function to the initial Z" endfunc func fncInit caption = "Init C Fn" default = ident() hint = "Applies a function to the initial C" visible = @select != 0 endfunc heading caption = "" endheading int param loop caption = "Loop Type" enum = "Mandel Lambda Fn""Mandelbrot""Mark's Mandel""Ikenaga" \ "Barnsley 1""Barnsley 2""Barnsley 3""Phoenix Mandel" \ "Phoenix Mandel Fn""Fender C""Talis" default = 0 endparam complex param h caption = "Pattern Amt" default = (1,0) hint = "A setting of (0,0) removes all distortion" endparam complex param cc caption = "Intensify" default = (3, 0) visible = @h != (0,0) hint = "Higher values amplify the effects of the pattern functions. \ Set to (-1,0) for standard formula sets when 'Pattern Amt' \ is not (0,0)" endparam heading caption = "Formula Parameters" endheading complex param goffset caption = "Global Offset" default = (0,0) endparam complex param gpower caption = "Global Power" default = (1,0) endparam complex param startseed caption = "Start/Seed" default = (1,0) endparam complex param ch caption = "2nd Seed" default = (0,0) endparam func fnc1 caption = "Pixel Function" default = ident () hint = "Use this in conjunction with pixel offset and strength" endfunc complex param c1o caption = "Pixel Offset" default = (0, 0) endparam complex param c1p caption = "Pixel Strength" default = (1, 0) endparam float param power caption = "Exponent" default = 2 visible = @loop == 1 || @loop == 2 endparam complex param pz caption = "Phoenix Distortion" default = (0.5, 0.0) visible = @loop == 7 || @loop == 8 endparam complex param pw caption = "4-dim Phoenix Distortion" default = (0.0, 0.0) visible = @loop == 7 || @loop == 8 endparam complex param tp1 caption = "1st Talis Z Offset" default = (0,0) visible = @loop == "Talis" endparam complex param tp1a caption = "1st Talis Z Strength" default = (1,0) visible = @loop == "Talis" endparam complex param tp2 caption = "2nd Talis Z Offset" default = (1,0) visible = @loop == "Talis" endparam complex param tp2a caption = "Talis 2nd Z Strength" default = (1,0) visible = @loop == "Talis" endparam complex param tp3 caption = "Talis C Offset" default = (0,0) visible = @loop == "Talis" endparam complex param tp3a caption = "Talis C Strength" default = (1,0) visible = @loop == "Talis" endparam func tfn1 caption = "1st Talis Z Function" default = ident () visible = @loop == "Talis" endfunc func tfn2 caption = "2nd Talis Z Function" default = ident () visible = @loop == "Talis" endfunc func tfn3 caption = "3rd Talis Z Function" default = ident () visible = @loop == "Talis" endfunc func tfn4 caption = "Another Talis Function" default = ident () visible = @loop == "Talis" endfunc func tfn5 caption = "Talis C Function" default = ident () visible = @loop == "Talis" endfunc complex param ct caption = "4-dim value" default = (0, 0) endparam func p1fn caption = "Global X Function" default = ident() endfunc func p2fn caption = "Global Y Function" default = ident() endfunc func nufn caption = "Z Function" default = ident() endfunc func nufn1 caption = "Z Function 2" default = sqr() visible = @loop == 6 || @loop == 7 || @loop == 9 endfunc complex param p1 caption = "Twist" default = (2,0) endparam complex param p2 caption = "Mangle" default = (2,0) endparam float param rotx caption = "X Rotation" default = 0 min = -360 max = 360 hint = "Rotates yz plane." endparam float param roty caption = "Y Rotation" default = 0 min = -360 max = 360 hint = "Rotates zx plane." endparam float param rotz caption = "Z Rotation" default = 0 min = -360 max = 360 hint = "Rotates xy plane." endparam heading caption = "Pattern Functions and Parameters" visible = @h != (0,0) endheading int param cop caption = "1st Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19"\ "20""21""22""23""24""25""26""27""28""29""30""31""32" default = 0 visible = @h != (0,0) hint = "Try changing 1st and 2nd operators simultaneously for good results" endparam int param dop caption = "2nd Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19"\ "20""21""22""23""24""25""26""27""28""29""30""31""32" default = 0 visible = @h != (0,0) hint = "Try changing 1st and 2nd operators simultaneously for good results" endparam float param ccd1 caption = "Distort" default = 0 visible = @h != (0,0) endparam float param ccc1 caption = "Ripple X" default = 1 visible = @h != (0,0) endparam float param ccd2 caption = "Ripple Y" default = 0 visible = @h != (0,0) endparam complex param h1 caption = "Step size 1" default = (.05, 0) visible = @h != (0,0) endparam complex param h2 caption = "Step size 2" default = (.05, 0) visible = @h != (0,0) endparam complex param h3 caption = "Step size 3" default = (.05, 0) visible = @h != (0,0) endparam complex param h4 caption = "Step size 4" default = (.05, 0) visible = @h != (0,0) endparam complex param cw caption = "Constant D" default = (0, 0) visible = @h != (0,0) endparam func fn2 caption = "Master X Function" default = ident() visible = @h != (0,0) endfunc func fn4 caption = "Master Y Function" default = ident() visible = @h != (0,0) endfunc func fn1a caption = "1st X Function" default = sin() visible = @h != (0,0) endfunc func fn2a caption = "2nd X Function" default = ident() visible = @h != (0,0) endfunc func fn3a caption = "3rd X Function" default = sin() visible = @h != (0,0) endfunc func fn4a caption = "4th X Function" default = ident() visible = @h != (0,0) endfunc func fn5a caption = "5th X Function" default = ident() visible = @h != (0,0) endfunc func fn6a caption = "6th X Function" default = ident() visible = @h != (0,0) endfunc func fn1b caption = "1st Y Function" default = sin() visible = @h != (0,0) endfunc func fn2b caption = "2nd Y Function" default = ident() visible = @h != (0,0) endfunc func fn3b caption = "3rd Y Function" default = sin() visible = @h != (0,0) endfunc func fn4b caption = "4th Y Function" default = ident() visible = @h != (0,0) endfunc func fn5b caption = "5th Y Function" default = ident() visible = @h != (0,0) endfunc func fn6b caption = "6th Y Function" default = ident() visible = @h != (0,0) endfunc heading caption = "1st Order Functions and Parameters" visible = @viewFirst endheading bool param viewFirst caption = "1st Order Functions and Parameters" default = true endparam bool param typea caption = "Change 1st Order Type" default = false visible = @viewFirst endparam int param flavor caption = "1st Order Flavor" enum = "1""2""3""4""5""6" default = 0 hint = "Changes the way the 1st order functions are applied" visible = @viewFirst endparam func zfn1a caption = "Primary Function 1" default = ident() visible = @viewFirst endfunc func zfn2a caption = "Primary Function 2" default = ident() visible = @typea != true && @viewFirst endfunc func zfn1b caption = "Primary Function 3" default = ident() visible = @viewFirst endfunc func wfn1a caption = "Aux Function 1" default = ident() hint = "Often effective only when primary functions are changed" visible = @typea != true && @viewFirst endfunc func wfn2a caption = "Aux Function 2" default = ident() hint = "Often effective only when primary functions are changed" visible = @typea != true && @viewFirst endfunc func wfn1b caption = "Aux Function 3" default = ident() hint = "Often effective only when primary functions are changed" visible = @typea != true && @viewFirst endfunc func wfn2b caption = "Aux Function 4" default = ident() hint = "Often effective only when primary functions are changed" visible = @typea != true && @viewFirst endfunc func zfn2b caption = "Aux Function 5" default = ident() hint = "Often effective only when primary functions are changed" visible = @flavor != 0 && @typea != true && @viewFirst endfunc complex param za1 caption = "1st Param X" default = (1,0) visible = @viewFirst endparam complex param wa1 caption = "2nd Param X" default = (1,0) visible = @typea != true && @viewFirst endparam complex param za2 caption = "3rd Param X" default = (1,0) visible = @typea != true && @viewFirst endparam complex param wa2 caption = "4th Param X" default = (1,0) visible = @typea != true && @viewFirst endparam complex param zb1 caption = "1st Param Y" default = (1,0) visible = @viewFirst endparam complex param wb1 caption = "2nd Param Y" default = (1,0) visible = @typea != true && @viewFirst endparam complex param zb2 caption = "3rd Param Y" default = (1,0) visible = @typea != true && @viewFirst endparam complex param wb2 caption = "4th Param Y" default = (1,0) visible = @typea != true && @viewFirst endparam heading caption = "2nd Order Functions and Parameters" visible = @viewSecond endheading bool param viewSecond caption = "2nd Order Functions and Parameters" default = true endparam func hcfn1a caption = "1st Function A" default = ident() visible = @viewSecond endfunc func hcfn2a caption = "2nd Function A" default = ident() visible = @viewSecond endfunc func hdfn1a caption = "3rd Function A" default = ident() visible = @viewSecond endfunc func hdfn2a caption = "4th Function A" default = ident() visible = @viewSecond endfunc func hcfn1b caption = "1st Function B" default = ident() visible = @viewSecond endfunc func hcfn2b caption = "2nd Function B" default = ident() visible = @viewSecond endfunc func hdfn1b caption = "3rd Function B" default = ident() visible = @viewSecond endfunc func hdfn2b caption = "4th Function B" default = ident() visible = @viewSecond endfunc float param hcz1 caption = "1st Param A" default = 0 visible = @viewSecond endparam float param hdz1 caption = "2nd Param A" default = 0 visible = @viewSecond endparam float param hcz2 caption = "3rd Param A" default = 0 visible = @viewSecond endparam float param hdz2 caption = "4th Param A" default = 0 visible = @viewSecond endparam complex param hcw1 caption = "1st Param B" default = (1,0) visible = @viewSecond endparam complex param hdw1 caption = "2nd Param B" default = (1,0) visible = @viewSecond endparam complex param hcw2 caption = "3rd Param B" default = (1,0) visible = @viewSecond endparam complex param hdw2 caption = "4th Param B" default = (1,0) visible = @viewSecond endparam heading caption = "3rd Order Functions and Parameters" visible = @viewThird endheading bool param viewThird caption = "3rd Order Functions and Parameters" default = true endparam func fna caption = "Quarter Fn A" default = ident() visible = @viewThird endfunc func fnb caption = "Quarter Fn B" default = ident() visible = @viewThird endfunc func fnc caption = "Quarter Fn C" default = ident() visible = @viewThird endfunc func fnd caption = "Quarter Fn D" default = ident() visible = @viewThird endfunc complex param a1 caption = "A Offset" default = (0,0) visible = @viewThird endparam complex param a2 caption = "A Strength" default = (1,0) visible = @viewThird endparam complex param b1 caption = "B Offset" default = (0,0) visible = @viewThird endparam complex param b2 caption = "B Strength" default = (1,0) visible = @viewThird endparam complex param c1 caption = "C Offset" default = (0,0) visible = @viewThird endparam complex param c2 caption = "C Strength" default = (1,0) visible = @viewThird endparam complex param d1 caption = "D Offset" default = (0,0) visible = @viewThird endparam complex param d2 caption = "D Strength" default = (1,0) visible = @viewThird endparam heading caption = "Bailout" endheading param bailout caption = "Bailout value" default = 12 endparam param test caption = "Bailout Test" default = 7 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = cabs () visible = (@test == 7) endfunc switch: type = "gnd+tma-hypercomplexMultiM/J" fn1a = @fn1a fn2a = @fn2a fn3a = @fn3a fn4a = @fn4a fn5a = @fn5a fn6a = @fn6a fn1b = @fn1b fn2b = @fn2b fn3b = @fn3b fn4b = @fn4b fn5b = @fn5b fn6b = @fn6b zfn1a = @zfn1a zfn2a = @zfn2a wfn1a = @wfn1a wfn2a = @wfn2a zfn1b = @zfn1b zfn2b = @zfn2b wfn1b = @wfn1b wfn2b = @wfn2b p1fn = @p1fn p2fn = @p2fn hcfn1a = @hcfn1a hcfn2a = @hcfn2a hdfn1a = @hdfn1a hdfn2a = @hdfn2a hcfn1b = @hcfn1b hcfn2b = @hcfn2b hdfn1b = @hdfn1b hdfn2b = @hdfn2b power = @power bailout = @bailout h = @h h1 = @h1 h2 = @h2 h3 = @h3 h4 = @h4 cc = @cc cw = @cw ct = @ct ch = @ch pz = @pz pw = @pw nufn = @nufn nufn1 = @nufn1 bailfunc = @bailfunc mode=@switchmode switchmode=@mode center=@swcenter sscale=@swscale startseed = #pixel test = @test p1 = @p1 p2 = @p2 loop = @loop select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnzInit = @fnzInit fncInit = @fncinit cop = @cop dop = @dop fna = @fna a1 = @a1 a2 = @a2 a3 = @a3 fnb = @fnb b1 = @b1 b2 = @b2 b3 = @b3 fnc = @fnc c1 = @c1 c2 = @c2 c3 = @c3 fnd = @fnd d1 = @d1 d2 = @d2 d3 = @d3 c1o = @c1o c1p = @c1p fnc1 = @fnc1 gpower = @gpower goffset = @goffset flavor = @flavor typea = @typea rotx = @rotx roty = @roty rotz = @rotz za1 = @za1 wa1 = @wa1 za2 = @za2 wa2 = @wa2 zb1 = @zb1 wb1 = @wb1 zb2 = @zb2 wb2 = @wb2 hcz1 = @hcz1 hcz2 = @hcz2 hdz1 = @hdz1 hdz2 = @hdz2 hcw1 = @hcw1 hcw2 = @hcw2 hdw1 = @hdw1 hdw2 = @hdw2 ccc1 = @ccc1 ccd1 = @ccd1 ccd2 = @ccd2 fn2 = @fn2 fn4 = @fn4 tfn1 = @tfn1 tfn2 = @tfn2 tfn3 = @tfn3 tfn4 = @tfn4 tfn5 = @tfn5 tp1 = @tp1 tp1a = @tp1a tp2 = @tp2 tp2a = @tp2a tp3 = @tp3 tp3a = @tp3a } *************************************************************************** Talis&Friends { ; ; Here are the "Talis" formulae adapted from Fractal Explorer, plus some ; extra variations. Lots of extra bells and whistles not possible in FE have ; been added. Thanks to Andrea Spinozzi for some more extras, including the ; "Extra Loop" goodies. ; Toby Marshall, v 1.3 Dec 2005 ; v1.4 May 2009 added more Talis variations (Talis+1-7). You must vary the ; "Talis+' functions from their defaults in some cases (Talis+5 & +6)to get ; decent M sets, but I have left the defaults all at "Conj" for good results ; with the other variations. Look for these and new params in a new ; "Talis+ Functions & Params" section. ; Init: z = @startseed c = pixel complex z0 = 0 complex c1 = 0 complex imagz = @imagz*(0,1) if @mode == "Mandelbrot" z = @startseed c = #pixel elseif @mode == "Julia" z = #pixel c = @startseed endif if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif Loop: if @type == false if @zprime == 0 z0 = real(@fnreal(z-@realz))+flip(imag(@fnimag(z-imagz))) elseif @zprime == 1 z0 = real(@fnreal(z-@realz))-flip(imag(@fnimag(z-imagz))) elseif @zprime == 2 z0 = flip(imag(@fnimag(z-imagz)))-real(@fnreal(z-@realz)) endif else if @zprime == 0 z0 = @fnreal(real(z-@realz))+@fnimag(flip(imag(z-imagz))) elseif @zprime == 1 z0 = @fnreal(real(z-@realz))-@fnimag(flip(imag(z-imagz))) elseif @zprime == 2 z0 = @fnimag(flip(imag(z-imagz)))-@fnreal(real(z-@realz)) endif endif ; Select the global definition of Z if @select == "z"; select variable type z0 = @fnz(z0-@zg)*@ezg elseif @select == "z+c" z0 = @fnz(z0-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z0 = @fnz(z0-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z0 = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z0-@zg)*@ezg elseif @select == "z*c" z0 = @fnz(z0-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z0 = @fnz(z0-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z0 = @fnz(z0-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z0 = @fnz(z0-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z0 = @fnz(z0-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z0 = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z0-@zg)*@ezg elseif @select == "z+c|z*c" z0 = @fnz(z0-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z0 = @fnz(z0-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z0 = @fnz(z0-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z0 = @fnz(z0-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z0 = @fnz(z0-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z0 = @fnz(z0-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z0 = @fnz(z0-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z0 = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z0-@zg)*@ezg elseif @select == "z-c|z*c" z0 = @fnz(z0-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z0 = @fnz(z0-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z0 = @fnz(z0-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z0 = @fnz(z0-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z0 = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z0-@zg)*@ezg z0 = @fnz(z0-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z0 = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z0-@zg)*@ezg z0 = @fnz(z0-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z0 = @fnz(z0-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z0 = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z0-@zg)*@ezg elseif @select == "z*c|z*c" z0 = @fnz(z0-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z0 = @fnz(z0-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z0 = @fnz(z0-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z0 = @fnz(z0-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z0 = @fnz(z0-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z0 = @fnz(z0-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z0 = @fnz(z0-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z0 = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z0-@zg)*@ezg elseif @select == "z/c|z/c" z0 = @fnz(z0-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z0 = @fnz(z0-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z0 = (@fnz(z0-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) elseif @select == "z/c+(Rz+Iz)" z0 = (@fnz(z0-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) elseif @select == "z/c-(Rz+Iz)" z0 = (@fnz(z0-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) elseif @select == "z*c-+(Rz+Iz)" z0 = (@fnz(z0-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) z0 = (@fnz(z0-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) elseif @select == "z/c-+(Rz+Iz)" z0 = (@fnz(z0-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) z0 = (@fnz(z0-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) elseif @select == "z*c+(Rz+Iz)|z+c" z0 = (@fnz(z0-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) z0 = @fnz(z0-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z0 = (@fnz(z0-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) z0 = @fnz(z0-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z0 = (@fnz(z0-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) z0 = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z0-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z0 = (@fnz(z0-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) z0 = @fnz(z0-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z0 = (@fnz(z0-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z0+@addz)*@muz)^@exz+(imag(z0+@addz)*@muz1)^@exz1) z0 = @fnz(z0-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif c1 = @cfunc(((c-@pc1)*@pc2)^@pc3) if (@zsplit == false) if (@selform==0) ; Normal z0 = z0 elseif (@selform==1) ; Mandelbrot z0 = z0^2+c1 elseif (@selform==2) ; Barnsley if real(z0) > 0 z0 = (z0-1)*c1 else z0 = (z0+1)*c1 endif elseif (@selform==3) ; Ikenaga Modified z0 = z0^3+z0*(c1-1)*c elseif (@selform==4) ; Ikenaga Original z0 = z0*z0*z0+z0*c1-z0-c1 elseif @selform == 5; Mandel Lambda z0 = z0*c1 endif z0 = ((z0+@paddz)*@pmuz)^@pexz endif if @var == "Talis" z =@fn1((z0-@p1)*@p1a)*@fn2(z0)/@fn3(@p2+(@fn4(z0)*@p2a))+@fn5(c-@p3)\ *@p3a elseif @var == "Talis+1" z =@fn1(((z0*@cfn1((((c-@prc1)*@prc1a)^@prc1b)))-@p1)*@p1a)*@fn2(z0)/@fn3\ (@p2+(@fn4(z0)*@p2a))+@fn5(c-@p3)*@p3a elseif @var == "Talis+2" z =@fn1((z0-@p1)*@p1a)*@fn2(z0*@cfn2(((c-@prc2)*@prc2a)^@prc2b))/@fn3\ (@p2+(@fn4(z0)*@p2a))+@fn5(c-@p3)*@p3a elseif @var == "Talis+3" z =@fn1((z0-@p1)*@p1a)*@fn2(z0)/@fn3(@p2+(@fn4(z0*@cfn3(((c-@prc3)*@prc3a)\ ^@prc3b))*@p2a))+@fn5(c-@p3)*@p3a elseif @var == "Talis+4" z =@fn1(((z0*@cfn1((((c-@prc1)*@prc1a)^@prc1b)))-@p1)*@p1a)*@fn2(z0*@cfn2\ (((c-@prc2)*@prc2a)^@prc2b))/@fn3(@p2+(@fn4(z0)*@p2a))+@fn5(c-@p3)*@p3a elseif @var == "Talis+5" z =@fn1(((z0*@cfn1((((c-@prc1)*@prc1a)^@prc1b)))-@p1)*@p1a)*@fn2(z0)/@fn3\ (@p2+(@fn4(z0*@cfn3(((c-@prc3)*@prc3a)^@prc3b))*@p2a))+@fn5(c-@p3)*@p3a elseif @var == "Talis+6" z =@fn1((z0-@p1)*@p1a)*@fn2(z0*@cfn2(((c-@prc2)*@prc2a)^@prc2b))/@fn3\ (@p2+(@fn4(z0*@cfn3(((c-@prc3)*@prc3a)^@prc3b))*@p2a))+@fn5(c-@p3)*@p3a elseif @var == "Talis+7" z =@fn1(((z0*@cfn1((((c-@prc1)*@prc1a)^@prc1b)))-@p1)*@p1a)*@fn2(z0*@cfn2\ (((c-@prc2)*@prc2a)^@prc2b))/@fn3(@p2+(@fn4(z0*@cfn3(((c-@prc3)*@prc3a)\ ^@prc3b))*@p2a))+@fn5(c-@p3)*@p3a elseif @var == "Talis Var 1" z =@fn1(((z0-@p1)*@p1a)*@fn2(z0)-@fn6(z0)) /@fn3(@p2+(@fn4(z0)*@p2a))\ +@fn5(c-@p3)*@p3a elseif @var == "Talis Var 2" z =@fn1(((z0-@p1)*@p1a)*@fn2(z0)*@fn6(z0)) /@fn3(@p2+(@fn4(z0)*@p2a))\ +@fn5(c-@p3)*@p3a elseif @var == "Talis Var 3" z =@fn1(((z0-@p1)*@p1a)*@fn2(z0)*@fn6(z0)*z) /@fn3(@p2+(@fn4(z0)*@p2a)\ *@fn7(z)-@fn8(z0))+@fn5(c-@p3)*@p3a elseif @var == "Talis Var 4" z =@fn1(((z0-@p1)*@p1a)*@fn2(z0)*@fn6(z0)) /@fn3(@p2+(@fn4(z0)*@p2a)\ *@fn7(z)-@fn8(z0))+@fn5(c-@p3)*@p3a elseif @var == "Talis Var 5" z =@fn1(((z0-@p1)*@p1a)*@fn2(z0)*@fn6(z0)) /@fn3(@p2+(@fn4(z0)*@p2a)\ *@fn7(z)-@fn8(z0)-z)+@fn5(c-@p3)*@p3a elseif @var == "Talis Var 6" z =@fn1(((z0-@p1)*@p1a)*@fn2(z0)*@fn6(z0)) /@fn3(@p2+(@fn4(z0)*@p2a)\ *@fn7(z)-@fn8(z0)+z)+@fn5(c-@p3)*@p3a endif if (@zsplit == true) if (@selform==0) ; Normal z = z elseif (@selform==1) ; Mandelbrot z = z^2+c1 elseif (@selform==2) ; Barnsley if real(z) > 0 z = (z-1)*c1 else z = (z+1)*c1 endif elseif (@selform==3) ; Ikenaga Modified z = z^3+z*(c1-1)*c1 elseif (@selform==4) ; Ikenaga Original z = z*z*z+z*c1-z-c1 elseif @selform == 5; Mandel Lambda z = z*c1 endif z = ((z+@paddz)*@pmuz)^@pexz endif Bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) Default: title = "Talis and Friends" maxiter = 500 periodicity = 0 method = multipass Heading caption = "Switch Parameters" visible = @show Endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam Heading caption = "Initial Section" Endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 0 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) endparam complex param ezg caption = "Z Param 2" default = (1,0) endparam complex param addz caption = "Z Param 3" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param muz caption = "Z Strength re" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param muz1 caption = "Z Strength im" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param exz caption = "Z Power re" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param exz1 caption = "Z Power im" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param cg caption = "C Param 1" default = (0,0) visible = @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc int param zprime caption = "Change Operator" enum = "Normal""Var 1""Var 2" default = 0 endparam func fnreal caption = "Real Function" default = ident() endfunc func fnimag caption = "Imag Function" default = ident() endfunc bool param type caption = "Change R/I Fn Flavor" default = false hint = "Effective only with certain Real and Imag Function choices" endparam float param realz caption = "Real Offset" default = 0 endparam float param imagz caption = "Imag Offset" default = 0 endparam Heading caption = "Formula Parameters" Endheading int param var caption = "Formula Type" enum = "Talis""Talis+1""Talis+2""Talis+3""Talis+4""Talis+5""Talis+6"\ "Talis+7""Talis Var 1""Talis Var 2""Talis Var 3""Talis Var 4"\ "Talis Var 5""Talis Var 6" default = 0 endparam complex param startseed caption = "Start/Seed" default = (0,0) hint = "Defines the Init Z value for the Mandelbrot, \ seed value for the Julia." endparam param bailout caption = "Bailout" default = 100 endparam param test caption = "Bailout Test" default = 0 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc param selform caption = "Extra Loop" enum = "None""Mandelbrot""Barnsley""Ikenaga 1""Ikenaga 2""Mandel Lambda Fn" default = 0 endparam param zsplit caption = "Change Loop Flavor" default = false visible = @selform != 0 endparam complex param p1 caption = "1st Z Offset" default = (0,0) endparam complex param p1a caption = "1st Z Strength" default = (1,0) endparam complex param p2 caption = "2nd Z Offset" default = (1,0) endparam complex param p2a caption = "2nd Z Strength" default = (1,0) endparam complex param p3 caption = "C Offset" default = (0,0) endparam complex param p3a caption = "C Strength" default = (1,0) endparam complex param paddz caption = "Global Offset" default = (0.0,0.0) endparam complex param pmuz caption = "Global Strength" default = (1.0,0.0) endparam complex param pexz caption = "Global Power" default = (1.0,0.0) endparam complex param pc1 caption = "Loop C Offset" default = (0,0) visible = @selform != 0 endparam complex param pc2 caption = "Loop C Strength" default = (1,0) visible = @selform != 0 endparam complex param pc3 caption = "Loop C Power" default = (1,0) visible = @selform != 0 endparam func cfunc caption = "Loop C Function" default = ident() visible = @selform != 0 endfunc func fn1 caption = "1st Z Function" default = ident () endfunc func fn2 caption = "2nd Z Function" default = ident () endfunc func fn3 caption = "3rd Z Function" default = ident () endfunc func fn6 caption = "Extra Z Function" default = ident () visible = @var > 7 endfunc func fn7 caption = "Extra Z2 Function" default = ident () visible = @var > 9 endfunc func fn8 caption = "Extra Z3 Function" default = ident () visible = @var > 9 endfunc func fn4 caption = "Another Function" default = ident () endfunc func fn5 caption = "C Function" default = ident () endfunc heading caption = "Talis+ Params & Functions" visible = (@var=="Talis+1"||@var=="Talis+2"||@var=="Talis+3"||\ @var=="Talis+4"||@var=="Talis+5"||@var=="Talis+6"||\ @var=="Talis+7") endheading func cfn1 caption = "Talis+ Function 1" default = conj() visible = (@var=="Talis+1"||@var=="Talis+4"||@var=="Talis+5"||\ @var=="Talis+7") endfunc func cfn2 caption = "Talis+ Function 2" default = conj() visible = (@var=="Talis+2"||@var=="Talis+4"||@var=="Talis+6"||\ @var=="Talis+7") endfunc func cfn3 caption = "Talis+ Function 3" default = conj() visible = (@var=="Talis+3"||@var=="Talis+5"||@var=="Talis+6"||\ @var=="Talis+7") endfunc complex param prc1 caption = "Talis+ P1 Offset" default = 0 visible = (@var=="Talis+1"||@var=="Talis+4"||@var=="Talis+5"||\ @var=="Talis+7") endparam complex param prc1a caption = "Talis+ P1 Strength" default = (1,0) visible = (@var=="Talis+1"||@var=="Talis+4"||@var=="Talis+5"||\ @var=="Talis+7") endparam complex param prc1b caption = "Talis+ P1 Power" default = (1,0) visible = (@var=="Talis+1"||@var=="Talis+4"||@var=="Talis+5"||\ @var=="Talis+7") endparam complex param prc2 caption = "Talis+ P2 Offset" default = 0 visible = (@var=="Talis+2"||@var=="Talis+4"||@var=="Talis+6"||\ @var=="Talis+7") endparam complex param prc2a caption = "Talis+ P2 Strength" default = (1,0) visible = (@var=="Talis+2"||@var=="Talis+4"||@var=="Talis+6"||\ @var=="Talis+7") endparam complex param prc2b caption = "Talis+ P2 Power" default = (1,0) visible = (@var=="Talis+2"||@var=="Talis+4"||@var=="Talis+6"||\ @var=="Talis+7") endparam complex param prc3 caption = "Talis+ P3 Offset" default = 0 visible = (@var=="Talis+3"||@var=="Talis+5"||@var=="Talis+6"||\ @var=="Talis+7") endparam complex param prc3a caption = "Talis+ P3 Strength" default = (1,0) visible = (@var=="Talis+3"||@var=="Talis+5"||@var=="Talis+6"||\ @var=="Talis+7") endparam complex param prc3b caption = "Talis+ P3 Power" default = (1,0) visible = (@var=="Talis+3"||@var=="Talis+5"||@var=="Talis+6"||\ @var=="Talis+7") endparam param version caption = "Version" default = 1.4 visible = false endparam Switch: type = "Talis&Friends" startseed = pixel fnz = @fnz fnc = @fnc fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 p1 = @p1 p2 = @p2 p3 = @p3 p1a = @p1a p2a = @p2a p3a = @p3a zg = @zg ezg = @ezg cg = @cg ecg = @ecg cmg = @cmg addz = @addz muz = @muz muz1 = @muz1 exz = @exz exz1 = @exz1 bailout = @bailout mode=@switchmode switchmode=@mode center=@swcenter scale=@swscale type = @type select = @select zprime = @zprime fnreal = @fnreal fnimag = @fnimag realz = @realz imagz = @imagz test = @test bailfunc = @bailfunc selform = @selform zsplit = @zsplit paddz = @paddz pmuz = @pmuz pexz = @pexz var = @var version = @version cfunc = @cfunc pc1 = @pc1 pc2 = @pc2 pc3 = @pc3 cfn1 = @cfn1 cfn2 = @cfn2 cfn3 = @cfn3 prc1 = @prc1 prc2 = @prc2 prc3 = @prc3 prc1a = @prc1a prc2a = @prc2a prc3a = @prc3a prc1b= @prc1b prc2b = @prc2b prc3b = @prc3b } *********************************************************************** lambdaChops { ; Here is a variant of the lambda formula which gives (in default ; mode) a single spiral with truncated elements. ; ; Toby Marshall ; v1.0 July 2006 Init: z = @startseed c = pixel if @mode == "Mandelbrot" z = @startseed c = #pixel elseif @mode == "Julia" z = #pixel c = @startseed endif if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif Loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif z = @fn1(@fn2(z^2))*@fn3(c-@p1) Bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) Default: title = "Lambda Chops" maxiter = 500 periodicity = 0 method = multipass float param version caption = "Version" default = 1.0 visible = false endparam Heading caption = "Switch Parameters" visible = @show Endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam Heading caption = "Initial Section" Endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 0 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) endparam complex param ezg caption = "Z Param 2" default = (1,0) endparam complex param addz caption = "Z Param 3" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param muz caption = "Z Strength re" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param muz1 caption = "Z Strength im" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param exz caption = "Z Power re" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param exz1 caption = "Z Power im" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param cg caption = "C Param 1" default = (0,0) visible = @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc Heading caption = "Formula Parameters" Endheading complex param startseed caption = "Start/Seed" default = (1,0) hint = "Defines the Init Z value for the Mandelbrot, \ seed value for the Julia." endparam param bailout caption = "Bailout" default = 100 endparam param test caption = "Bailout Test" default = 0 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc func fn1 caption = "1st Function" default = sqrt () endfunc func fn2 caption = "2nd Z Function" default = ident () endfunc func fn3 caption = "C Function" default = ident () endfunc complex param p1 caption = "C Offset" default = (0,0) endparam Switch: type = "lambdaChops" startseed = pixel fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 select = @select p1 = @p1 zg = @zg ezg = @ezg cg = @cg ecg = @ecg cmg = @cmg addz = @addz muz = @muz muz1 = @muz1 exz = @exz exz1 = @exz1 bailout = @bailout bailfunc = @bailfunc test = @test mode=@switchmode switchmode=@mode center=@swcenter scale=@swscale fnz = @fnz fnc = @fnc } ***************************************************************** Mandelglot { ; Here is a fun, if gimmicky, little Mandelbrot variation that allows ; you to change a function and some params applied to the iterating ; variable Z at a given real and imaginary threshold values of Z. ; I decided to call it "Mandelglot" -- as in polyglot -- because it can ; create a confusing mess, but it can yield some intersting results as well. ; ; Toby Marshall, v 1.0, Sept 2006 init: complex imagz = @imagz*(0,1) z = @startseed c = #pixel if @mode == "Mandelbrot" z = @startseed c = #pixel elseif @mode == "Julia" z = #pixel c = @startseed endif if @scale != 1.0 z = z / @scale endif if @center != (0.0,0.0) z = z + @center endif loop: if @type == false if @zprime == 0 z = real(@fnreal(z-@realz))+flip(imag(@fnimag(z-imagz))) elseif @zprime == 1 z = real(@fnreal(z-@realz))-flip(imag(@fnimag(z-imagz))) elseif @zprime == 2 z = flip(imag(@fnimag(z-imagz)))-real(@fnreal(z-@realz)) endif else if @zprime == 0 z = @fnreal(real(z-@realz))+@fnimag(flip(imag(z-imagz))) elseif @zprime == 1 z = @fnreal(real(z-@realz))-@fnimag(flip(imag(z-imagz))) elseif @zprime == 2 z = @fnimag(flip(imag(z-imagz)))-@fnreal(real(z-@realz)) endif endif ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+((real(z+@addz)*@muz)^@exz+(imag(z+@addz)*@muz1)^@exz1) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif c = @cfunc(((c-@pc1)*@pc2)^@pc3) if @order if real(z) > @break z = @fn1(((z-@z1a)*@z1b)^@z1c) else z = @fn2(((z-@z2a)*@z2b)^@z2c) endif if imag(z) > @break2 z = @fn3(((z-@z3a)*@z3b)^@z3c) else z = @fn4(((z-@z4a)*@z4b)^@z4c) endif else if imag(z) > @break2 z = @fn3(((z-@z3a)*@z3b)^@z3c) else z = @fn4(((z-@z4a)*@z4b)^@z4c) endif if real(z) > @break z = @fn1(((z-@z1a)*@z1b)^@z1c) else z = @fn2(((z-@z2a)*@z2b)^@z2c) endif endif z = z^@power + c bailout: (@test == 0 && |z| <= @bailout) || \ (@test == 1 && sqr(real(z)) <= @bailout) || \ (@test == 2 && sqr(imag(z)) <= @bailout) || \ (@test == 3 && (sqr(real(z)) <= @bailout && sqr(imag(z)) < @bailout)) || \ (@test == 4 && (sqr(real(z)) <= @bailout || sqr(imag(z)) < @bailout)) || \ (@test == 5 && (sqr(abs(real(z)) + abs(imag(z))) <= @bailout)) || \ (@test == 6 && (sqr(real(z) + imag(z)) <= @bailout)|| \ (@test == 7 && real(@bailfunc(z)) <= @bailout)) default: title = "Mandelglot" periodicity = 0 param version caption = "Version" default = 1.0 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam Heading caption = "Initial Section" Endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 0 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) endparam complex param ezg caption = "Z Param 2" default = (1,0) endparam complex param addz caption = "Z Param 3" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param muz caption = "Z Strength re" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param muz1 caption = "Z Strength im" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param exz caption = "Z Power re" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param exz1 caption = "Z Power im" default = (1.0,0.0) visible = (@select == 22)||(@select == 23)||(@select == 24)||\ (@select == 25)||(@select == 26)|| (@select == 27)||\ (@select == 28)||(@select == 29)||(@select == 30)|| \ (@select == 31) endparam complex param cg caption = "C Param 1" default = (0,0) visible = @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc int param zprime caption = "Change Operator" enum = "Normal""Var 1""Var 2" default = 0 endparam func fnreal caption = "Real Function" default = ident() endfunc func fnimag caption = "Imag Function" default = ident() endfunc bool param type caption = "Change R/I Fn Flavor" default = false hint = "Effective only with certain Real and Imag Function choices" endparam float param realz caption = "Real Offset" default = 0 endparam float param imagz caption = "Imag Offset" default = 0 endparam heading caption = "Formula Parameters" endheading complex param startseed caption = "Start/Seed" default = (0,0) hint = "Defines the Init Z value for the Mandelbrot, \ seed value for the Julia." endparam param power caption = "Power" default = (2,0) hint = "This defines the power of the Mandelbrot set. Use (2,0) \ for the standard Mandelbrot set." endparam float param bailout caption = "Bailout value" default = 4.0 min = 0 hint = "Defines how soon an orbit bails out, i.e. doesn't belong \ to the Mandelbrot set anymore." endparam param test caption = "Bailout Test" default = 0 enum = "mod" "real" "imag" "or" "and" "manh" "manr""function(z)" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@test == 7) endfunc bool param order caption = "Change Re/Im Order" default = false endparam heading caption = "Real Parameters" endheading float param break caption = "Real Threshold" default = 0 endparam complex param z1a caption = "Real A Offset" default = (0,0) endparam complex param z1b caption = "Real A Strength" default = (1,0) endparam complex param z1c caption = "Real A Power" default = (1,0) endparam complex param z2a caption = "Real B Offset" default = (0,0) endparam complex param z2b caption = "Real B Strength" default = (1,0) endparam complex param z2c caption = "Real B Power" default = (1,0) endparam func fn1 caption = "Real Fn A" default = ident() endfunc func fn2 caption = "Real Fn B" default = ident() endfunc heading caption = "Imaginary Parameters" endheading float param break2 caption = "Imag Threshold" default = 0 endparam complex param z3a caption = "Imag A Offset" default = (0,0) endparam complex param z3b caption = "Imag A Strength" default = (1,0) endparam complex param z3c caption = "Imag A Power" default = (1,0) endparam complex param z4a caption = "Imag B Offset" default = (0,0) endparam complex param z4b caption = "Imag B Strength" default = (1,0) endparam complex param z4c caption = "Imag B Power" default = (1,0) endparam func fn3 caption = "Imag Fn A" default = ident() endfunc func fn4 caption = "Imag Fn B" default = ident() endfunc heading caption = "Pixel Parameters" endheading complex param pc1 caption = "Pixel Offset" default = (0,0) endparam complex param pc2 caption = "Pixel Strength" default = (1,0) endparam complex param pc3 caption = "Pixel Power" default = (1,0) endparam func cfunc caption = "Pixel Fn" default = ident() endfunc switch: type = "Mandelglot" startseed = #pixel power = power bailout = bailout fn1 = @fn1 fn2 = @fn2 z1a = @z1a z1b = @z1b z1c = @z1c z2a = @z2a z2b = @z2b z2c = @z2c break = @break fn3 = @fn3 fn4 = @fn4 z3a = @z3a z3b = @z3b z3c = @z3c z4a = @z4a z4b = @z4b z4c = @z4c break2 = @break2 mode = @switchmode switchmode = @mode center = @swcenter scale = @swscale fnz = @fnz fnc = @fnc zg = @zg ezg = @ezg cg = @cg ecg = @ecg cmg = @cmg addz = @addz muz = @muz muz1 = @muz1 exz = @exz exz1 = @exz1 type = @type select = @select zprime = @zprime fnreal = @fnreal fnimag = @fnimag realz = @realz imagz = @imagz test = @test bailfunc = @bailfunc pc1 = @pc1 pc2 = @pc2 pc3 = @pc3 cfunc = @cfunc } ; ********************************************************* spiroglyphics { ; This formula processes various fractal loop types (Mandelbrot, ; Lambda, Phoenix, Talis and my Lambda variant at this point) through ; the Glyph algorithm by Sam Monnier or a modified Vine algorithm ; after Mark Townsend's original. Those distort the fractal elements ; in various (hopefully interesting) ways progressively as the ; "Intensity" parameters are increased. Use the other Glyph ; modifiers to change the effects. Because these modifiers also ; change the value of Z you will find that all of these parameters ; and functions change the nature of the spirals or fractal ; structures to some degree as well as distorting them. ; HINTS and TIPS ; All of the fractal types are slighty "askew", but generally ; not noticeably so with the default intensity settings. Set ; all intensity settings to 0 for clean loops, but note that if ; you do this "Toby's Lambda" will give a black screen in ; Mandelbrot mode, although you can still use the switch to ; find a Julia. ; ; The "Intensity" and "Step Size" params can either be varied ; as individual X and Y components or together, depending on ; whether the param "Intensity Mode" is set to "Separate" or ; "Ganged". The former gives finer control, while the latter ; allows even variation in both axes without having to ; set the two params separately to the same value. ; ; Only a few params are operative if the "Intensity" param(s) ; are set to 0. These are hidden automatically if they are ; inactive. Very low intensity settings limit the effect ; of these other parameters. ; ; "Flavor" determines the intensity of certain effects. Set it ; to 0 to eliminate those distortions completely. This is an ; integer param which moves in steps. Generally the steps ; diminish or disappear at higher values ; ; ; I wish to dedicate this formula to Terry Wright and ; Tim Hodkinson, whose unrelenting attacks on UF and ; its users somehow gave me the energy to get in here ; and try to offset their negativity with something ; interesting and useful. Thanks guys, now your names ; will be forever associated with Ultrafractal...;^}) ; ; Many thanks to Sam Monnier and Mark Townsend for their ; algorithms, Damien M. Jones for permission to use the ; Phoenix and Lambda loops, and Frederik Slijkerman for ; his bailout test code. ; ; I wish you all good fun and exuberant creative joy. ; ; Toby Marshall, v 1.0, 2008,02.22 ; v1.1, 2008.03.04 -- Added "Talis 2" loop ; v1.2 2008.03.10 -- Code optimized. Big thanks ; to Jim Blue for his suggestions ; and help with this! global: int c1 = 1 int c2 = 1 int c3 = 1 int c4 = 1 IF @op1 == "++++" c1=+1, c2=+1, c3=+1, c4=+1 ELSEIF @op1 == "+++-" c1=+1, c2=+1, c3=+1, c4=-1 ELSEIF @op1 == "++-+" c1=+1, c2=+1, c3=-1, c4=+1 ELSEIF @op1 == "+-++" c1=+1, c2=-1, c3=+1, c4=+1 ELSEIF @op1 == "-+++" c1=-1, c2=+1, c3=+1, c4=+1 ELSEIF @op1 == "++--" c1=+1, c2=+1, c3=-1, c4=-1 ELSEIF @op1 == "+--+" c1=+1, c2=-1, c3=-1, c4=+1 ELSEIF @op1 == "--++" c1=-1, c2=-1, c3=+1, c4=+1 ELSEIF @op1 == "-++-" c1=-1, c2=+1, c3=+1, c4=-1 ELSEIF @op1 == "+-+-" c1=+1, c2=-1, c3=+1, c4=-1 ELSEIF @op1 == "-+-+" c1=-1, c2=+1, c3=-1, c4=+1 ELSEIF @op1 == "+---" c1=+1, c2=-1, c3=-1, c4=+1 ELSEIF @op1 == "-+--" c1=-1, c2=+1, c3=-1, c4=-1 ELSEIF @op1 == "--+-" c1=-1, c2=-1, c3=+1, c4=-1 ELSEIF @op1 == "---+" c1=-1, c2=-1, c3=-1, c4=+1 ELSEIF @op1 == "----" c1=-1, c2=-1, c3=-1, c4=-1 ENDIF int d1 = 1 int d2 = 1 int d3 = 1 int d4 = 1 IF @op2 == "++++" d1=+1, d2=+1, d3=+1, d4=+1 ELSEIF @op2 == "+++-" d1=+1, d2=+1, d3=+1, d4=-1 ELSEIF @op2 == "++-+" d1=+1, d2=+1, d3=-1, d4=+1 ELSEIF @op2 == "+-++" d1=+1, d2=-1, d3=+1, d4=+1 ELSEIF @op2 == "-+++" d1=-1, d2=+1, d3=+1, d4=+1 ELSEIF @op2 == "++--" d1=+1, d2=+1, d3=-1, d4=-1 ELSEIF @op2 == "+--+" d1=+1, d2=-1, d3=-1, d4=+1 ELSEIF @op2 == "--++" d1=-1, d2=-1, d3=+1, d4=+1 ELSEIF @op2 == "-++-" d1=-1, d2=+1, d3=+1, d4=-1 ELSEIF @op2 == "+-+-" d1=+1, d2=-1, d3=+1, d4=-1 ELSEIF @op2 == "-+-+" d1=-1, d2=+1, d3=-1, d4=+1 ELSEIF @op2 == "+---" d1=+1, d2=-1, d3=-1, d4=+1 ELSEIF @op2 == "-+--" d1=-1, d2=+1, d3=-1, d4=-1 ELSEIF @op2 == "--+-" d1=-1, d2=-1, d3=+1, d4=-1 ELSEIF @op2 == "---+" d1=-1, d2=-1, d3=-1, d4=+1 ELSEIF @op2 == "----" d1=-1, d2=-1, d3=-1, d4=-1 ENDIF init: z = @startseed c = pixel if @mode == "Mandelbrot" if @looptype == "Classic Lambda" z = @startseed + (0.5,0) else z = @startseed endif c = #pixel endif if @mode == "Julia" z = pixel c = @startseed if @scale != 1.0 z = z/@scale endif if @center != (0.0,0.0) z = z+@center endif endif x = 0 y = 0 newx = 0 newy = 0 int iter = 0 int i = 0 complex newz = 0 complex aa = 0 loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnz(z-@zg)*@ezg elseif @select == "z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnz(z-@zg)*@ezg/@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg + @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg - @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnc((c-@cg)*@cmg)^@ecg - @fnz(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg * @fnc((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnz(z-@zg)*@ezg*@fnc((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnz(z-@zg)*@ezg / @fnc((c-@cg)*@cmg)^@ecg endif iter = iter + 1 x = real(@fnx(z)) + flip(real(@start/10)) y = imag(@fny(z)) + flip(imag(@start/10)) newx = y newy = x i = 0 IF @chain == "Separate" while i < @flavor i = i + 1 newx = y + c1*real(@h2a/10)*@fn1(@a1 * newx) + \ c2*imag(@h2a/10)*@fn3(@a2 * newx) newy = x + c3*real(@h2b/10)*@fn2(@a3 * newy) + \ c4 *imag(@h2b/10)*@fn4(@a4 * newy) endwhile x = x + d1*real(@h1a/10)*@fn5(newx) + d2*imag(@h1a/10)*@fn7(newx) y = y + d3*real(@h1b/10)*@fn6(newy) + d4*imag(@h1b/10)*@fn8(newy) ELSEIF @chain == "Ganged" while i < @flavor i = i + 1 newx = y + c1*real(@h2/10)*@fn1(@a1 * newx) + \ c2*imag(@h2/10)*@fn3(@a2 * newx) newy = x + c3*real(@h2/10)*@fn2(@a3 * newy) + \ c4*imag(@h2/10)*@fn4(@a4 * newy) endwhile x = x + d1*real(@h1/10)*@fn5(newx) + d2*imag(@h1/10)*@fn7(newx) y = y + d3*real(@h1/10)*@fn6(newy) + d4*imag(@h1/10)*@fn8(newy) z = x + flip(y) ENDIF IF @op == "x+y" z = @fna(x) + flip(@fnb(y)) ELSEIF @op == "x-y" z = @fna(x)- flip(@fnb(y)) ELSEIF @op == "y-x" z = flip(@fnb(y)) - @fna(x) ENDIF if @looptype == "Mandelbrot" z = @mandfn1(z-@mandpar1)^@mandpar2+(c-@mandpar3) elseif @looptype == "Toby's Lambda" z = @lamfn1(z-@lampar1)^@lampar2*(c-@lampar3) elseif @looptype == "Talis" z = @talisfn((z-@talispar1)^@talispar2)*z/(@talispar3+z)-@talisfn2(c) elseif @looptype == "Talis 2" z = @talisfn((z-@talispar1)^@talispar2)*z/(@talispar3+z)+@talisfn2(c) elseif @looptype == "Phoenix" newz = @phofn1(z-@phopar1)^@phopar2+@phofn2(z-@phopar3)^@phopar4*c \ +@phopar5*@phofn3(aa-@phopar6) aa = z z = newz elseif @looptype == "Classic Lambda" z = c*@clamfn(z-@clampar1)*(@clampar2-z)^(@clampar3-1) endif bailout: (@bailtype == 0 && iter <= @bail) || \ (@bailtype == 1 && (iter <= @bail && |z| <= @bail)) || \ (@bailtype == 2 && |z| <= @bail) || \ (@bailtype == 3 && sqr(real(z)) <= @bail) || \ (@bailtype == 4 && sqr(imag(z)) <= @bail) || \ (@bailtype == 5 && (sqr(real(z)) <= @bail && sqr(imag(z)) < @bail)) || \ (@bailtype == 6 && (sqr(real(z)) <= @bail || sqr(imag(z)) < @bail)) || \ (@bailtype == 7 && (sqr(abs(real(z)) + abs(imag(z))) <= @bail)) || \ (@bailtype == 8 && (sqr(real(z) + imag(z)) <= @bail)|| \ (@bailtype == 9 && real(@bailfunc(z)) <= @bail)) default: title = "Spiroglyphics" param version caption = "Version" default = 1.0 visible = false endparam Heading caption = "Switch Parameters" visible = @show Endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam heading caption = "Initial Section" endheading param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 0 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) endparam complex param ezg caption = "Z Param 2" default = (1,0) endparam complex param cg caption = "C Param 1" default = (0,0) visible = @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @select != 0 endparam func fnz caption = "Global Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fnc caption = "Global C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc heading caption = "Loop Parameters and Functions" endheading int param looptype caption = "Loop" enum = "Mandelbrot""Toby's Lambda""Talis""Talis 2""Phoenix""Classic Lambda" default = 0 endparam complex param startseed caption = "Start/Seed" default = (0,0) hint = "Defines the Init Z value for the Mandelbrot, \ seed value for the Julia." endparam int param bail caption = "Bailout" default = 20 endparam int param bailtype caption = "Bailout flavor" enum = "Iter""Iter + Mod(Z)""Mod(Z)""Real(Z)" "Mag(Z)""Or" "And"\ "Manh""Manh""Function(Z)" default = 2 hint = "Defines the method by which the bailout is accomplished" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@bailtype == 9) endfunc complex param mandpar1 caption = "Mandel Offset" default = (0,0) visible = @looptype == 0 endparam complex param mandpar2 caption = "Mandel Exponent" default = (2,0) visible = @looptype == 0 endparam complex param mandpar3 caption = "Pixel Offset" default = (0,0) visible = @looptype == 0 endparam func mandfn1 caption = "Mandel Fn" default = ident () visible = @looptype == 0 endfunc complex param lampar1 caption = "Lambda Offset" default = (0,0) visible = @looptype == 1 endparam complex param lampar2 caption = "Lambda Exponent" default = (1,0) visible = @looptype == 1 endparam complex param lampar3 caption = "Pixel Offset" default = (0,0) visible = @looptype == 1 endparam func lamfn1 caption = "Lambda Fn" default = ident () visible = @looptype == 1 endfunc complex param talispar1 caption = "Talis Offset" default = (0,0) visible = @looptype == 2 || @looptype == 3 endparam complex param talispar2 caption = "Talis Exponent" default = (1,0) visible = @looptype == 2 || @looptype == 3 endparam complex param talispar3 caption = "Talis Parameter" default = (1,0) visible = @looptype == 2 || @looptype == 3 endparam func talisfn caption = "Talis Fn" default = ident () visible = @looptype == 2 || @looptype == 3 endfunc func talisfn2 caption = "Talis Pixel Fn" default = ident () visible = @looptype == 2 || @looptype == 3 endfunc complex param phopar1 caption = "Phoenix Offset I" default = (0,0) visible = @looptype == 4 endparam complex param phopar2 caption = "Phoenix Exponent I" default = (2,0) visible = @looptype == 4 endparam complex param phopar3 caption = "Phoenix Offset II" default = (0,0) visible = @looptype == 4 && @phopar4 != (0,0) endparam complex param phopar4 caption = "Phoenix Exponent II" default = (0,0) visible = @looptype == 4 endparam complex param phopar5 caption = "Phoenix Distortion" default = (.5,0) visible = @looptype == 4 endparam complex param phopar6 caption = "Phoenix Offset III" default = (0,0) visible = @looptype == 4 endparam func phofn1 caption = "Phoenix Fn I" default = ident () visible = @looptype == 4 endfunc func phofn2 caption = "Phoenix Fn II" default = ident () visible = @looptype == 4 && @phopar4 != (0,0) endfunc func phofn3 caption = "Phoenix Fn III" default = ident () visible = @looptype == 4 endfunc complex param clampar1 caption = "Lambda Offset I" default = (0,0) visible = @looptype == 5 endparam complex param clampar2 caption = "Lambda Param" default = (1,0) visible = @looptype == 5 endparam complex param clampar3 caption = "Lambda Exponent" default = (2,0) visible = @looptype == 5 endparam func clamfn caption = "Lambda Fn" default = ident () visible = @looptype == 5 endfunc heading caption = "Glyph Distortion Modifiers" endheading int param chain caption = "Intensity Mode" enum = "Separate""Ganged" default = 0 hint = "Choose whether X/Y intensity and step sizes vary together \ or separately" endparam complex param h1a caption = "Intensity X" default = (.1,.1) visible = @chain == 0 endparam complex param h1b caption = "Intensity Y" default = (.1,.1) visible = @chain == 0 endparam complex param h2a caption = "Step Size X" default = (.8,.8) visible = @chain == 0 && (@h1a != (0,0) || @h1b != (0,0)) endparam complex param h2b caption = "Step Size Y" default = (.8,.8) visible = @chain == 0 && (@h1a != (0,0) || @h1b != (0,0)) endparam complex param h1 caption = "Intensity X/Y" default = (.1, .1) visible = @chain == 1 endparam complex param h2 caption = "Step Size X/Y" default = (.8,.8) visible = @chain == 1 && @h1 != (0,0) endparam complex param start caption = "Glyph Start" default = (0,0) endparam int param flavor caption = "Flavor" default = 2 min = 0 hint = "This is an integer param which works in steps. Higher \ numbers generally create more intense effects" visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endparam float param a1 caption = "Alpha 1" default = 2.7 visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endparam float param a2 caption = "Alpha 2" default = 2.7 visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endparam float param a3 caption = "Alpha 3" default = 2.7 visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endparam float param a4 caption = "Alpha 4" default = 2.7 visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endparam param op caption = "Main Operator" enum = "x+y""x-y""y-x" default = 0 endparam param op1 caption = "Operator 1" enum = "++++""+++-""++-+""+-++""-+++""++--""+--+""--++" \ "-++-""+-+-""-+-+""+---""-+--""--+-""---+""----" default = 0 visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endparam param op2 caption = "Operator 2" enum = "++++""+++-""++-+""+-++""-+++""++--""+--+""--++" \ "-++-""+-+-""-+-+""+---""-+--""--+-""---+""----" default = 7 visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endparam func fn1 caption = "Function 1" default = sin() visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endfunc func fn2 caption = "Function 2" default = sin() visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endfunc func fn3 caption = "Function 3" default = cos() visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endfunc func fn4 caption = "Function 4" default = cos() visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endfunc func fn5 caption = "Function 5" default = sin() visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endfunc func fn6 caption = "Function 6" default = sin() visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endfunc func fn7 caption = "Function 7" default = cos() visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endfunc func fn8 caption = "Function 8" default = cos() visible = (@chain == 0 && @h1a != (0,0) || @h1b != (0,0) ) || \ (@chain == 1 && @h1 != (0,0)) endfunc func fna caption = "Initial X Fn" default = ident() endfunc func fnb caption = "Initial Y Fn" default = ident() endfunc func fnx caption = "Global X Fn" default = ident() endfunc func fny caption = "Global Y Fn" default = ident() endfunc switch: type = "spiroglyphics" startseed = #pixel start = @start flavor = @flavor fnz = @fnz fnc = @fnc fnx = @fnx fny = @fny a1 = @a1 a2 = @a2 a3 = @a3 a4 = @a4 h1a = @h1a h2a = @h2a h1b = @h1b h2b = @h2b h1 = @h1 h2 = @h2 op = @op op1 = @op1 op2 = @op2 fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn5 = @fn5 fn6 = @fn6 fn7 = @fn7 fn8 = @fn8 fna = @fna fnb = @fnb zg = @zg ezg = @ezg cg = @cg ecg = @ecg cmg = @cmg talispar1 = @talispar1 talispar2 = @talispar2 talispar3 = @talispar3 talisfn = @talisfn talisfn2 = @talisfn2 bail = @bail bailtype = @bailtype bailfunc = @bailfunc looptype = @looptype mode = @switchmode switchmode = @mode center = @swcenter scale = @swscale mandpar1 = @mandpar1 mandpar2 = @mandpar2 mandpar3 = @mandpar3 mandfn1 = @mandfn1 lampar1 = @lampar1 lampar2 = @lampar2 lampar3 = @lampar3 lamfn1 = @lamfn1 phopar1 = @phopar1 phopar2 = @phopar2 phopar3 = @phopar3 phopar4 = @phopar4 phopar5 = @phopar5 phopar6 = @phopar6 phofn1 = @phofn1 phofn2 = @phofn2 phofn3 = @phofn3 clampar1 = @clampar1 clampar2 = @clampar2 clampar3 = @clampar3 clamfn = @clamfn select = @select } PlasticFantastic { ; ; This formula is similar to "Spiroglyphics" in construction, ; in that it processes the Z variable of some classic fractal ; loops through various algorithms such as Sam Monnier's "Vine", ; Gnarl, etc. This version, however, extends those options much ; further, with more algorithm choices, more variables per ; algorithm, and the ability to engage two algorithms at the same ; time--either blending them or modulating them in various ways. ; ; The algorithm code section is identical to those in the ; coloring "Naru's Gnarly Potpourri" and the formula "Mandy ; Mix'n'Match". When employed in the latter, and this present ; formula, that code does not produce the patterns ; characteristic of those algorithms in standard colorings, but ; rather distorts the standard structures characteristic of the ; fractal loops in various ways. ; ; To disable all these effects set "# of Formula Iters" to 0 ; ; Please check tma.txt for the section on "Naru's Gnarly ; Potpourri" to understand a bit more about how this is ; constructed. ; ; Tip: "# of Formula Iters" is a very important parameter, ; affecting very strongly the look and the rendering time ; of this formula. ; Many parameters and functions have individual hints. Check ; them as you go. ; ; Tip: Check the switch functions in the init section for ; interesting shapes--especially the "Switch Pixel Func"-- ; when using the switch. Thanks to Andreas Lober for the idea ; of adding functions to the switch! ; ; 04 nov. 2008 Toby Marshall ; ver 1.0 init: complex c = (0,0) if @mode == "Mandelbrot" z = @ssfn(@startseed) c = @pixfn(#pixel) elseif @mode == "Julia" z = @pixfn(#pixel) c = @ssfn(@startseed) endif if @sscale != 1.0 z = z / @sscale endif if @center != (0.0,0.0) z = z + @center endif float x = 0 float y = 0 float xx = 0 int j = 0 int i = 0 int iter = 0 complex tz = 0 float v = 0 float w = 0 float qa = 0 float qb = 0 float qc = 0 float qc = 0 float mv1 = 0 float mv2 = 0 float mv3 = 0 float vv1 = 0 float vv2 = 0 float vv3 = 0 float vv4 = 0 float vv5 = 0 float vv6 = 0 float vv7 = 0 float vv8 = 0 float glv1 = 0 float glv2 = 0 float glv3 = 0 float glv4 = 0 float glv5 = 0 float glv6 = 0 float glv7 = 0 float glv8 = 0 float glv9 = 0 float glv10 = 0 float glv11 = 0 float glv12 = 0 float gn1 = 0 float gn2 = 0 float gn3 = 0 float gn4 = 0 float gn5 = 0 float gn6 = 0 float gn7 = 0 float gn8 = 0 float newx = 0 float newy = 0 int seed = 0 seed = random(@randomseed) float vQ = 0 float wQ = 0 float qaQ = 0 float qbQ = 0 float qcQ = 0 float qcQ = 0 float mv1Q = 0 float mv2Q = 0 float mv3Q = 0 float vv1Q = 0 float vv2Q = 0 float vv3Q = 0 float vv4Q = 0 float vv5Q = 0 float vv6Q = 0 float vv7Q = 0 float vv8Q = 0 float glv1Q = 0 float glv2Q = 0 float glv3Q = 0 float glv4Q = 0 float glv5Q = 0 float glv6Q = 0 float glv7Q = 0 float glv8Q = 0 float glv9Q = 0 float glv10Q = 0 float glv11Q = 0 float glv12Q = 0 float gn1Q = 0 float gn2Q = 0 float gn3Q = 0 float gn4Q = 0 float gn5Q = 0 float gn6Q = 0 float gn7Q = 0 float gn8Q = 0 complex aa = 0 loop: ; Select the global definition of Z if @select == "z"; select variable type z = @fnzInit(z-@zg)*@ezg elseif @select == "z+c" z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z-c" z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "c-z" z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z*c" z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z/c" z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z+c" z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z+c|c-z" z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z+c|z*c" z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z+c|z/c" z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z-c" z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z-c|c-z" z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z-c|z*c" z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z-c|z/c" z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z*c" z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "c-z|z/c" z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z*c|c-z" z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z*c|z*c" z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z+c" z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z/c|z-c" z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z/c|c-z" z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z/c|z/c" z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg z = @fnzInit(z-@zg)*@ezg / @fncInit(c-@cg)*@cmg^@ecg elseif @select == "z*c+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg/@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg/@fncInit((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) elseif @select == "z*c-+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z/c-+(Rz+Iz)" z = (@fnzInit(z-@zg)*@ezg/@fncInit((c-@cg)*@cmg)^@ecg)-(real(z)+imag(z)) z = (@fnzInit(z-@zg)*@ezg/@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) elseif @select == "z*c+(Rz+Iz)|z+c" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg + @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z-c" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg - @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|c-z" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fncInit((c-@cg)*@cmg)^@ecg - @fnzInit(z-@zg)*@ezg elseif @select == "z*c+(Rz+Iz)|z*c" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg * @fncInit((c-@cg)*@cmg)^@ecg elseif @select == "z*c+(Rz+Iz)|z/c" z = (@fnzInit(z-@zg)*@ezg*@fncInit((c-@cg)*@cmg)^@ecg)+(real(z)+imag(z)) z = @fnzInit(z-@zg)*@ezg / @fncInit((c-@cg)*@cmg)^@ecg endif iter = iter + 1 z = ((z) / @scale)-@offset1 z = @fnov2(@fnov1(z)^@pp2) seed = random(@randomseed) ; Iterate the Gnarly formulas i = 0 x = real(@fnx3(z)^@exr) * @scale2 y = imag(@fny3(z)) * @scale3 while i < @iters xx = x bool scenario1 = false ; Determine scenario to be used: if @seq == "Single" scenario1 = true elseif @seq == "Blend" seed = random(seed) if @blendFn == "abs" if abs(seed)/#randomrange < @prob1 scenario1 = true else scenario1 = false endif elseif @blendFn == "ident" if real(ident(seed))/#randomrange < @prob1 scenario1 = true else scenario1 = false endif elseif @blendFn == "exp (fixed value)" if real(exp(seed))/#randomrange < @prob1 scenario1 = true else scenario1 = false endif elseif @blendFn == "tan" if real(tan(seed))/#randomrange < @prob1 * .0000000001 scenario1 = true else scenario1 = false endif elseif @blendFn == "sin" if real(sin(seed))/#randomrange < @prob1 * .0000000001 scenario1 = true else scenario1 = false endif elseif @blendFn == "acos" if real(acos(seed))/#randomrange < @prob1 * .0000000001 scenario1 = true else scenario1 = false endif elseif @blendFn == "cos" if real(cos(seed))/#randomrange < @prob1 * .00000000001 scenario1 = true else scenario1 = false endif elseif @blendFn == "sinh (fixed value)" if real(sinh(seed))/#randomrange < @prob1 scenario1 = true else scenario1 = false endif elseif @blendFn == "cosh (fixed value)" if real(cosh(seed))/#randomrange < @prob1 scenario1 = true else scenario1 = false endif endif elseif @seq == "Modulated" if (iter % (@modBy+@modCmp) < @modCmp) scenario1 = true else scenario1 = false endif endif if(scenario1 == true) if @formula == "Martin" if @martV1 == true mv1 = x else mv1 = y endif if @martV2 == true mv2 = y else mv2 = x endif if @martV3 == true mv3 = y else mv3 = xx endif if @martFlav == true if @martOp == "1" x = cabs(@fnmy1((mv1-@my)*@mym)^@mye) - cabs(@martfn((mv2-@mx)*@mxm)^@mxe) y = @maa - cabs(@fnmx1((mv3-@mxx)*@mxxm)^@mxxe) elseif @martOp == "2" x = cabs(@fnmy1((mv1-@my)*@mym)^@mye) + cabs(@martfn((mv2-@mx)*@mxm)^@mxe) y = @maa - cabs(@fnmx1((mv3-@mxx)*@mxxm)^@mxxe) endif else if @martOp == "1" x = real(@fnmy1((mv1-@my)*@mym)^@mye) - real(@martfn((mv2-@mx)*@mxm)^@mxe) y = @maa - real(@fnmx1((mv3-@mxx)*@mxxm)^@mxxe) elseif @martOp == "2" x = real(@fnmy1((mv1-@my)*@mym)^@mye) + real(@martfn((mv2-@mx)*@mxm)^@mxe) y = @maa - real(@fnmx1((mv3-@mxx)*@mxxm)^@mxxe) endif endif elseif @formula == "Popcorn" if @funcPopType == true v = cabs(@fnpopx(x)*@popx) w = cabs(@fnpopy(y)*@popy) else v = real(@fnpopx(x)*@popx) w = real(@fnpopy(y)*@popy) endif if @v1 == true qa = ((xx-@pop1a)*@pop1b)^@pop1c else qa = ((y-@pop1a)*@pop1b)^@pop1c endif if @v2 == true qb = ((xx-@pop2a)*@pop2b)^@pop2c else qb = ((y-@pop2a)*@pop2b)^@pop2c endif if @v3 == true qc = ((y-@pop3a)*@pop3b)^@pop3c else qc = ((xx-@pop3a)*@pop3b)^@pop3c endif if @v4 == true qd = ((y-@pop4a)*@pop4b)^@pop4c else qd = ((xx-@pop4a)*@pop4b)^@pop4c endif if @popflavor1 == "1" if @popFlavor2 == "1" x = v - real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "2" x = v - real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "3" x = v + real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "4" x = v + real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) endif elseif @popflavor1 == "2" if @popFlavor2 == "1" x = v - real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "2" x = v - real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "3" x = v + real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "4" x = v + real(@h1 * @popfn1(qa + @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) endif elseif @popflavor1 == "3" if @popFlavor2 == "1" x = v - real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "2" x = v - real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "3" x = v + real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "4" x = v + real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc + @popfn4(imag(@popc) * qd))) endif elseif @popflavor1 == "4" if @popFlavor2 == "1" x = v - real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "2" x = v - real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "3" x = v + real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w - imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) elseif @popFlavor2 == "4" x = v + real(@h1 * @popfn1(qa - @popfn2(real(@popc) * qb))) y = w + imag(@h1 * @popfn3(qc - @popfn4(imag(@popc) * qd))) endif endif elseif @formula == "Vine" if @vinV1 == true vv1 = ((y-@v1a)*@v1b)^@v1c vv4 = ((x-@v4a)*@v4b)^@v4c else vv1 = ((x-@v1a)*@v1b)^@v1c vv4 = ((y-@v4a)*@v4b)^@v4c endif if @vinV2 == true vv2 = ((xx-@v2a)*@v2b)^@v2c else vv2 = ((y-@v2a)*@v2b)^@v2c endif if @vinV3 == true vv3 = ((xx-@v3a)*@v3b)^@v3c else vv3 = ((y-@v3a)*@v3b)^@v3c endif if @vinV5 == true vv5 = ((y-@v5a)*@v5b)^@v5c else vv5 = ((xx-@v5a)*@v5b)^@v5c endif if @vinV6 == true vv6 = ((y-@v6a)*@v6b)^@v6c else vv6 = ((xx-@v6a)*@v6b)^@v6c endif if @vinV7 == true vv7 = ((xx-@v7a)*@v7b)^@v7c else vv7 = ((y-@v7a)*@v7b)^@v7c endif if @vinV8 == true vv8 = ((y-@v8a)*@v8b)^@v8c else vv8 = ((xx-@v8a)*@v8b)^@v8c endif if @vinOp1 == "1" if @vinFlavor == true if @flavor == 0 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = cabs(@vinfn7(y)) float newy = cabs(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3c == "1" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "2" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3c == "3" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "4" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2c == "1" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "2" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "3" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "4" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) endif endif else if @flavor == 0 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = real(@vinfn7(y)) float newy = real(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3r == "1" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "2" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3r == "3" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "4" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2r == "1" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "2" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "3" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "4" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) endif endif endif elseif @vinOp1 == "2" if @vinFlavor == true if @flavor == 0 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = cabs(@vinfnx1(vv1)) - @h2r * cabs(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = cabs(@vinfn7(y)) float newy = cabs(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3c == "1" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "2" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3c == "3" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "4" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2c == "1" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "2" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "3" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "4" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) endif endif else if @flavor == 0 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = real(@vinfnx1(vv1)) - @h2r * real(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = real(@vinfn7(y)) float newy = real(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3r == "1" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "2" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3r == "3" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "4" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2r == "1" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "2" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "3" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "4" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) endif endif endif elseif @vinOp1 == "3" if @vinFlavor == true if @flavor == 0 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = cabs(@vinfny1(vv4)) - @h2i * cabs(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = cabs(@vinfn7(y)) float newy = cabs(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3c == "1" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "2" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3c == "3" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "4" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2c == "1" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "2" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "3" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "4" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) endif endif else if @flavor == 0 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = real(@vinfny1(vv4)) - @h2i * real(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = real(@vinfn7(y)) float newy = real(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3r == "1" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "2" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3r == "3" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "4" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2r == "1" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "2" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "3" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "4" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) endif endif endif elseif @vinOp1 == "4" if @vinFlavor == true if @flavor == 0 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = cabs(@vinfnx1(vv1)) + @h2r * cabs(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = cabs(@vinfny1(vv4)) + @h2i * cabs(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = cabs(@vinfn7(y)) float newy = cabs(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3c == "1" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "2" newx = cabs(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3c == "3" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3c == "4" newx = cabs(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = cabs(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2c == "1" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "2" x = cabs(@vinfnx2(x)) - @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "3" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) - @h3i * cabs(@vinfn10(newy)) elseif @vinOp2c == "4" x = cabs(@vinfnx2(x)) + @h3r * cabs(@vinfn9(newx)) y = cabs(@vinfny2(y)) + @h3i * cabs(@vinfn10(newy)) endif endif else if @flavor == 0 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2 + @vinfn3 \ (@va * vv3 ))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5 + @vinfn4 \ (@va * vv6))) elseif @flavor == 1 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2^@vb + @vinfn3 \ (@va * vv3))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5^@vb + @vinfn4 \ (@va * vv6))) elseif @flavor == 2 x = real(@vinfnx1(vv1)) + @h2r * real(@vinfn1(vv2 + @vinfn3(@va * \ (vv3 + @vinfn5(@va * vv7))))) y = real(@vinfny1(vv4)) + @h2i * real(@vinfn2(vv5 + @vinfn4(@va * \ (vv6 + @vinfn6(@va * vv8))))) else float newx = real(@vinfn7(y)) float newy = real(@vinfn8(x)) int j = 0 while j < @flavor j = j + 1 if @vinOp3r == "1" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "2" newx = real(@vinfny1(y)) + real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) elseif @vinOp3r == "3" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) + real(@vinfn11(@va * newy)) elseif @vinOp3r == "4" newx = real(@vinfny1(y)) - real(@vinfn11(@va * newx)) newy = real(@vinfnx1(x)) - real(@vinfn11(@va * newy)) endif endwhile if @vinOp2r == "1" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "2" x = real(@vinfnx2(x)) - @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "3" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) - @h3i * real(@vinfn10(newy)) elseif @vinOp2r == "4" x = real(@vinfnx2(x)) + @h3r * real(@vinfn9(newx)) y = real(@vinfny2(y)) + @h3i * real(@vinfn10(newy)) endif endif endif endif elseif @formula == "Glyph" if @glyphFlavor1 == true float newx = cabs(@glyfn11(y)) float newy = cabs(@glyfn12(x)) int j = 0 while j < @flavor j = j + 1 if @glv1 == "y" ; glv1 = ((y-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "x" glv1 = ((x-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "newy" glv1 = ((newy-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "newx" glv1 = ((newx-@gly1a)*@gly1b)^@gly1c endif if @glv2 == "y" glv2 = ((y-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "x" glv2 = ((x-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "newy" glv2 = ((newy-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "newx"; glv2 = ((newx-@gly2a)*@gly2b)^@gly2c endif if @glv3 == "y" glv3 = ((y-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "x" glv3 = ((x-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "newy" glv3 = ((newy-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "newx"; glv3 = ((newx-@gly3a)*@gly3b)^@gly3c endif if @glv4 == "y" glv4 = ((y-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "x"; glv4 = ((x-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "newy" glv4 = ((newy-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "newx" glv4 = ((newx-@gly4a)*@gly4b)^@gly4c endif if @glv5 == "y" glv5 = ((y-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "x" glv5 = ((x-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "newy"; glv5 = ((newy-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "newx" glv5 = ((newx-@gly5a)*@gly5b)^@gly5c endif if @glv6 == "y" glv6 = ((y-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "x" glv6 = ((x-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "newy" ; glv6 = ((newy-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "newx" glv6 = ((newx-@gly6a)*@gly6b)^@gly6c endif if @glyOp1 == "1" newx = cabs(@glyfn3(glv1)) + @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = cabs(@glyfn4(glv4)) + @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "2" newx = cabs(@glyfn3(glv1)) - @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = cabs(@glyfn4(glv4)) + @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "3" newx = cabs(@glyfn3(glv1)) + @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = cabs(@glyfn4(glv4)) - @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "4" newx = cabs(@glyfn3(glv1)) - @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = cabs(@glyfn4(glv4)) - @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) endif endwhile if @glv7 == "y" glv7 = ((y-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "x"; glv7 = ((x-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "newy" glv7 = ((newy-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "newx" glv7 = ((newx-@gly7a)*@gly7b)^@gly7c endif if @glv8 == "y" glv8 = ((y-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "x" glv8 = ((x-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "newy" glv8 = ((newy-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "newx"; glv8 = ((newx-@gly8a)*@gly8b)^@gly8c endif if @glv9 == "y" glv9 = ((y-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "x" glv9 = ((x-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "newy" glv9 = ((newy-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "newx"; glv9 = ((newx-@gly9a)*@gly9b)^@gly9c endif if @glv10 == "y"; glv10 = ((y-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "x" glv10 = ((x-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "newy" glv10 = ((newy-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "newx" glv10 = ((newx-@gly10a)*@gly10b)^@gly10c endif if @glv11 == "y" glv11 = ((y-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "x" glv11 = ((x-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "newy"; glv11 = ((newy-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "newx" glv11 = ((newx-@gly11a)*@gly11b)^@gly11c endif if @glv12 == "y" glv12 = ((y-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "x" glv12 = ((x-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "newy"; glv12 = ((newy-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "newx" glv12 = ((newx-@gly12a)*@gly12b)^@gly12c endif if @glyOp2 == "1" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "2" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "3" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "4" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "5" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "6" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "7" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "8" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "9" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "10" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "11" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "12" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "13" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "14" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "15" x = cabs(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "16" x = cabs(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = cabs(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) endif else float newx = real(@glyfn11(y)) float newy = real(@glyfn12(x)) int j = 0 while j < @flavor j = j + 1 if @glv1 == "y" ; glv1 = ((y-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "x" glv1 = ((x-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "newy" glv1 = ((newy-@gly1a)*@gly1b)^@gly1c elseif @glv1 == "newx" glv1 = ((newx-@gly1a)*@gly1b)^@gly1c endif if @glv2 == "y" glv2 = ((y-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "x" glv2 = ((x-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "newy" glv2 = ((newy-@gly2a)*@gly2b)^@gly2c elseif @glv2 == "newx"; glv2 = ((newx-@gly2a)*@gly2b)^@gly2c endif if @glv3 == "y" glv3 = ((y-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "x" glv3 = ((x-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "newy" glv3 = ((newy-@gly3a)*@gly3b)^@gly3c elseif @glv3 == "newx"; glv3 = ((newx-@gly3a)*@gly3b)^@gly3c endif if @glv4 == "y" glv4 = ((y-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "x"; glv4 = ((x-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "newy" glv4 = ((newy-@gly4a)*@gly4b)^@gly4c elseif @glv4 == "newx" glv4 = ((newx-@gly4a)*@gly4b)^@gly4c endif if @glv5 == "y" glv5 = ((y-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "x" glv5 = ((x-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "newy"; glv5 = ((newy-@gly5a)*@gly5b)^@gly5c elseif @glv5 == "newx" glv5 = ((newx-@gly5a)*@gly5b)^@gly5c endif if @glv6 == "y" glv6 = ((y-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "x" glv6 = ((x-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "newy" ; glv6 = ((newy-@gly6a)*@gly6b)^@gly6c elseif @glv6 == "newx" glv6 = ((newx-@gly6a)*@gly6b)^@gly6c endif if @glyOp1 == "1" newx = real(@glyfn3(glv1)) + @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = real(@glyfn4(glv4)) + @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "2" newx = real(@glyfn3(glv1)) - @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = real(@glyfn4(glv4)) + @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "3" newx = real(@glyfn3(glv1)) + @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = real(@glyfn4(glv4)) - @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) elseif @glyOp1 == "4" newx = real(@glyfn3(glv1)) - @h4r * real(@glyfn5(@glya * glv2)) \ + imag(flip(@h5r)) * real(@glyfn1(@glya * glv3)) newy = real(@glyfn4(glv4)) - @h4i * real(@glyfn6(@glya * glv5)) \ + imag(flip(@h5i)) * real(@glyfn2(@glya * glv6)) endif endwhile if @glv7 == "y" glv7 = ((y-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "x"; glv7 = ((x-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "newy" glv7 = ((newy-@gly7a)*@gly7b)^@gly7c elseif @glv7 == "newx" glv7 = ((newx-@gly7a)*@gly7b)^@gly7c endif if @glv8 == "y" glv8 = ((y-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "x" glv8 = ((x-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "newy" glv8 = ((newy-@gly8a)*@gly8b)^@gly8c elseif @glv8 == "newx"; glv8 = ((newx-@gly8a)*@gly8b)^@gly8c endif if @glv9 == "y" glv9 = ((y-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "x" glv9 = ((x-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "newy" glv9 = ((newy-@gly9a)*@gly9b)^@gly9c elseif @glv9 == "newx"; glv9 = ((newx-@gly9a)*@gly9b)^@gly9c endif if @glv10 == "y"; glv10 = ((y-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "x" glv10 = ((x-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "newy" glv10 = ((newy-@gly10a)*@gly10b)^@gly10c elseif @glv10 == "newx" glv10 = ((newx-@gly10a)*@gly10b)^@gly10c endif if @glv11 == "y" glv11 = ((y-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "x" glv11 = ((x-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "newy"; glv11 = ((newy-@gly11a)*@gly11b)^@gly11c elseif @glv11 == "newx" glv11 = ((newx-@gly11a)*@gly11b)^@gly11c endif if @glv12 == "y" glv12 = ((y-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "x" glv12 = ((x-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "newy"; glv12 = ((newy-@gly12a)*@gly12b)^@gly12c elseif @glv12 == "newx" glv12 = ((newx-@gly12a)*@gly12b)^@gly12c endif if @glyOp2 == "1" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "2" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "3" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "4" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "5" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "6" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "7" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "8" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) + \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "9" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "10" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "11" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "12" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) + \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "13" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "14" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "15" x = real(@glyfn9(glv7)) + @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) + @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) elseif @glyOp2 == "16" x = real(@glyfn9(glv7)) - @h6r * real(@glyfn7(glv8)) - \ imag(flip(@h7r)) * real(@glyfn13(glv9)) y = real(@glyfn10(glv10)) - @h6i * real(@glyfn8(glv11)) - \ imag(flip(@h7i)) * real(@glyfn14(glv12)) endif endif elseif @formula == "Gnarl" if @gn1 == true gn1 = ((y-@gn1a)*@gn1b)^@gn1c gn5 = ((x-@gn5a)*@gn5b)^@gn5c else gn1 = ((x-@gn1a)*@gn1b)^@gn1c gn5 = ((y-@gn5a)*@gn5b)^@gn5c endif if @gn2 == true gn2 = ((x-@gn2a)*@gn2b)^@gn2c else gn2 = ((y-@gn2a)*@gn2b)^@gn2c endif if @gn3 == true gn3 = ((x-@gn3a)*@gn3b)^@gn3c else gn3 = ((y-@gn3a)*@gn3b)^@gn3c endif if @gn4 == true gn4 = ((x-@gn4a)*@gn4b)^@gn4c else gn4 = ((y-@gn4a)*@gn4b)^@gn4c endif if @gn6 == true gn6 = ((y-@gn6a)*@gn6b)^@gn6c else gn6 = ((xx-@gn6a)*@gn6b)^@gn6c endif if @gn7 == true gn7 = ((y-@gn7a)*@gn7b)^@gn7c else gn7 = ((xx-@gn7a)*@gn7b)^@gn7c endif if @gn8 == true gn8 = ((y-@gn8a)*@gn8b)^@gn8c else gn8 = ((xx-@gn8a)*@gn8b)^@gn8c endif if @gnFlavor == true if @gnOp == "1" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "2" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "3" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "4" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "5" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "6" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "7" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "8" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "9" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "10" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "11" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "12" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "13" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "14" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "15" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "16" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "17" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "18" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "19" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "20" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "21" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "22" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "23" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "24" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "25" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "26" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "27" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "28" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "29" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "30" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "31" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "32" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "33" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "34" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "35" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "36" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "37" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "38" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "39" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "40" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "41" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "42" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "43" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "44" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "45" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "46" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "47" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "48" x = cabs(@gnfnx(gn1)) + @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) + @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "49" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "50" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "51" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "52" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "53" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "54" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "55" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "56" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "57" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "58" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "59" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "60" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "61" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "62" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "63" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "64" x = cabs(@gnfnx(gn1)) - @h8r * cabs(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = cabs(@gnfny(gn5)) - @h8i * cabs(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) endif else if @gnOp == "1" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "2" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "3" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "4" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "5" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "6" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "7" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "8" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "9" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "10" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "11" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "12" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "13" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "14" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "15" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "16" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "17" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "18" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "19" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "20" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "21" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "22" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "23" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "24" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "25" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "26" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "27" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "28" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "29" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "30" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "31" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "32" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "33" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "34" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "35" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "36" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "37" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "38" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "39" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "40" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "41" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "42" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "43" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "44" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "45" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "46" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "47" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "48" x = real(@gnfnx(gn1)) + @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) + @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "49" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "50" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "51" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "52" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "53" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "54" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "55" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "56" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 + @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "57" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "58" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "59" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "60" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 + @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "61" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "62" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 + @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) elseif @gnOp == "63" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 + @gnfn6(@gnb * gn8))))) elseif @gnOp == "64" x = real(@gnfnx(gn1)) - @h8r * real(@gnfn1(gn2 - @gnfn2(@gna * \ (gn3 - @gnfn3(@gnb * gn4))))) y = real(@gnfny(gn5)) - @h8i * real(@gnfn4(gn6 - @gnfn5(@gna * \ (gn7 - @gnfn6(@gnb * gn8))))) endif endif elseif @formula == "Hopalong" float sx = 1.0 if x < @hop sx = @sx endif float tx = real(@fnhop(x)) if @hopFlavor == true x = y - sx * cabs(@fnhop2(abs(@pB * x - @pC))) else x = y - sx * real(@fnhop2(abs(@pB * x - @pC))) endif y = @pA - tx elseif @formula == "Dynamic" if @dynv1 == true dynv1 =((y-@dynv1a)*@dynv1b)^@dynv1c dynv4 = ((xx-@dynv4a)*@dynv4b)^@dynv4c else dynv1 = ((x-@dynv1a)*@dynv1b)^@dynv1c dynv4 = ((y-@dynv4a)*@dynv4b)^@dynv4c endif if @dynv2 == true dynv2 = ((x-@dynv2a)*@dynv2b)^@dynv2c else dynv2 = ((y-@dynv2a)*@dynv2b)^@dynv2c endif if @dynv3 == true dynv3 = ((x-@dynv3a)*@dynv3b)^@dynv3c else dynv3 = ((y-@dynv3a)*@dynv3b)^@dynv3c endif if @dynv5 == true dynv5 = ((y-@dynv5a)*@dynv5b)^@dynv5c else dynv5 = ((xx-@dynv5a)*@dynv5b)^@dynv5c endif if @dynv6 == true dynv6 = ((y-@dynv6a)*@dynv6b)^@dynv6c else dynv6 = ((xx-@dynv6a)*@dynv6b)^@dynv6c endif float dyn1 = 0 float dyn4 = 0 if @dynflavor == true dyn1 = cabs(@dynfn1(dynv1)) dyn4 = cabs(@dynfn4(dynv4)) else dyn1 = real(@dynfn1(dynv1)) dyn4 = real(@dynfn4(dynv4)) endif if @dynOp == "1" x = dyn1 - real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "2" x = dyn1 + real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "3" x = dyn1 + real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "4" x = dyn1 - real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "5" x = dyn1 - real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "6" x = dyn1 + real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "7" x = dyn1 + real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "8" x = dyn1 - real(@dhx * @dynfn2(dynv2 + real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "9" x = dyn1 - real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "10" x = dyn1 + real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "11" x = dyn1 + real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "12" x = dyn1 - real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 + imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "13" x = dyn1 - real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "14" x = dyn1 + real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "15" x = dyn1 + real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 + imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) elseif @dynOp == "16" x = dyn1 - real(@dhx * @dynfn2(dynv2 - real(@da) * \ @dynfn3(real(@db) * dynv3))) y = dyn4 - imag(@dhx * @dynfn5(dynv5 - imag(@da) * \ @dynfn6(imag(@db) * dynv6))) endif elseif @formula == "Tanglewood" if @twsv1 == true twsv1 = ((y-@twsv1a)*@twsv1b)^@twsv1c twsv5 = ((x-@twsv5a)*@twsv5b)^@twsv5c else twsv1 = ((x-@twsv1a)*@twsv1b)^@twsv1c twsv5 = ((y-@twsv5a)*@twsv5b)^@twsv5c endif if @twsv2 == true twsv2 = ((y-@twsv2a)*@twsv2b)^@twsv2c else twsv2 = ((xx-@twsv2a)*@twsv2b)^@twsv2c endif if @twsv3 == true twsv3 = ((y-@twsv3a)*@twsv3b)^@twsv3c else twsv3 = ((xx-@twsv3a)*@twsv3b)^@twsv3c endif if @twsv4 == true twsv4 = ((xx-@twsv4a)*@twsv4b)^@twsv4c else twsv4 = ((y-@twsv4a)*@twsv4b)^@twsv4c endif if @twsv6 == true twsv6 = ((xx-@twsv6a)*@twsv6b)^@twsv6c else twsv6 = ((y-@twsv6a)*@twsv6b)^@twsv6c endif if @twsv7 == true twsv7 = ((xx-@twsv7a)*@twsv7b)^@twsv7c else twsv7 = ((y-@twsv7a)*@twsv7b)^@twsv7c endif if @twsv8 == true twsv8 = ((y-@twsv8a)*@twsv8b)^@twsv8c else twsv8 = ((xx-@twsv8a)*@twsv8b)^@twsv8c endif float tang1 = 0 float tang5 = 0 if @twsFlavor1 == true tang1 = cabs(@twsfn1(twsv1)) tang5 = cabs(@twsfn5(twsv5)) else tang1 = real(@twsfn1(twsv1)) tang5 = real(@twsfn5(twsv5)) endif if @twsOp1 == "1" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "2" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "3" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "4" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "5" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "6" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "7" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "8" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "9" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "10" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "11" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "12" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "13" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "14" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "15" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "16" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "17" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "18" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "19" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "20" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "21" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "22" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "23" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "24" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "25" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "26" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "27" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "28" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "29" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "30" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "31" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "32" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 + @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "33" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "34" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "35" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "36" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "37" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "38" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "39" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "40" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "41" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "42" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "43" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "44" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "45" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "46" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "47" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "48" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 + @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "49" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "50" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "51" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "52" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "53" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "54" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "55" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "56" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 + \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "57" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "58" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "59" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "60" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 + \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "61" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "62" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "63" newx = tang1 - real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 - real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) elseif @twsOp1 == "64" newx = tang1 + real(@twsh1 * @twsfn2(twsv2 - \ @twsfn3(@twa1 * (twsv3 - @twsfn4(@twb1 * twsv4))))) newy = tang5 + real(@twsh1b * @twsfn6(twsv6 - \ @twsfn7(@twa1b * (twsv7 - @twsfn8(@twb1b * twsv8))))) endif if @twsv9 == true twsv9 = ((newy-@twsv9a)*@twsv9b)^@twsv9c twsv13 = ((newx-@twsv13a)*@twsv13b)^@twsv13c else twsv9 = ((newx-@twsv9a)*@twsv9b)^@twsv9c twsv13 = ((newy-@twsv13a)*@twsv13b)^@twsv13c endif if @twsv10 == true twsv10 = ((y-@twsv10a)*@twsv10b)^@twsv10c else twsv10 = ((xx-@twsv10a)*@twsv10b)^@twsv10c endif if @twsv11 == true twsv11 = ((y-@twsv11a)*@twsv11b)^@twsv11c else twsv11 = ((xx-@twsv11a)*@twsv11b)^@twsv11c endif if @twsv12 == true twsv12 = ((xx-@twsv12a)*@twsv12b)^@twsv12c else twsv12 = ((y-@twsv12a)*@twsv12b)^@twsv12c endif if @twsv14 == true twsv14 = ((y-@twsv14a)*@twsv14b)^@twsv14c else twsv14 = ((xx-@twsv14a)*@twsv14b)^@twsv14c endif if @twsv15 == true twsv15 = ((xx-@twsv15a)*@twsv15b)^@twsv15c else twsv15 = ((y-@twsv15a)*@twsv15b)^@twsv15c endif if @twsv16 == true twsv16 = ((y-@twsv16a)*@twsv16b)^@twsv16c else twsv16 = ((xx-@twsv16a)*@twsv16b)^@twsv16c endif if @twsOp2 == "1" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "2" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "3" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "4" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "5" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "6" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "7" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "8" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "9" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "10" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "11" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "12" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "13" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "14" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "15" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "16" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "17" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "18" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "19" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "20" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "21" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "22" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "23" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "24" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "25" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "26" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "27" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "28" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "29" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "30" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "31" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "32" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 + @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "33" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "34" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "35" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "36" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "37" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "38" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "39" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "40" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "41" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "42" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "43" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "44" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "45" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "46" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "47" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "48" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 + @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "49" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "50" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "51" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "52" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "53" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "54" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "55" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "56" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 + \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "57" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "58" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "59" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "60" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 + \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "61" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "62" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "63" x = real(@twsfn9(twsv9)) + real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) + real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) elseif @twsOp2 == "64" x = real(@twsfn9(twsv9)) - real(@twsh2 * @twsfn10(twsv10 - \ @twsfn11(@twa2 * (twsv11 - @twsfn12(@twb2 * twsv12))))) y = real(@twsfn13(twsv13)) - real(@twsh2b * @twsfn14(twsv14 - \ @twsfn15(@twa2b * (twsv15 - @twsfn16(@twb2b * twsv16))))) endif elseif @formula == "Twirl" if @twv1 == true twv1 = ((y-@twv1a)*@twv1b)^@twv1c twv6 = ((x-@twv6a)*@twv6b)^@twv6c else twv1 = ((x-@twv1a)*@twv1b)^@twv1c twv6 = ((y-@twv6a)*@twv6b)^@twv6c endif if @twv2 == true twv2 = ((y-@twv2a)*@twv2b)^@twv2c else twv2 = ((xx-@twv2a)*@twv2b)^@twv2c endif if @twv3 == true twv3 = ((xx-@twv3a)*@twv3b)^@twv3c else twv3 = ((y-@twv3a)*@twv3b)^@twv3c endif if @twv4 == true twv4 = ((y-@twv4a)*@twv4b)^@twv4c else twv4 = ((xx-@twv4a)*@twv4b)^@twv4c endif if @twv5 == true twv5 = ((xx-@twv5a)*@twv5b)^@twv5c else twv5 = ((y-@twv5a)*@twv5b)^@twv5c endif if @twv7 == true twv7 = ((xx-@twv7a)*@twv7b)^@twv7c else twv7 = ((y-@twv7a)*@twv7b)^@twv7c endif if @twv8 == true twv8 = ((y-@twv8a)*@twv8b)^@twv8c else twv8 = ((xx-@twv8a)*@twv8b)^@twv8c endif if @twv9 == true twv9 = ((xx-@twv9a)*@twv9b)^@twv9c else twv9 = ((y-@twv9a)*@twv9b)^@twv9c endif if @twv10 == true twv10 = ((xx-@twv10a)*@twv10b)^@twv10c else twv10 = ((y-@twv10a)*@twv10b)^@twv10c endif float twirl1 = 0 float twirl6 = 0 if @twiFlavor == true twirl1 = cabs(@twfn1(twv1)) twirl6 = cabs(@twfn6(twv6)) else twirl1 = real(@twfn1(twv1)) twirl6 = real(@twfn6(twv6)) endif if @twiOp == "1" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "2" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "3" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "4" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "5" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "6" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "7" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "8" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "9" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "10" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "11" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "12" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "13" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "14" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "15" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "16" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "17" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "18" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "19" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "20" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "21" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "22" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "23" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "24" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "25" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "26" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "27" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "28" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "29" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "30" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "31" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "32" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 + @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "33" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "34" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "35" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "36" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "37" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "38" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "39" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "40" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "41" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "42" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "43" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "44" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "45" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "46" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "47" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "48" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 + @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "49" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "50" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "51" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "52" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "53" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "54" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "55" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "56" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "57" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "58" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "59" x = twirl1 + real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "60" x = twirl1 - real(@th * @twfn2(twv2 + @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 + @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "61" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "62" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "63" x = twirl1 + real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 + real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) elseif @twiOp == "64" x = twirl1 - real(@th * @twfn2(twv2 - @twfn3(real(@ta) * \ (twv3 - @twfn4(real((@tb) *twv4))))))*real(@twfn5(twv5)) y = twirl6 - real(@th2 * @twfn7(twv7 - @twfn8(imag(@ta) * \ (twv8 - @twfn9(imag((@tb) *twv9))))))*real(@twfn10(twv10)) endif elseif @formula == "Driftwood" if @tgwv1 == true tgwv1 = ((y-@tgwv1a)*@tgwv1b)^@tgwv1c tgwv5 = ((x-@tgwv5a)*@tgwv5b)^@tgwv5c else tgwv1 = ((x-@tgwv1a)*@tgwv1b)^@tgwv1c tgwv5 = ((y-@tgwv5a)*@tgwv5b)^@tgwv5c endif if @tgwv2 == true tgwv2 = ((y-@tgwv2a)*@tgwv2b)^@tgwv2c else tgwv2 = ((xx-@tgwv2a)*@tgwv2b)^@tgwv2c endif if @tgwv3 == true tgwv3 = ((xx-@tgwv3a)*@tgwv3b)^@tgwv3c else tgwv3 = ((y-@tgwv3a)*@tgwv3b)^@tgwv3c endif if @tgwv4 == true tgwv4 = ((xx-@tgwv4a)*@tgwv4b)^@tgwv4c else tgwv4 = ((y-@tgwv4a)*@tgwv4b)^@tgwv4c endif if @tgwv6 == true tgwv6 = ((y-@tgwv6a)*@tgwv6b)^@tgwv6c else tgwv6 = ((xx-@tgwv6a)*@tgwv6b)^@tgwv6c endif float drift1 = 0 float drift5 = 0 if @tgwFlavor1 == true drift1 = cabs(@tgwfn1(tgwv1)) drift5 = cabs(@tgwfn5(tgwv5)) else drift1 = real(@tgwfn1(tgwv1)) drift5 = real(@tgwfn5(tgwv5)) endif if @tgwOp1 == "1" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "2" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "3" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "4" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "5" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "6" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "7" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "8" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 + \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "5" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 - \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "6" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 - \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "7" newx = drift1 - real(@tgwh1 * @tgwfn2(tgwv2 - \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 - imag(@tgwh1 * @tgwfn6(tgwv6)) elseif @tgwOp1 == "8" newx = drift1 + real(@tgwh1 * @tgwfn2(tgwv2 - \ @tgwfn3(real(@tgwa1) * (tgwv3 + @tgwfn4(real(@tgwb1) * tgwv4))))) newy = drift5 + imag(@tgwh1 * @tgwfn6(tgwv6)) endif if @tgwv7 == true tgwv7 = ((newy-@tgwv7a)*@tgwv7b)^@tgwv7c tgwv11 = ((newx-@tgwv11a)*@tgwv11b)^@tgwv11c else tgwv7 = ((newx-@tgwv7a)*@tgwv7b)^@tgwv7c tgwv11 = ((newy-@tgwv11a)*@tgwv11b)^@tgwv11c endif if @tgwv8 == true tgwv8 = ((xx-@tgwv8a)*@tgwv8b)^@tgwv8c else tgwv8 = ((y-@tgwv8a)*@tgwv8b)^@tgwv8c endif if @tgwv9 == true tgwv9 = ((y-@tgwv9a)*@tgwv9b)^@tgwv9c else tgwv9 = ((xx-@tgwv9a)*@tgwv9b)^@tgwv9c endif if @tgwv10 == true tgwv10 = ((xx-@tgwv10a)*@tgwv10b)^@tgwv10c else tgwv10 = ((y-@tgwv10a)*@tgwv10b)^@tgwv10c endif if @tgwv12 == true tgwv12 = ((xx-@tgwv12a)*@tgwv12b)^@tgwv12c else tgwv12 = ((y-@tgwv12a)*@tgwv12b)^@tgwv12c endif if @tgwOp2 == "1" x = real(@tgwfn7(tgwv7)) - real(@tgwh2 * @tgwfn8(tgwv8 + \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) + imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "2" x = real(@tgwfn7(tgwv7)) + real(@tgwh2 * @tgwfn8(tgwv8 + \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) - imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "3" x = real(@tgwfn7(tgwv7)) + real(@tgwh2 * @tgwfn8(tgwv8 + \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) + imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "4" x = real(@tgwfn7(tgwv7)) - real(@tgwh2 * @tgwfn8(tgwv8 + \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) - imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "5" x = real(@tgwfn7(tgwv7)) - real(@tgwh2 * @tgwfn8(tgwv8 - \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) + imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "6" x = real(@tgwfn7(tgwv7)) + real(@tgwh2 * @tgwfn8(tgwv8 - \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) - imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "7" x = real(@tgwfn7(tgwv7)) + real(@tgwh2 * @tgwfn8(tgwv8 - \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) + imag(@tgwh2 * @tgwfn12(tgwv12)) elseif @tgwOp2 == "8" x = real(@tgwfn7(tgwv7)) - real(@tgwh2 * @tgwfn8(tgwv8 - \ @tgwfn8(real(@tgwa2) * (tgwv9 + @tgwfn10(real(@tgwb2) * tgwv10))))) y = real(@tgwfn11(tgwv11)) - imag(@tgwh2 * @tgwfn12(tgwv12)) endif endif else ; scenario 2 if @formulaQ == "Martin" if @martV1Q == true mv1Q = x else mv1Q = y endif if @martV2Q == true mv2Q = y else mv2Q = x endif if @martV3Q == true mv3Q = y else mv3Q = xx endif if @martFlavQ == true if @martOpQ == "1" x = cabs(@fnmy1Q((mv1Q-@myQ)*@mymQ)^@myeQ) - \ cabs(@martfnQ( (mv2Q-@mxQ)*@mxmQ)^@mxeQ) y = @maaQ - cabs(@fnmx1Q((mv3Q-@mxxQ)*@mxxmQ)^@mxxeQ) elseif @martOpQ == "2" x = cabs(@fnmy1Q((mv1Q-@myQ)*@mymQ)^@myeQ) + \ cabs(@martfnQ((mv2Q-@mxQ)*@mxmQ)^@mxeQ) y = @maaQ - cabs(@fnmx1Q((mv3Q-@mxxQ)*@mxxmQ)^@mxxeQ) endif else if @martOpQ == "1" x = real(@fnmy1Q((mv1Q-@myQ)*@mymQ)^@myeQ) - \ real(@martfnQ((mv2Q-@mxQ)*@mxmQ)^@mxeQ) y = @maaQ - real(@fnmx1Q((mv3Q-@mxxQ)*@mxxmQ)^@mxxeQ) elseif @martOpQ == "2" x = real(@fnmy1Q((mv1Q-@myQ)*@mymQ)^@myeQ) + \ real(@martfnQ((mv2Q-@mxQ)*@mxmQ)^@mxeQ) y = @maaQ - real(@fnmx1Q((mv3Q-@mxxQ)*@mxxmQ)^@mxxeQ) endif endif elseif @formulaQ == "Popcorn" if @funcPopTypeQ == true vQ = cabs(@fnpopxQ(x)*@popxQ) wQ = cabs(@fnpopyQ(y)*@popyQ) else vQ = real(@fnpopxQ(x)*@popxQ) wQ = real(@fnpopyQ(y)*@popyQ) endif if @v1Q == true qaQ = ((xx-@pop1aQ)*@pop1bQ)^@pop1cQ else qaQ = ((y-@pop1aQ)*@pop1bQ)^@pop1cQ endif if @v2Q == true qbQ = ((xx-@pop2aQ)*@pop2bQ)^@pop2cQ else qbQ = ((y-@pop2aQ)*@pop2bQ)^@pop2cQ endif if @v3Q == true qcQ = ((y-@pop3aQ)*@pop3bQ)^@pop3cQ else qcQ = ((xx-@pop3aQ)*@pop3bQ)^@pop3cQ endif if @v4Q == true qdQ = ((y-@pop4aQ)*@pop4bQ)^@pop4cQ else qdQ = ((xx-@pop4aQ)*@pop4bQ)^@pop4cQ endif if @popflavor1Q == "1" if @popflavor2Q == "1" x = vQ - real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "2" x = vQ - real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "3" x = vQ + real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "4" x = vQ + real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) endif elseif @popflavor1Q == "2" if @popflavor2Q == "1" x = vQ - real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "2" x = vQ - real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "3" x = vQ + real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "4" x = vQ + real(@h1Q * @popfn1Q(qaQ + @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) endif elseif @popflavor1Q == "3" if @popflavor2Q == "1" x = vQ - real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "2" x = vQ - real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "3" x = vQ + real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "4" x = vQ + real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ + @popfn4Q(imag(@popcQ) * qdQ))) endif elseif @popflavor1Q == "4" if @popflavor2Q == "1" x = vQ - real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "2" x = vQ - real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "3" x = vQ + real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ - imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) elseif @popflavor2Q == "4" x = vQ + real(@h1Q * @popfn1Q(qaQ - @popfn2Q(real(@popcQ) * qbQ))) y = wQ + imag(@h1Q * @popfn3Q(qcQ - @popfn4Q(imag(@popcQ) * qdQ))) endif endif elseif @formulaQ == "Vine" if @vinV1Q == true vv1Q = ((y-@v1aQ)*@v1bQ)^@v1cQ vv4Q = ((x-@v4aQ)*@v4bQ)^@v4cQ else vv1Q = ((x-@v1aQ)*@v1bQ)^@v1cQ vv4Q = ((y-@v4aQ)*@v4bQ)^@v4cQ endif if @vinV2Q == true vv2Q = ((xx-@v2aQ)*@v2bQ)^@v2cQ else vv2Q = ((y-@v2aQ)*@v2bQ)^@v2cQ endif if @vinV3Q == true vv3Q = ((xx-@v3aQ)*@v3bQ)^@v3cQ else vv3Q = ((y-@v3aQ)*@v3bQ)^@v3cQ endif if @vinV5Q == true vv5Q = ((y-@v5aQ)*@v5bQ)^@v5cQ else vv5Q = ((xx-@v5aQ)*@v5bQ)^@v5cQ endif if @vinV6Q == true vv6Q = ((y-@v6aQ)*@v6bQ)^@v6cQ else vv6Q = ((xx-@v6aQ)*@v6bQ)^@v6cQ endif if @vinV7Q == true vv7Q = ((xx-@v7aQ)*@v7bQ)^@v7cQ else vv7Q = ((y-@v7aQ)*@v7bQ)^@v7cQ endif if @vinV8Q == true vv8Q = ((y-@v8aQ)*@v8bQ)^@v8cQ else vv8Q = ((xx-@v8aQ)*@v8bQ)^@v8cQ endif if @vinOp1Q == "1" if @vinFlavorQ == true if @flavorQ == 0 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ * vv3Q ))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * cabs(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ * vv6Q))) elseif @flavorQ == 1 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q^@vbQ + \ @vinfn3Q(@vaQ * vv3Q))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * cabs(@vinfn2Q(vv5Q^@vbQ + \ @vinfn4Q(@vaQ * vv6Q))) elseif @flavorQ == 2 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ *(vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * cabs(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ *(vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = cabs(@vinfn7Q(y)) float newy = cabs(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3cQ == "1" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "2" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "3" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "4" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2cQ == "1" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "2" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "3" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "4" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) endif endif else if @flavorQ == 0 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * real(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q^@vbQ + \ @vinfn3Q(@vaQ * vv3Q))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * real(@vinfn2Q(vv5Q^@vbQ + \ @vinfn4Q(@vaQ * vv6Q))) elseif @flavorQ == 2 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * real(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ *(vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = real(@vinfn7Q(y)) float newy = real(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3rQ == "1" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "2" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "3" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "4" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2rQ == "1" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "2" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "3" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "4" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) endif endif endif elseif @vinOp1Q == "2" if @vinFlavorQ == true if @flavorQ == 0 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * cabs(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q^@vbQ + \ @vinfn3Q (@vaQ * vv3Q))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * cabs(@vinfn2Q(vv5Q^@vbQ + \ @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = cabs(@vinfnx1Q(vv1Q)) - @h2rQ * cabs(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ *(vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * cabs(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ *(vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = cabs(@vinfn7Q(y)) float newy = cabs(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3cQ == "1" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "2" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "3" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "4" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2cQ == "1" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "2" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "3" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "4" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) endif endif else if @flavorQ == 0 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * real(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q^@vbQ + \ @vinfn3Q (@vaQ * vv3Q))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * real(@vinfn2Q(vv5Q^@vbQ + \ @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = real(@vinfnx1Q(vv1Q)) - @h2rQ * real(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * real(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ * (vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = real(@vinfn7Q(y)) float newy = real(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3rQ == "1" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "2" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "3" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "4" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2rQ == "1" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "2" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "3" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "4" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) endif endif endif elseif @vinOp1Q == "3" if @vinFlavorQ == true if @flavorQ == 0 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * cabs(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * cabs(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * \ cabs(@vinfn1Q(vv2Q^@vbQ + @vinfn3Q (@vaQ * vv3Q))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * \ cabs(@vinfn2Q(vv5Q^@vbQ + @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * cabs(@vinfn1Q(vv2Q + \ @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = cabs(@vinfny1Q(vv4Q)) - @h2iQ * cabs(@vinfn2Q(vv5Q + \ @vinfn4Q(@vaQ * (vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = cabs(@vinfn7Q(y)) float newy = cabs(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3cQ == "1" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "2" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "3" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "4" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2cQ == "1" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "2" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "3" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "4" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) endif endif else if @flavorQ == 0 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * real(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * real(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * \ real(@vinfn1Q(vv2Q^@vbQ + @vinfn3Q (@vaQ * vv3Q))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * \ real(@vinfn2Q(vv5Q^@vbQ + @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * real(@vinfn1Q \ (vv2Q + @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = real(@vinfny1Q(vv4Q)) - @h2iQ * real(@vinfn2Q \ (vv5Q + @vinfn4Q(@vaQ * (vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = real(@vinfn7Q(y)) float newy = real(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3rQ == "1" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "2" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "3" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "4" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2rQ == "1" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "2" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "3" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "4" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) endif endif endif elseif @vinOp1Q == "4" if @vinFlavorQ == true if @flavorQ == 0 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * cabs(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * cabs(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * \ cabs(@vinfn1Q(vv2Q^@vbQ + @vinfn3Q (@vaQ * vv3Q))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * \ cabs(@vinfn2Q(vv5Q^@vbQ + @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = cabs(@vinfnx1Q(vv1Q)) + @h2rQ * cabs(@vinfn1Q \ (vv2Q + @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = cabs(@vinfny1Q(vv4Q)) + @h2iQ * cabs(@vinfn2Q \ (vv5Q + @vinfn4Q(@vaQ * (vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = cabs(@vinfn7Q(y)) float newy = cabs(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3cQ == "1" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "2" newx = cabs(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "3" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3cQ == "4" newx = cabs(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = cabs(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2cQ == "1" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "2" x = cabs(@vinfnx2Q(x)) - @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "3" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) - @h3iQ * cabs(@vinfn10Q(newy)) elseif @vinOp2cQ == "4" x = cabs(@vinfnx2Q(x)) + @h3rQ * cabs(@vinfn9Q(newx)) y = cabs(@vinfny2Q(y)) + @h3iQ * cabs(@vinfn10Q(newy)) endif endif else if @flavorQ == 0 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * real(@vinfn1Q(vv2Q + @vinfn3Q \ (@vaQ * vv3Q ))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * real(@vinfn2Q(vv5Q + @vinfn4Q \ (@vaQ * vv6Q))) elseif @flavorQ == 1 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * \ real(@vinfn1Q(vv2Q^@vbQ + @vinfn3Q (@vaQ * vv3Q))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * \ real(@vinfn2Q(vv5Q^@vbQ + @vinfn4Q (@vaQ * vv6Q))) elseif @flavorQ == 2 x = real(@vinfnx1Q(vv1Q)) + @h2rQ * real(@vinfn1Q \ (vv2Q + @vinfn3Q(@vaQ * (vv3Q + @vinfn5Q(@vaQ * vv7Q))))) y = real(@vinfny1Q(vv4Q)) + @h2iQ * real(@vinfn2Q \ (vv5Q + @vinfn4Q(@vaQ * (vv6Q + @vinfn6Q(@vaQ * vv8Q))))) else float newx = real(@vinfn7Q(y)) float newy = real(@vinfn8Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @vinOp3rQ == "1" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "2" newx = real(@vinfny1Q(y)) + real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "3" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) + real(@vinfn11Q(@vaQ * newy)) elseif @vinOp3rQ == "4" newx = real(@vinfny1Q(y)) - real(@vinfn11Q(@vaQ * newx)) newy = real(@vinfnx1Q(x)) - real(@vinfn11Q(@vaQ * newy)) endif endwhile if @vinOp2rQ == "1" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "2" x = real(@vinfnx2Q(x)) - @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "3" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) - @h3iQ * real(@vinfn10Q(newy)) elseif @vinOp2rQ == "4" x = real(@vinfnx2Q(x)) + @h3rQ * real(@vinfn9Q(newx)) y = real(@vinfny2Q(y)) + @h3iQ * real(@vinfn10Q(newy)) endif endif endif endif elseif @formulaQ == "Glyph" if @glyphFlavor1Q == true float newx = cabs(@glyfn11Q(y)) float newy = cabs(@glyfn12Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @glv1Q == "y" ; glv1Q = ((y-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "x" glv1Q = ((x-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "newy" glv1Q = ((newy-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "newx" glv1Q = ((newx-@gly1aQ)*@gly1bQ)^@gly1cQ endif if @glv2Q == "y" glv2Q = ((y-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "x" glv2Q = ((x-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "newy" glv2Q = ((newy-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "newx"; glv2Q = ((newx-@gly2aQ)*@gly2bQ)^@gly2cQ endif if @glv3Q == "y" glv3Q = ((y-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "x" glv3Q = ((x-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "newy" glv3Q = ((newy-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "newx"; glv3Q = ((newx-@gly3aQ)*@gly3bQ)^@gly3cQ endif if @glv4Q == "y" glv4Q = ((y-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "x"; glv4Q = ((x-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "newy" glv4Q = ((newy-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "newx" glv4Q = ((newx-@gly4aQ)*@gly4bQ)^@gly4cQ endif if @glv5Q == "y" glv5Q = ((y-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "x" glv5Q = ((x-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "newy"; glv5Q = ((newy-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "newx" glv5Q = ((newx-@gly5aQ)*@gly5bQ)^@gly5cQ endif if @glv6Q == "y" glv6Q = ((y-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "x" glv6Q = ((x-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "newy" ; glv6Q = ((newy-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "newx" glv6Q = ((newx-@gly6aQ)*@gly6bQ)^@gly6cQ endif if @glyOp1Q == "1" newx = cabs(@glyfn3Q(glv1Q)) + @h4rQ * real(@glyfn5Q(@glyaQ * \ glv2Q)) + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = cabs(@glyfn4Q(glv4Q)) + @h4iQ * real(@glyfn6Q(@glyaQ * \ glv5Q)) + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "2" newx = cabs(@glyfn3Q(glv1Q)) - @h4rQ * real(@glyfn5Q(@glyaQ * \ glv2Q)) + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = cabs(@glyfn4Q(glv4Q)) + @h4iQ * real(@glyfn6Q(@glyaQ * \ glv5Q)) + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "3" newx = cabs(@glyfn3Q(glv1Q)) + @h4rQ * real(@glyfn5Q(@glyaQ * \ glv2Q)) + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = cabs(@glyfn4Q(glv4Q)) - @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "4" newx = cabs(@glyfn3Q(glv1Q)) - @h4rQ * real(@glyfn5Q(@glyaQ * glv2Q)) \ + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = cabs(@glyfn4Q(glv4Q)) - @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) endif endwhile if @glv7Q == "y" glv7Q = ((y-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "x"; glv7Q = ((x-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "newy" glv7Q = ((newy-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "newx" glv7Q = ((newx-@gly7aQ)*@gly7bQ)^@gly7cQ endif if @glv8Q == "y" glv8Q = ((y-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "x" glv8Q = ((x-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "newy" glv8Q = ((newy-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "newx"; glv8Q = ((newx-@gly8aQ)*@gly8bQ)^@gly8cQ endif if @glv9Q == "y" glv9Q = ((y-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "x" glv9Q = ((x-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "newy" glv9Q = ((newy-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "newx"; glv9Q = ((newx-@gly9aQ)*@gly9bQ)^@gly9cQ endif if @glv10Q == "y"; glv10Q = ((y-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "x" glv10Q = ((x-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "newy" glv10Q = ((newy-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "newx" glv10Q = ((newx-@gly10aQ)*@gly10bQ)^@gly10cQ endif if @glv11Q == "y" glv11Q = ((y-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "x" glv11Q = ((x-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "newy"; glv11Q = ((newy-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "newx" glv11Q = ((newx-@gly11aQ)*@gly11bQ)^@gly11cQ endif if @glv12Q == "y" glv12Q = ((y-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "x" glv12Q = ((x-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "newy"; glv12Q = ((newy-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "newx" glv12Q = ((newx-@gly12aQ)*@gly12bQ)^@gly12cQ endif if @glyOp2Q == "1" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "2" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "3" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "4" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "5" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "6" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "7" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "8" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "9" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "10" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "11" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "12" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "13" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "14" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "15" x = cabs(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "16" x = cabs(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = cabs(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) endif elseif @glyphFlavor1Q == false float newx = real(@glyfn11Q(y)) float newy = real(@glyfn12Q(x)) int jQ = 0 while jQ < @flavorQ jQ = jQ + 1 if @glv1Q == "y" ; glv1Q = ((y-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "x" glv1Q = ((x-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "newy" glv1Q = ((newy-@gly1aQ)*@gly1bQ)^@gly1cQ elseif @glv1Q == "newx" glv1Q = ((newx-@gly1aQ)*@gly1bQ)^@gly1cQ endif if @glv2Q == "y" glv2Q = ((y-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "x" glv2Q = ((x-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "newy" glv2Q = ((newy-@gly2aQ)*@gly2bQ)^@gly2cQ elseif @glv2Q == "newx"; glv2Q = ((newx-@gly2aQ)*@gly2bQ)^@gly2cQ endif if @glv3Q == "y" glv3Q = ((y-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "x" glv3Q = ((x-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "newy" glv3Q = ((newy-@gly3aQ)*@gly3bQ)^@gly3cQ elseif @glv3Q == "newx"; glv3Q = ((newx-@gly3aQ)*@gly3bQ)^@gly3cQ endif if @glv4Q == "y" glv4Q = ((y-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "x"; glv4Q = ((x-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "newy" glv4Q = ((newy-@gly4aQ)*@gly4bQ)^@gly4cQ elseif @glv4Q == "newx" glv4Q = ((newx-@gly4aQ)*@gly4bQ)^@gly4cQ endif if @glv5Q == "y" glv5Q = ((y-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "x" glv5Q = ((x-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "newy"; glv5Q = ((newy-@gly5aQ)*@gly5bQ)^@gly5cQ elseif @glv5Q == "newx" glv5Q = ((newx-@gly5aQ)*@gly5bQ)^@gly5cQ endif if @glv6Q == "y" glv6Q = ((y-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "x" glv6Q = ((x-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "newy" ; glv6Q = ((newy-@gly6aQ)*@gly6bQ)^@gly6cQ elseif @glv6Q == "newx" glv6Q = ((newx-@gly6aQ)*@gly6bQ)^@gly6cQ endif if @glyOp1Q == "1" newx = real(@glyfn3Q(glv1Q)) + @h4rQ * real(@glyfn5Q(@glyaQ * glv2Q)) \ + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = real(@glyfn4Q(glv4Q)) + @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "2" newx = real(@glyfn3Q(glv1Q)) - @h4rQ * real(@glyfn5Q(@glyaQ * glv2Q)) \ + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = real(@glyfn4Q(glv4Q)) + @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "3" newx = real(@glyfn3Q(glv1Q)) + @h4rQ * real(@glyfn5Q(@glyaQ * glv2Q)) \ + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = real(@glyfn4Q(glv4Q)) - @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) elseif @glyOp1Q == "4" newx = real(@glyfn3Q(glv1Q)) - @h4rQ * real(@glyfn5Q(@glyaQ * glv2Q)) \ + imag(flip(@h5rQ)) * real(@glyfn1Q(@glyaQ * glv3Q)) newy = real(@glyfn4Q(glv4Q)) - @h4iQ * real(@glyfn6Q(@glyaQ * glv5Q)) \ + imag(flip(@h5iQ)) * real(@glyfn2Q(@glyaQ * glv6Q)) endif endwhile if @glv7Q == "y" glv7Q = ((y-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "x"; glv7Q = ((x-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "newy" glv7Q = ((newy-@gly7aQ)*@gly7bQ)^@gly7cQ elseif @glv7Q == "newx" glv7Q = ((newx-@gly7aQ)*@gly7bQ)^@gly7cQ endif if @glv8Q == "y" glv8Q = ((y-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "x" glv8Q = ((x-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "newy" glv8Q = ((newy-@gly8aQ)*@gly8bQ)^@gly8cQ elseif @glv8Q == "newx"; glv8Q = ((newx-@gly8aQ)*@gly8bQ)^@gly8cQ endif if @glv9Q == "y" glv9Q = ((y-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "x" glv9Q = ((x-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "newy" glv9Q = ((newy-@gly9aQ)*@gly9bQ)^@gly9cQ elseif @glv9Q == "newx"; glv9Q = ((newx-@gly9aQ)*@gly9bQ)^@gly9cQ endif if @glv10Q == "y"; glv10Q = ((y-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "x" glv10Q = ((x-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "newy" glv10Q = ((newy-@gly10aQ)*@gly10bQ)^@gly10cQ elseif @glv10Q == "newx" glv10Q = ((newx-@gly10aQ)*@gly10bQ)^@gly10cQ endif if @glv11Q == "y" glv11Q = ((y-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "x" glv11Q = ((x-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "newy"; glv11Q = ((newy-@gly11aQ)*@gly11bQ)^@gly11cQ elseif @glv11Q == "newx" glv11Q = ((newx-@gly11aQ)*@gly11bQ)^@gly11cQ endif if @glv12Q == "y" glv12Q = ((y-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "x" glv12Q = ((x-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "newy"; glv12Q = ((newy-@gly12aQ)*@gly12bQ)^@gly12cQ elseif @glv12Q == "newx" glv12Q = ((newx-@gly12aQ)*@gly12bQ)^@gly12cQ endif if @glyOp2Q == "1" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "2" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "3" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "4" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "5" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "6" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "7" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "8" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) + \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "9" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "10" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "11" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "12" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) + \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "13" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "14" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "15" x = real(@glyfn9Q(glv7Q)) + @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) + @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) elseif @glyOp2Q == "16" x = real(@glyfn9Q(glv7Q)) - @h6rQ * real(@glyfn7Q(glv8Q)) - \ imag(flip(@h7rQ)) * real(@glyfn13Q(glv9Q)) y = real(@glyfn10Q(glv10Q)) - @h6iQ * real(@glyfn8Q(glv11Q)) - \ imag(flip(@h7iQ)) * real(@glyfn14Q(glv12Q)) endif endif elseif @formulaQ == "Gnarl" if @gn1Q == true gn1Q = ((y-@gn1aQ)*@gn1bQ)^@gn1cQ gn5Q = ((x-@gn5aQ)*@gn5bQ)^@gn5cQ else gn1Q = ((x-@gn1aQ)*@gn1bQ)^@gn1cQ gn5Q = ((y-@gn5aQ)*@gn5bQ)^@gn5cQ endif if @gn2Q == true gn2Q = ((x-@gn2aQ)*@gn2bQ)^@gn2cQ else gn2Q = ((y-@gn2aQ)*@gn2bQ)^@gn2cQ endif if @gn3Q == true gn3Q = ((x-@gn3aQ)*@gn3bQ)^@gn3cQ else gn3Q = ((y-@gn3aQ)*@gn3bQ)^@gn3cQ endif if @gn4Q == true gn4Q = ((x-@gn4aQ)*@gn4bQ)^@gn4cQ else gn4Q = ((y-@gn4aQ)*@gn4bQ)^@gn4cQ endif if @gn6Q == true gn6Q = ((y-@gn6aQ)*@gn6bQ)^@gn6cQ else gn6Q = ((xx-@gn6aQ)*@gn6bQ)^@gn6cQ endif if @gn7Q == true gn7Q = ((y-@gn7aQ)*@gn7bQ)^@gn7cQ else gn7Q = ((xx-@gn7aQ)*@gn7bQ)^@gn7cQ endif if @gn8Q == true gn8Q = ((y-@gn8aQ)*@gn8bQ)^@gn8cQ else gn8Q = ((xx-@gn8aQ)*@gn8bQ)^@gn8cQ endif if @gnFlavorQ == true if @gnOpQ == "1" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "2" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "3" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "4" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "5" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "6" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "7" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "8" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "9" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "10" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "11" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "12" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "13" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "14" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "15" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "16" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "17" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "18" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "19" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "20" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "21" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "22" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "23" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "24" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "25" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "26" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "27" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "28" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "29" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "30" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "31" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "32" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "33" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "34" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "35" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "36" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "37" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "38" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "39" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "40" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "41" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "42" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "43" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "44" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "45" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "46" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "47" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "48" x = cabs(@gnfnxQ(gn1Q)) + @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) + @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "49" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "50" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "51" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "52" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "53" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "54" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "55" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "56" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "57" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "58" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "59" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "60" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "61" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "62" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "63" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "64" x = cabs(@gnfnxQ(gn1Q)) - @h8rQ * cabs(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = cabs(@gnfnyQ(gn5Q)) - @h8iQ * cabs(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) endif else if @gnOpQ == "1" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "2" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "3" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "4" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "5" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "6" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "7" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "8" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "9" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "10" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "11" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "12" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "13" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "14" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "15" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "16" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "17" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "18" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "19" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "20" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "21" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "22" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "23" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "24" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "25" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "26" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "27" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "28" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "29" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "30" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "31" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "32" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "33" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "34" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "35" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "36" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "37" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "38" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "39" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "40" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "41" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "42" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "43" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "44" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "45" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "46" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "47" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "48" x = real(@gnfnxQ(gn1Q)) + @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) + @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "49" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "50" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "51" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "52" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "53" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "54" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "55" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "56" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q + @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "57" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "58" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "59" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "60" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q + @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "61" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "62" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q + @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "63" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q + @gnfn6Q(@gnbQ * gn8Q))))) elseif @gnOpQ == "64" x = real(@gnfnxQ(gn1Q)) - @h8rQ * real(@gnfn1Q(gn2Q - @gnfn2Q(@gnaQ * \ (gn3Q - @gnfn3Q(@gnbQ * gn4Q))))) y = real(@gnfnyQ(gn5Q)) - @h8iQ * real(@gnfn4Q(gn6Q - @gnfn5Q(@gnaQ * \ (gn7Q - @gnfn6Q(@gnbQ * gn8Q))))) endif endif elseif @formulaQ == "Hopalong" float sxQ = 1.0 if x < @hopQ sxQ = @sxQ endif float txQ = real(@fnhopQ(x)) if @hopFlavor == true x = y - sxQ * cabs(@fnhop2Q(abs(@pBQ * x - @pCQ))) else x = y - sxQ * real(@fnhop2Q(abs(@pBQ * x - @pCQ))) endif y = @pAQ - txQ elseif @formulaQ == "Dynamic" if @dynv1Q == true dynv1Q =((y-@dynv1aQ)*@dynv1bQ)^@dynv1cQ dynv4Q = ((xx-@dynv4aQ)*@dynv4bQ)^@dynv4cQ else dynv1Q = ((x-@dynv1aQ)*@dynv1bQ)^@dynv1cQ dynv4Q = ((y-@dynv4aQ)*@dynv4bQ)^@dynv4cQ endif if @dynv2Q == true dynv2Q = ((x-@dynv2aQ)*@dynv2bQ)^@dynv2cQ else dynv2Q = ((y-@dynv2aQ)*@dynv2bQ)^@dynv2cQ endif if @dynv3Q == true dynv3Q = ((x-@dynv3aQ)*@dynv3bQ)^@dynv3cQ else dynv3Q = ((y-@dynv3aQ)*@dynv3bQ)^@dynv3cQ endif if @dynv5Q == true dynv5Q = ((y-@dynv5aQ)*@dynv5bQ)^@dynv5cQ else dynv5Q = ((xx-@dynv5aQ)*@dynv5bQ)^@dynv5cQ endif if @dynv6Q == true dynv6Q = ((y-@dynv6aQ)*@dynv6bQ)^@dynv6cQ else dynv6Q = ((xx-@dynv6aQ)*@dynv6bQ)^@dynv6cQ endif float dyn1Q = 0 float dyn4Q = 0 if @dynflavorQ == true dyn1Q = cabs(@dynfn1Q(dynv1Q)) dyn4Q = cabs(@dynfn4Q(dynv4Q)) else dyn1Q = real(@dynfn1Q(dynv1Q)) dyn4Q = real(@dynfn4Q(dynv4Q)) endif if @dynOpQ == "1" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "2" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "3" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "4" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "5" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "6" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "7" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "8" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q + real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "9" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "10" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "11" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "12" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q + imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "13" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "14" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "15" x = dyn1Q + real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q + imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) elseif @dynOpQ == "16" x = dyn1Q - real(@dhxQ * @dynfn2Q(dynv2Q - real(@daQ) * \ @dynfn3Q(real(@dbQ) * dynv3Q))) y = dyn4Q - imag(@dhxQ * @dynfn5Q(dynv5Q - imag(@daQ) * \ @dynfn6Q(imag(@dbQ) * dynv6Q))) endif elseif @formulaQ == "Tanglewood" if @twsv1Q == true twsv1Q = ((y-@twsv1aQ)*@twsv1bQ)^@twsv1cQ twsv5Q = ((x-@twsv5aQ)*@twsv5bQ)^@twsv5cQ else twsv1Q = ((x-@twsv1aQ)*@twsv1bQ)^@twsv1cQ twsv5Q = ((y-@twsv5aQ)*@twsv5bQ)^@twsv5cQ endif if @twsv2Q == true twsv2Q = ((y-@twsv2aQ)*@twsv2bQ)^@twsv2cQ else twsv2Q = ((xx-@twsv2aQ)*@twsv2bQ)^@twsv2cQ endif if @twsv3Q == true twsv3Q = ((y-@twsv3aQ)*@twsv3bQ)^@twsv3cQ else twsv3Q = ((xx-@twsv3aQ)*@twsv3bQ)^@twsv3cQ endif if @twsv4Q == true twsv4Q = ((xx-@twsv4aQ)*@twsv4bQ)^@twsv4cQ else twsv4Q = ((y-@twsv4aQ)*@twsv4bQ)^@twsv4cQ endif if @twsv6Q == true twsv6Q = ((xx-@twsv6aQ)*@twsv6bQ)^@twsv6cQ else twsv6Q = ((y-@twsv6aQ)*@twsv6bQ)^@twsv6cQ endif if @twsv7Q == true twsv7Q = ((xx-@twsv7aQ)*@twsv7bQ)^@twsv7cQ else twsv7Q = ((y-@twsv7aQ)*@twsv7bQ)^@twsv7cQ endif if @twsv8Q == true twsv8Q = ((y-@twsv8aQ)*@twsv8bQ)^@twsv8cQ else twsv8Q = ((xx-@twsv8aQ)*@twsv8bQ)^@twsv8cQ endif float tang1Q = 0 float tang5Q = 0 if @twsFlavor1Q == true tang1Q = cabs(@twsfn1Q(twsv1Q)) tang5Q = cabs(@twsfn5Q(twsv5Q)) else tang1Q = real(@twsfn1Q(twsv1Q)) tang5Q = real(@twsfn5Q(twsv5Q)) endif if @twsOp1Q == "1" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "2" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "3" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "4" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "5" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "6" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "7" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "8" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "9" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "10" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "11" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "12" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "13" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "14" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "15" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "16" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "17" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "18" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "19" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "20" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "21" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "22" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "23" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "24" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "25" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "26" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "27" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "28" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "29" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "30" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "31" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "32" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q + @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "33" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "34" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "35" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "36" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "37" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "38" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "39" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "40" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "41" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "42" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "43" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "44" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "45" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "46" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "47" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "48" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q + @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "49" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "50" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "51" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "52" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "53" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "54" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "55" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "56" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q + \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "57" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "58" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "59" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "60" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q + \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "61" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "62" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "63" newx = tang1Q - real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q - real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) elseif @twsOp1Q == "64" newx = tang1Q + real(@twsh1Q * @twsfn2Q(twsv2Q - \ @twsfn3Q(@twa1Q * (twsv3Q - @twsfn4Q(@twb1Q * twsv4Q))))) newy = tang5Q + real(@twsh1bQ * @twsfn6Q(twsv6Q - \ @twsfn7Q(@twa1bQ * (twsv7Q - @twsfn8Q(@twb1bQ * twsv8Q))))) endif if @twsv9Q == true twsv9Q = ((newy-@twsv9aQ)*@twsv9bQ)^@twsv9cQ twsv13Q = ((newx-@twsv13aQ)*@twsv13bQ)^@twsv13cQ else twsv9Q = ((newx-@twsv9aQ)*@twsv9bQ)^@twsv9cQ twsv13Q = ((newy-@twsv13aQ)*@twsv13bQ)^@twsv13cQ endif if @twsv10Q == true twsv10Q = ((y-@twsv10aQ)*@twsv10bQ)^@twsv10cQ else twsv10Q = ((xx-@twsv10aQ)*@twsv10bQ)^@twsv10cQ endif if @twsv11Q == true twsv11Q = ((y-@twsv11aQ)*@twsv11bQ)^@twsv11cQ else twsv11Q = ((xx-@twsv11aQ)*@twsv11bQ)^@twsv11cQ endif if @twsv12Q == true twsv12Q = ((xx-@twsv12aQ)*@twsv12bQ)^@twsv12cQ else twsv12Q = ((y-@twsv12aQ)*@twsv12bQ)^@twsv12cQ endif if @twsv14Q == true twsv14Q = ((y-@twsv14aQ)*@twsv14bQ)^@twsv14cQ else twsv14Q = ((xx-@twsv14aQ)*@twsv14bQ)^@twsv14cQ endif if @twsv15Q == true twsv15Q = ((xx-@twsv15aQ)*@twsv15bQ)^@twsv15cQ else twsv15Q = ((y-@twsv15aQ)*@twsv15bQ)^@twsv15cQ endif if @twsv16Q == true twsv16Q = ((y-@twsv16aQ)*@twsv16bQ)^@twsv16cQ else twsv16Q = ((xx-@twsv16aQ)*@twsv16bQ)^@twsv16cQ endif if @twsOp2Q == "1" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "2" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "3" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "4" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "5" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "6" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "7" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "8" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "9" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "10" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "11" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "12" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "13" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "14" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "15" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "16" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "17" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "18" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "19" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "20" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "21" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "22" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "23" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "24" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "25" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "26" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "27" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "28" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "29" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "30" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "31" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "32" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q + @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "33" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "34" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "35" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "36" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "37" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "38" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "39" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "40" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "41" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "42" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "43" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "44" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "45" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "46" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "47" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "48" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q + @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "49" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "50" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "51" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "52" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "53" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "54" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "55" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "56" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q + \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "57" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "58" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "59" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "60" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q + \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "61" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "62" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "63" x = real(@twsfn9Q(twsv9Q)) + real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) + real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) elseif @twsOp2Q == "64" x = real(@twsfn9Q(twsv9Q)) - real(@twsh2Q * @twsfn10Q(twsv10Q - \ @twsfn11Q(@twa2Q * (twsv11Q - @twsfn12Q(@twb2Q * twsv12Q))))) y = real(@twsfn13Q(twsv13Q)) - real(@twsh2bQ * @twsfn14Q(twsv14Q - \ @twsfn15Q(@twa2bQ * (twsv15Q - @twsfn16Q(@twb2bQ * twsv16Q))))) endif elseif @formulaQ == "Twirl" if @twv1Q == true twv1Q = ((y-@twv1aQ)*@twv1bQ)^@twv1cQ twv6Q = ((x-@twv6aQ)*@twv6bQ)^@twv6cQ else twv1Q = ((x-@twv1aQ)*@twv1bQ)^@twv1cQ twv6Q = ((y-@twv6aQ)*@twv6bQ)^@twv6cQ endif if @twv2Q == true twv2Q = ((y-@twv2aQ)*@twv2bQ)^@twv2cQ else twv2Q = ((xx-@twv2aQ)*@twv2bQ)^@twv2cQ endif if @twv3Q == true twv3Q = ((xx-@twv3aQ)*@twv3bQ)^@twv3cQ else twv3Q = ((y-@twv3aQ)*@twv3bQ)^@twv3cQ endif if @twv4Q == true twv4Q = ((y-@twv4aQ)*@twv4bQ)^@twv4cQ else twv4Q = ((xx-@twv4aQ)*@twv4bQ)^@twv4cQ endif if @twv5Q == true twv5Q = ((xx-@twv5aQ)*@twv5bQ)^@twv5cQ else twv5Q = ((y-@twv5aQ)*@twv5bQ)^@twv5cQ endif if @twv7Q == true twv7Q = ((xx-@twv7aQ)*@twv7bQ)^@twv7cQ else twv7Q = ((y-@twv7aQ)*@twv7bQ)^@twv7cQ endif if @twv8Q == true twv8Q = ((y-@twv8aQ)*@twv8bQ)^@twv8cQ else twv8Q = ((xx-@twv8aQ)*@twv8bQ)^@twv8cQ endif if @twv9Q == true twv9Q = ((xx-@twv9aQ)*@twv9bQ)^@twv9cQ else twv9Q = ((y-@twv9aQ)*@twv9bQ)^@twv9cQ endif if @twv10Q == true twv10Q = ((xx-@twv10aQ)*@twv10bQ)^@twv10cQ else twv10Q = ((y-@twv10aQ)*@twv10bQ)^@twv10cQ endif float twirl1Q = 0 float twirl6Q = 0 if @twiFlavorQ == true twirl1Q = cabs(@twfn1Q(twv1Q)) twirl6Q = cabs(@twfn6Q(twv6Q)) else twirl1Q = real(@twfn1Q(twv1Q)) twirl6Q = real(@twfn6Q(twv6Q)) endif if @twiOpQ == "1" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "2" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "3" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "4" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "5" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "6" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "7" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "8" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "9" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "10" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "11" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "12" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "13" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "14" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "15" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "16" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "17" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "18" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "19" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "20" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "21" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "22" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "23" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "24" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "25" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "26" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "27" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "28" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "29" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "30" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "31" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "32" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q + @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "33" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "34" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "35" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "36" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "37" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "38" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "39" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "40" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "41" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "42" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "43" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "44" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "45" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "46" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "47" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "48" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q + @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "49" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "50" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "51" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "52" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "53" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "54" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "55" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "56" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "57" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "58" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "59" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "60" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q + @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q + @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "61" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "62" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "63" x = twirl1Q + real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q + real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) elseif @twiOpQ == "64" x = twirl1Q - real(@thQ * @twfn2Q(twv2Q - @twfn3Q(real(@taQ) * \ (twv3Q - @twfn4Q(real((@tbQ) *twv4Q))))))*real(@twfn5Q(twv5Q)) y = twirl6Q - real(@th2Q * @twfn7Q(twv7Q - @twfn8Q(imag(@taQ) * \ (twv8Q - @twfn9Q(imag((@tbQ) *twv9Q))))))*real(@twfn10Q(twv10Q)) endif elseif @formulaQ == "Driftwood" if @tgwv1Q == true tgwv1Q = ((y-@tgwv1aQ)*@tgwv1bQ)^@tgwv1cQ tgwv5Q = ((x-@tgwv5aQ)*@tgwv5bQ)^@tgwv5cQ else tgwv1Q = ((x-@tgwv1aQ)*@tgwv1bQ)^@tgwv1cQ tgwv5Q = ((y-@tgwv5aQ)*@tgwv5bQ)^@tgwv5cQ endif if @tgwv2Q == true tgwv2Q = ((y-@tgwv2aQ)*@tgwv2bQ)^@tgwv2cQ else tgwv2Q = ((xx-@tgwv2aQ)*@tgwv2bQ)^@tgwv2cQ endif if @tgwv3Q == true tgwv3Q = ((xx-@tgwv3aQ)*@tgwv3bQ)^@tgwv3cQ else tgwv3Q = ((y-@tgwv3aQ)*@tgwv3bQ)^@tgwv3cQ endif if @tgwv4Q == true tgwv4Q = ((xx-@tgwv4aQ)*@tgwv4bQ)^@tgwv4cQ else tgwv4Q = ((y-@tgwv4aQ)*@tgwv4bQ)^@tgwv4cQ endif if @tgwv6Q == true tgwv6Q = ((y-@tgwv6aQ)*@tgwv6bQ)^@tgwv6cQ else tgwv6Q = ((xx-@tgwv6aQ)*@tgwv6bQ)^@tgwv6cQ endif float drift1Q = 0 float drift5Q = 0 if @tgwFlavor1Q == true drift1Q = cabs(@tgwfn1Q(tgwv1Q)) drift5Q = cabs(@tgwfn5Q(tgwv5Q)) else drift1Q = real(@tgwfn1Q(tgwv1Q)) drift5Q = real(@tgwfn5Q(tgwv5Q)) endif if @tgwOp1Q == "1" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "2" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "3" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "4" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "5" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "6" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "7" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "8" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q + \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "5" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q - \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "6" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q - \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "7" newx = drift1Q - real(@tgwh1Q * @tgwfn2Q(tgwv2Q - \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q - imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) elseif @tgwOp1Q == "8" newx = drift1Q + real(@tgwh1Q * @tgwfn2Q(tgwv2Q - \ @tgwfn3Q(real(@tgwa1Q) * (tgwv3Q + @tgwfn4Q(real(@tgwb1Q) * tgwv4Q))))) newy = drift5Q + imag(@tgwh1Q * @tgwfn6Q(tgwv6Q)) endif if @tgwv7Q == true tgwv7Q = ((newy-@tgwv7aQ)*@tgwv7bQ)^@tgwv7cQ tgwv11Q = ((newx-@tgwv11aQ)*@tgwv11bQ)^@tgwv11cQ else tgwv7Q = ((newx-@tgwv7aQ)*@tgwv7bQ)^@tgwv7cQ tgwv11Q = ((newy-@tgwv11aQ)*@tgwv11bQ)^@tgwv11cQ endif if @tgwv8Q == true tgwv8Q = ((xx-@tgwv8aQ)*@tgwv8bQ)^@tgwv8cQ else tgwv8Q = ((y-@tgwv8aQ)*@tgwv8bQ)^@tgwv8cQ endif if @tgwv9Q == true tgwv9Q = ((y-@tgwv9aQ)*@tgwv9bQ)^@tgwv9cQ else tgwv9Q = ((xx-@tgwv9aQ)*@tgwv9bQ)^@tgwv9cQ endif if @tgwv10Q == true tgwv10Q = ((xx-@tgwv10aQ)*@tgwv10bQ)^@tgwv10cQ else tgwv10Q = ((y-@tgwv10aQ)*@tgwv10bQ)^@tgwv10cQ endif if @tgwv12Q == true tgwv12Q = ((xx-@tgwv12aQ)*@tgwv12bQ)^@tgwv12cQ else tgwv12Q = ((y-@tgwv12aQ)*@tgwv12bQ)^@tgwv12cQ endif if @tgwOp2Q == "1" x = real(@tgwfn7Q(tgwv7Q)) - real(@tgwh2Q * @tgwfn8Q(tgwv8Q + \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) + imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "2" x = real(@tgwfn7Q(tgwv7Q)) + real(@tgwh2Q * @tgwfn8Q(tgwv8Q + \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) - imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "3" x = real(@tgwfn7Q(tgwv7Q)) + real(@tgwh2Q * @tgwfn8Q(tgwv8Q + \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) + imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "4" x = real(@tgwfn7Q(tgwv7Q)) - real(@tgwh2Q * @tgwfn8Q(tgwv8Q + \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) - imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "5" x = real(@tgwfn7Q(tgwv7Q)) - real(@tgwh2Q * @tgwfn8Q(tgwv8Q - \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) + imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "6" x = real(@tgwfn7Q(tgwv7Q)) + real(@tgwh2Q * @tgwfn8Q(tgwv8Q - \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) - imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "7" x = real(@tgwfn7Q(tgwv7Q)) + real(@tgwh2Q * @tgwfn8Q(tgwv8Q - \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) + imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) elseif @tgwOp2Q == "8" x = real(@tgwfn7Q(tgwv7Q)) - real(@tgwh2Q * @tgwfn8Q(tgwv8Q - \ @tgwfn8Q(real(@tgwa2Q) * (tgwv9Q + @tgwfn10Q(real(@tgwb2Q) * tgwv10Q))))) y = real(@tgwfn11Q(tgwv11Q)) - imag(@tgwh2Q * @tgwfn12Q(tgwv12Q)) endif endif endif i = i + 1 endwhile x = real(@fnx2((x-@pvol2a)*@pvol2b)^ @pvol2) y = real(@fny2((y-@pvol3a)*@pvol3b) ^ @pvol3) IF @nuflav == true IF @nuflav2 == true IF @opxy == "X+Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) + @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "X-Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) - @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "Y-X" z = @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b))-@nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) ENDIF ELSE IF @opxy == "X+Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) + flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "X-Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) - flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "Y-X" z = flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b))-@nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) ENDIF ENDIF IF @opadd == "None" z = z ELSEIF @opadd == "+(X+Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x + \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X+Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x + \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(X-Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x - \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd== "-(X-Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x - \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y-X)" z = z + (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y - \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y-X)" z = z - (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y - \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "+(X*Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x * \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X*Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x * \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(X/Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x / \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X/Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x / \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y/X)" z = z + (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y / \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y/X)" z = z - (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y / \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "+(X^Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x ^ \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X^Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x ^ \ @nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y^X)" z = z + (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y ^ \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y^X)" z = z - (@nufuncxty(flip((y-@xtra1y)*@xtra2y)^@xtra3y ^ \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ENDIF ELSE IF @nuflav2 == true IF @opxy == "X+Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) + @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "X-Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) - @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "Y-X" z = @nufny2(((flip(y-@pvol3a)*@pvol3)^@pvol3b))-@nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) ENDIF ELSE IF @opxy == "X+Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) + flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "X-Y" z = @nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) - flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b)) ELSEIF @opxy == "Y-X" z = flip(((@nufny2(y-@pvol3a)*@pvol3)^@pvol3b))-@nufnx2(((x-@pvol2a)*@pvol2)^ @pvol2b) ENDIF ENDIF IF @varType == "Normal" z = z ELSEIF @varType == "Modulus" z = |z| ELSEIF @varType == "Atan2" z = atan2(z) ELSEIF @varType == "Real" z = real(z) ELSEIF @varType == "Imag" z = imag(z) ENDIF IF @opadd == "None" z = z ELSEIF @opadd == "+(X+Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x + \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X+Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x + \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(X-Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x - \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd== "-(X-Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x - \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y-X)" z = z + (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y - \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y-X)" z = z - (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y - \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "+(X*Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x * \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X*Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x * \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(X/Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x / \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X/Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x / \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y/X)" z = z + (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y / \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y/X)" z = z - (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y / \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "+(X^Y)" z = z + (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x ^ \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "-(X^Y)" z = z - (@nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x ^ \ flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y)) ELSEIF @opadd == "+(Y^X)" z = z + (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y ^ \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ELSEIF @opadd == "-(Y^X)" z = z - (flip(@nufuncxty((y-@xtra1y)*@xtra2y)^@xtra3y ^ \ @nufuncxtx((x-@xtra1x)*@xtra2x)^@xtra3x)) ENDIF ENDIF IF @zmod == "Normal" tz = z ELSEIF @zmod == "Modulus" tz = |z| ELSEIF @zmod == "Atan 2" tz = atan2(z) ELSEIF @zmod == "Real" tz = real(z) ELSEIF @zmod == "Imag" tz = imag(z) ENDIF IF @loop == "Simple" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 ELSEIF @loop == "Complex" IF @op4 == "+" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 + @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "+" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 - @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "*" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 * @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "/" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 / @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ELSEIF @op4 == "^" IF @op3 == "+" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 + @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "-" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 - @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "*" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 * @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "/" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 / @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ELSEIF @op3 == "^" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ^ @fnc((c-@cpar1)*@cpar2)^@cpar3 + \ @fnzz((tz-@zzpar1)*@zzpar2)^@zzpar3 ^ @fncc((c-@ccpar1)*@ccpar2)^@ccpar3 ENDIF ENDIF ELSEIF @loop == "None" z = @fnz((z-@zpar1)*@zpar2)^@zpar3 ENDIF if @looptype == "Mandelbrot" z = @mandfn1(z-@mandpar1)^@mandpar2+(c-@mandpar3) elseif @looptype == "Toby's Lambda" z = @lamfn1(z-@lampar1)^@lampar2*(c-@lampar3) elseif @looptype == "Talis" z = @talisfn((z-@talispar1)^@talispar2)*z/(@talispar3+z)-c elseif @looptype == "Talis 2" z = @talisfn((z-@talispar1)^@talispar2)*z/(@talispar3+z)+c elseif @looptype == "Phoenix" newz = @phofn1(z-@phopar1)^@phopar2+@phofn2(z-@phopar3)^@phopar4*c \ +@phopar5*@phofn3(aa-@phopar6) aa = z z = newz elseif @looptype == "Classic Lambda" z = c*@clamfn(z-@clampar1)*(@clampar2-z)^(@clampar3-1) endif bailout: (@bailtype == 0 && iter <= @bail) || \ (@bailtype == 1 && (iter <= @bail && |z| <= @bail)) || \ (@bailtype == 2 && |z| <= @bail) || \ (@bailtype == 3 && sqr(real(z)) <= @bail) || \ (@bailtype == 4 && sqr(imag(z)) <= @bail) || \ (@bailtype == 5 && (sqr(real(z)) <= @bail && sqr(imag(z)) < @bail)) || \ (@bailtype == 6 && (sqr(real(z)) <= @bail || sqr(imag(z)) < @bail)) || \ (@bailtype == 7 && (sqr(abs(real(z)) + abs(imag(z))) <= @bail)) || \ (@bailtype == 8 && (sqr(real(z) + imag(z)) <= @bail)|| \ (@bailtype == 9 && real(@bailfunc(z)) <= @bail)) default: title = "Plastic Fantastic" param version caption = "Version" default = 1.0 visible = false endparam heading caption = "Switch Parameters" visible = @show endheading param mode caption = "Current Mode" enum = "Mandelbrot""Julia" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot""Julia" default = 1 enabled = false visible = false endparam param show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param sscale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam int param begex caption = "User Mode" enum = "Simple""Advanced" default = 0 endparam heading caption = "Initial Section" endheading bool param np caption = "Initial Section" default = true endparam param select caption = "Z Mode" enum = "z""z+c""z-c""c-z""z*c""z/c""z+c|z+c""z+c|c-z""z+c|z*c"\ "z+c|z/c""z-c|z-c""z-c|c-z""z-c|z*c""z-c|z/c""c-z|z*c""c-z|z/c"\ "z*c|c-z""z*c|z*c""z/c|z+c""z/c|z-c""z/c|c-z""z/c|z/c"\ "z*c+(Rz+Iz)""z/c+(Rz+Iz)""z/c-(Rz+Iz)""z*c-+(Rz+Iz)"\ "z/c-+(Rz+Iz)""z*c+(Rz+Iz)|z+c""z*c+(Rz+Iz)|z-c""z*c+(Rz+Iz)|c-z"\ "z*c+(Rz+Iz)|z*c""z*c+(Rz+Iz)|z/c" default = 0 hint = "Determines the initial definition of Z" endparam complex param zg caption = "Z Param 1" default = (0,0) visible = @np endparam complex param ezg caption = "Z Param 2" default = (1,0) visible = @np endparam complex param cg caption = "C Param 1" default = (0,0) visible = @np && @select != 0 endparam complex param cmg caption = "C Param 2" default = (1,0) visible = @np && @select != 0 endparam complex param ecg caption = "C Param 3" default = (1,0) visible = @np && @select != 0 endparam func fnzInit caption = "init Z Func" default = ident() hint = "Applies a function to the initial Z" endfunc func fncInit caption = "Init C Func" default = ident() visible = @select != 0 hint = "Applies a function to the initial C" endfunc func ssfn caption = "Switch Seed Func" default = ident() hint = "Applies a function to the initial Z" endfunc func pixfn caption = "Switch Pixel Func" default = ident() hint = "Applies a function to the initial C" endfunc heading caption = "Loop Parameters and Functions" endheading int param looptype caption = "Loop" enum = "Mandelbrot""Toby's Lambda""Talis""Talis 2""Phoenix""Classic Lambda" default = 0 endparam complex param startseed caption = "Start/Seed" default = (0,0) hint = "Defines the Init Z value for the Mandelbrot, \ seed value for the Julia." endparam int param bail caption = "Bailout" default = 20 endparam int param bailtype caption = "Bailout flavor" enum = "Iter""Iter + Mod(Z)""Mod(Z)""Real(Z)" "Mag(Z)""Or" "And"\ "Manh""Manh""Function(Z)" default = 2 hint = "Defines the method by which the bailout is accomplished" endparam func bailfunc caption = "Bailout Function" default = ident () visible = (@bailtype == 9) endfunc complex param mandpar1 caption = "Mandel Offset" default = (0,0) visible = @looptype == 0 endparam complex param mandpar2 caption = "Mandel Exponent" default = (2,0) visible = @looptype == 0 endparam complex param mandpar3 caption = "Pixel Offset" default = (0,0) visible = @looptype == 0 endparam func mandfn1 caption = "Mandel Fn" default = ident () visible = @looptype == 0 endfunc complex param lampar1 caption = "Lambda Offset" default = (0,0) visible = @looptype == 1 endparam complex param lampar2 caption = "Lambda Exponent" default = (1,0) visible = @looptype == 1 endparam complex param lampar3 caption = "Pixel Offset" default = (0,0) visible = @looptype == 1 endparam func lamfn1 caption = "Lambda Fn" default = ident () visible = @looptype == 1 endfunc complex param talispar1 caption = "Talis Offset" default = (0,0) visible = @looptype == 2 || @looptype == 3 endparam complex param talispar2 caption = "Talis Exponent" default = (1,0) visible = @looptype == 2 || @looptype == 3 endparam complex param talispar3 caption = "Talis Parameter" default = (1,0) visible = @looptype == 2 || @looptype == 3 endparam func talisfn caption = "Talis Fn" default = ident () visible = @looptype == 2 || @looptype == 3 endfunc func talisfn2 caption = "Talis Pixel Fn" default = ident () visible = @looptype == 2 || @looptype == 3 endfunc complex param phopar1 caption = "Phoenix Offset I" default = (0,0) visible = @looptype == 4 endparam complex param phopar2 caption = "Phoenix Exponent I" default = (2,0) visible = @looptype == 4 endparam complex param phopar3 caption = "Phoenix Offset II" default = (0,0) visible = @looptype == 4 && @phopar4 != (0,0) endparam complex param phopar4 caption = "Phoenix Exponent II" default = (0,0) visible = @looptype == 4 endparam complex param phopar5 caption = "Phoenix Distortion" default = (.5,0) visible = @looptype == 4 endparam complex param phopar6 caption = "Phoenix Offset III" default = (0,0) visible = @looptype == 4 endparam func phofn1 caption = "Phoenix Fn I" default = ident () visible = @looptype == 4 endfunc func phofn2 caption = "Phoenix Fn II" default = ident () visible = @looptype == 4 && @phopar4 != (0,0) endfunc func phofn3 caption = "Phoenix Fn III" default = ident () visible = @looptype == 4 endfunc complex param clampar1 caption = "Lambda Offset I" default = (0,0) visible = @looptype == 5 endparam complex param clampar2 caption = "Lambda Param" default = (1,0) visible = @looptype == 5 endparam complex param clampar3 caption = "Lambda Exponent" default = (2,0) visible = @looptype == 5 endparam func clamfn caption = "Lambda Fn" default = ident () visible = @looptype == 5 endfunc heading caption = "Global Distortion Parameters" endheading param loop caption = "Extra Loop Type" enum = "Simple""Complex""None" default = 2 endparam int param zmod caption = "2nd Loop Z Definition" enum = "Normal""Modulus""Atan 2""Real""Imag" default = 0 visible = @loop == "Complex" endparam int param varType caption = "X/Y Species" enum = "Normal""Modulus""Atan2""Real""Imag" default = 0 endparam int param opxy caption = "X/Y Operator" enum = "X+Y""X-Y""Y-X" default = 0 hint = "The last two choices add an extra set of X and Y values to the \ definition of Z whose strength and associated functions can \ be varied according to the parameters below" visible = @pat && @varType != "Modulus" endparam func nufnx2 caption = "X Function" default = ident () endfunc func nufny2 caption = "Y Function" default = ident () endfunc bool param nuflav2 caption = "Change Y Fn Flavor" default = false endparam int param opadd caption = "Extra X/Y" enum = "None""+(X+Y)""-(X+Y)""+(X-Y)""-(X-Y)""+(Y-X)""-(Y-X)""+(X*Y)"\ "-(X*Y)""+(X/Y)""-(X/Y)""+(Y/X)""-(Y/X)""+(X^Y)""-(X^Y)""+(Y^X)""-(Y^X)" default = 0 visible = @pat endparam func nufuncxtx caption = "Extra X Fn" default = sin() hint = "Varies the function associated with the X variable in the \ extra X/Y set." visible = @pat && @opadd > 0 endfunc func nufuncxty caption = "Extra Y Fn" default = sin() hint = "Varies the function associated with the Y variable in the \ extra X/Y set." visible = @pat && @opadd > 0 endfunc bool param nuflav caption = "Change Extra Y Fn Flavor" default = false visible = @opadd > 0 endparam complex param xtra1x caption = "Extra X Offset" default = (0,0) hint = "Varies the offset in the extra X/Y set" visible = @opadd > 0 endparam complex param xtra2x caption = "Extra X Strength" default = (1,0) hint = "Varies the strength in the extra X/Y set" visible = @opadd > 0 endparam complex param xtra3x caption = "Extra X Power" default = (1,0) hint = "Varies the offset in the extra X/Y set" visible = @opadd > 0 endparam complex param xtra1y caption = "Extra Y Offset" default = (0,0) hint = "Varies the offset in the extra X/Y set" visible = @opadd > 0 endparam complex param xtra2y caption = "Extra Y Strength" default = (1,0) hint = "Varies the strength in the extra X/Y set" visible = @opadd > 0 endparam complex param xtra3y caption = "Extra Y Power" default = (1,0) hint = "Varies the offset in the extra X/Y set" visible = @opadd > 0 endparam heading caption = "Pattern Distortion Parameters" endheading bool param pat caption = "All Distortion Parameters" default = true visible = @iters !=0 endparam int param seq caption = "Formula Scenario" enum = "Single""Modulated""Blend" default = 0 hint = "Defines if and how the effects of two different formulae are used \ to determine how the elements are colored. 'Single' uses only one \ formula. 'Modulated' uses a second formula after a user-determined \ number of iterations, however in this formula the effect is \ a type of blend. 'Blend' mixes the effects of two different \ formuale" visible = @patPar && @pat && (@iters !=0) endparam int param modCmp caption = "Mod Intensity" default = 3 hint = "At what iteration the modulation starts. If '0' all iters are \ of modulation formula. In this formula the effect does not \ create sets of discrete elements, but varies the look of \ all the elements" visible = @seq == "Modulated" && @pat && (@iters !=0) endparam int param modBy caption = "Mod Depth" default = 2 hint = "How many iterations of 2nd formula are present. In this formula \ the effect does not create sets of discrete elements, but varies \ the look of all the elements" visible = @seq == "Modulated" && @pat && (@iters !=0) endparam int param randomseed caption = "Random Seed" default = 123456 hint = "Affects how the two formuale are mixed in 'Blend' mode" visible = @seq == "Blend" && @pat && (@iters !=0) endparam float param prob1 caption = "Blend Proportion" default = 0.5 min = 0.0 max = 1.0 hint = "Determines the predominance of one or the other formula \ using 'Blend' mode. In this formula the effect is often \ 'either/or', and depends somewhat on the value of the \ random seed" visible = @seq == "Blend" && @pat && (@iters !=0) endparam int param blendFn caption = "Blending Function" enum = "abs""ident""tan""sin""sinh (fixed value)""cos" \ "cosh (fixed value)""acos""exp (fixed value)" default = 0 hint = "Changes the way the formulae are blended to create \ the element shapes using 'Blend'. 'sinh', 'cosh' \ and 'exp' do not respond to changes in 'Blend \ Proportion'" visible = @seq == "Blend" && @pat && (@iters !=0) endparam int param iters caption = "# of Formula Iters" default = 1 min = 0 hint = "How many times the formula pattern is iterated before going \ into the loop. Larger values render more slowly and create \ more complex distortion patterns." visible = @pat endparam complex param scale caption = "Emphasis" default = (1,0) hint = "Changes the sizes and shapes of the elements" visible = @pat && (@iters !=0) endparam float param exr caption = "Deform 1" default = 1 hint = "Changes the sizes and shapes of the elements" visible = @begex == 1 && @pat && (@iters !=0) endparam float param pp2 caption = "Deform 2" default = 1 hint = "Changes the sizes and shapes of the elements" visible = @begex == 1 && @pat && (@iters !=0) endparam float param scale2 caption = "X Intensity (pre)" default = 1 hint = "Changes the value of X at the top of the loop" visible = @begex == 1 && @pat endparam float param pvol2a caption = "X Offset" default = 0 hint = "Changes the pattern distribution on the real axis" visible = @begex == 1 && @pat endparam float param pvol2b caption = "X Strength" default = 1 hint = "Changes the pattern distribution on the real axis" visible = @begex == 1 && @pat endparam float param pvol2 caption = "X Exponent" default = 1 hint = "Changes the pattern distribution on the real axis" visible = @begex == 1 && @pat endparam float param scale3 caption = "Y Intensity (pre)" default = 1 hint = "Changes the value of Y at the top of the loop" visible = @begex == 1 && @pat endparam float param pvol3a caption = "Y Offset" default = 0 hint = "Changes the pattern distribution on the imaginary axis" visible = @begex == 1 && @pat endparam float param pvol3b caption = "Y Strength" default = 1 hint = "Changes the pattern distribution on the imaginary axis" visible = @begex == 1 && @pat endparam float param pvol3 caption = "Y Exponent" default = 1 hint = "Changes the pattern distribution on the imaginary axis" visible = @begex == 1 && @pat endparam complex param offset1 caption = "Offset" default = (0,0) visible = @begex == 1 && @pat endparam complex param paramP3 caption = "Offset 2" default = (0,0) visible = @begex == 1 && @pat endparam float param distD caption = "Edge 1" default = 0 hint = "Creates an 'edge' around the elements" visible = @begex == 1 && @pat endparam float param distE caption = "Edge 2" default = 1 hint = "Creates an 'edge' around the elements" visible = @begex == 1 && @pat endparam complex param distF caption = "Edge 3" default = (1,0) hint = "Creates an 'edge' around the elements" visible = @begex == 1 && @pat endparam heading caption = "'Single' Formula Parameters" visible = @patPar && @pat && (@iters !=0) endheading bool param patPar caption = "'Single' Formula Parameters" default = true visible = @pat && (@iters !=0) endparam param formula caption = "Formula Type" enum = "Martin" "Popcorn" "Vine" "Glyph" "Gnarl" "Hopalong" "Dynamic" \ "Tanglewood""Twirl""Driftwood" default = 4 visible = @patPar && @pat && (@iters !=0) endparam heading caption = "Martin Parameters" visible = @formula == 0 && @patPar && @pat && (@iters !=0) endheading bool param martV1 caption = "Change 1st Variable" default = false visible = @formula == 0 && @patPar && @pat && (@iters !=0) endparam bool param martV2 caption = "Change 2nd Variable" default = false visible = @formula == 0 && @patPar && @pat && (@iters !=0) endparam bool param martV3 caption = "Change 3rd Variable" default = false visible = @formula == 0 && @patPar && @pat && (@iters !=0) endparam int param martOp caption = "Martin Flavor" enum = "1""2" default = 0 visible = @formula == 0 && @patPar && @pat && (@iters !=0) endparam float param maa caption = "Martin Alpha" default = 0.1;3.14 visible = @formula == 0 && @patPar && @pat && (@iters !=0) endparam complex param mx caption = "Martin X1" default = (0,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat && (@iters !=0) endparam float param mxm caption = "Martin X2" default = 1 visible = @begex == 1 && @formula == 0 && @patPar && @pat && (@iters !=0) endparam complex param mxe caption = "Martin X3" default = (1,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat && (@iters !=0) endparam complex param my caption = "Martin Y1" default = (0,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat && (@iters !=0) endparam complex param mym caption = "Martin Y2" default = (1,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat && (@iters !=0) endparam complex param mye caption = "Martin Y3" default = (1,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat && (@iters !=0) endparam complex param mxx caption = "Martin XX1" default = (0,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat && (@iters !=0) endparam float param mxxm caption = "Martin XX2" default = 1 visible = @begex == 1 && @formula == 0 && @patPar && @pat && (@iters !=0) endparam complex param mxxe caption = "Martin XX3" default = (1,0) visible = @begex == 1 && @formula == 0 && @patPar && @pat && (@iters !=0) endparam bool param martFlav caption = "Symmetry" default = false visible = @formula == 0 && @patPar && @pat && (@iters !=0) endparam func martfn caption = "Martin X Func" default = sin() visible = @formula == 0 && @patPar && @pat && (@iters !=0) endfunc func fnmy1 caption = "Martin Y Func" default = ident() visible = @formula == 0 && @patPar && @pat && (@iters !=0) endfunc func fnmx1 caption = "Martin XX Func" default = ident() visible = @formula == 0 && @patPar && @pat && (@iters !=0) endfunc heading caption = "Vine Parameters" visible = @formula == 2 && @patPar && @pat && (@iters !=0) endheading param flavor caption = "Vine flavor" default = 2 min = 0 visible = @formula == 2 && @patPar && @pat && (@iters !=0) endparam bool param vinV1 caption = "Change Main Variables" default = false visible = @formula == 2 && @patPar && @flavor < 3 && @pat && (@iters !=0) endparam bool param vinV2 caption = "Change 2nd Variable" default = false visible = @formula == 2 && @patPar && @flavor < 3 && @pat && (@iters !=0) endparam bool param vinV3 caption = "Change 3rd Variable" default = false visible = @formula == 2 && @patPar && @flavor < 3 && @pat && (@iters !=0) endparam bool param vinV5 caption = "Change 5th Variable" default = false visible = @formula == 2 && @patPar && @flavor < 3 && @pat && (@iters !=0) endparam bool param vinV6 caption = "Change 6th Variable" default = false visible = @formula == 2 && @patPar && @flavor < 3 && @pat && (@iters !=0) endparam bool param vinV7 caption = "Change 7th Variable" default = false visible = @formula == 2 && (@flavor > 1 && @flavor < 3) && @patPar && @pat \ && (@iters !=0) endparam bool param vinV8 caption = "Change 8th Variable" default = false visible = @formula == 2 && @patPar && (@flavor > 1 && @flavor < 3) && @pat \ && (@iters !=0) endparam int param vinOp1 caption = "Vine Operator 1" enum = "1""2""3""4" default = 0 visible = @formula == 2 && @flavor <3 && @patPar && @pat && (@iters !=0) endparam int param vinOp2c caption = "Vine Operator 2" enum = "1""2""3""4" default = 0 visible = @vinFlavor == true && @formula == 2 && @flavor > 2 && @patPar && \ @pat && (@iters !=0) endparam int param vinOp2r caption = "Vine Operator 2" enum = "1""2""3""4" default = 0 visible = @vinFlavor == false && @formula == 2 && @flavor > 2 && @patPar &&\ @pat && (@iters !=0) endparam int param vinOp3c caption = "Vine Operator 3" enum = "1""2""3""4" default = 0 visible = @vinFlavor == true && @formula == 2 && @flavor > 2 && @patPar && \ @pat && (@iters !=0) endparam int param vinOp3r caption = "Vine Operator 3" enum = "1""2""3""4" default = 0 visible = @vinFlavor == false && @formula == 2 && @flavor > 2 && @patPar &&\ @pat && (@iters !=0) endparam float param va caption = "Vine Alpha" default = 3.0 visible = @formula == 2 && @patPar && @pat && (@iters !=0) endparam float param vb caption = "Vine Beta" default = 2.0 visible = @formula == 2 && (@flavor > 1 && @flavor < 3) && @patPar && @pat \ && (@iters !=0) endparam float param h2r caption = "Step Size (re)" default = 0.05 visible = @formula == 2 && @flavor < 3 && @patPar && @pat && (@iters !=0) endparam float param h2i caption = "Step Size (im)" default = 0.005 visible = @formula == 2 && @flavor < 3 && @patPar && @pat && (@iters !=0) endparam float param h3r caption = "Step Size 2 (re)" default = 0.005 visible = @formula == 2 && @flavor < 3 && @patPar && @pat && (@iters !=0) endparam float param h3i caption = "Step Size 2 (im)" default = 0.05 visible = @formula == 2 && @flavor < 3 && @patPar && @pat && (@iters !=0) endparam float param v1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat endparam float param v2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat\ && (@iters !=0) endparam float param v5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && @flavor < 3 && @pat \ && (@iters !=0) endparam float param v7a caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 && \ @flavor < 3) && @pat && (@iters !=0) endparam float param v7b caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 && \ @flavor < 3) && @pat && (@iters !=0) endparam float param v7c caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 && \ @flavor < 3) && @pat && (@iters !=0) endparam float param v8a caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 \ && @flavor < 3) && @pat && (@iters !=0) endparam float param v8b caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 \ && @flavor < 3) && @pat endparam float param v8c caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formula == 2 && @patPar && (@flavor > 1 && \ @flavor < 3) && @pat && (@iters !=0) endparam bool param vinFlavor caption = "Symmetry" default = false visible = @formula == 2 && @patPar && @pat && (@iters !=0) endparam func vinfnx1 caption = "Vine X Fn" default = ident() visible = @formula == 2 && @patPar && @pat && (@iters !=0) endfunc func vinfny1 caption = "Vine Y Fn" default = ident() visible = @formula == 2 && @patPar && @pat && (@iters !=0) endfunc func vinfnx2 caption = "Vine X Fn 2" default = ident() visible = @formula == 2 && @patPar && @flavor >2 && @pat && (@iters !=0) endfunc func vinfny2 caption = "Vine Y Fn 2" default = ident() visible = @formula == 2 && @flavor >2 && @patPar && @pat && (@iters !=0) endfunc func vinfn1 caption = "Vine Fn 1" default = sin() visible = @formula == 2 && @patPar && @pat && (@iters !=0) endfunc func vinfn2 caption = "Vine Fn 2" default = sin() visible = @formula == 2 && @patPar && @pat && (@iters !=0) endfunc func vinfn3 caption = "Vine Fn 3" default = sin() visible = @formula == 2 && @patPar && @pat && (@iters !=0) endfunc func vinfn4 caption = "Vine Fn 4" default = sin() visible = @formula == 2 && @patPar && @pat && (@iters !=0) endfunc func vinfn5 caption = "Vine Fn 5" default = sin() visible = @formula == 2 && @flavor == 2 && @patPar && @pat && (@iters !=0) endfunc func vinfn6 caption = "Vine Fn 6" default = sin() visible = @formula == 2 && @flavor == 2 && @patPar && @pat && (@iters !=0) endfunc func vinfn7 caption = "Vine Fn 7" default = ident() visible = @formula == 2 && @flavor > 2 && @patPar && @pat && (@iters !=0) endfunc func vinfn8 caption = "Vine Fn 8" default = ident() visible = @formula == 2 && @flavor > 2 && @patPar && @pat && (@iters !=0) endfunc func vinfn9 caption = "Vine Fn 9" default = sin() visible = @formula == 2 && @flavor > 2 && @patPar && @pat && (@iters !=0) endfunc func vinfn10 caption = "Vine Fn 10" default = sin() visible = @formula == 2 && @flavor > 2 && @patPar && @pat && (@iters !=0) endfunc func vinfn11 caption = "Vine Fn 11" default = sin() visible = @formula == 2 && @flavor > 2 && @patPar && @pat && (@iters !=0) endfunc heading caption = "Popcorn Parameters" visible = @formula == 1 && @patPar && @pat && (@iters !=0) endheading int param popflavor1 caption = "1st Flavor" enum = "1""2""3""4" default = 0 visible = @formula == 1 && @patPar && @pat && (@iters !=0) endparam int param popflavor2 caption = "2nd Flavor" enum = "1""2""3""4" default = 0 visible = @formula == 1 && @patPar && @pat && (@iters !=0) endparam bool param v1 caption = "Change 1st Variable" default = false visible = @formula == 1 && @patPar && @pat && (@iters !=0) endparam bool param v2 caption = "Change 2nd Variable" default = false visible = @formula == 1 && @patPar && @pat && (@iters !=0) endparam bool param v3 caption = "Change 3rd Variable" default = false visible = @formula == 1 && @patPar && @pat && (@iters !=0) endparam bool param v4 caption = "Change 4th Variable" default = false visible = @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param popx caption = "X Param" default = 1 visible = @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param popy caption = "Y Param" default = 1 visible = @formula == 1 && @patPar && @pat && (@iters !=0) endparam complex param popc caption = "Constant" default = (3,3) visible = @formula == 1 && @patPar && @pat && (@iters !=0) endparam complex param h1 caption = "Step Size" default = (.005,.005) visible = @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam float param pop4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 1 && @patPar && @pat && (@iters !=0) endparam bool param funcPopType caption = "Symmetry" default = false visible = @formula == 1 && @patPar && @pat && (@iters !=0) endparam func fnpopx caption = "Popcorn X Function" default = ident() visible = @formula == 1 && @patPar && @pat && (@iters !=0) endfunc func fnpopy caption = "Popcorn Y Function" default = ident() visible = @formula == 1 && @patPar && @pat && (@iters !=0) endfunc func popfn1 caption = "Popcorn Fn 1" default = sin() visible = @formula == 1 && @patPar && @pat && (@iters !=0) endfunc func popfn2 caption = "Popcorn Fn 2" default = tan() visible = @formula == 1 && @patPar && @pat && (@iters !=0) endfunc func popfn3 caption = "Popcorn Fn 3" default = sin() visible = @formula == 1 && @patPar && @pat && (@iters !=0) endfunc func popfn4 caption = "Popcorn Fn 4" default = tan() visible = @formula == 1 && @patPar && @pat && (@iters !=0) endfunc heading caption = "Glyph Parameters" visible = @formula == 3 && @patPar && @pat && (@iters !=0) endheading int param glv1 caption = "1st Variable Type" enum = "x""y""newx""newy" default = 1 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glv2 caption = "2nd Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glv3 caption = "3rd Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glv4 caption = "4th Variable Type" enum = "x""y""newx""newy" default = 0 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glv5 caption = "5th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glv6 caption = "6th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glv7 caption = "7th Variable Type" enum = "x""y""newx""newy" default = 0 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glv8 caption = "8th Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formula == 3 && @patPar && @pat&& (@iters !=0) endparam int param glv9 caption = "9th Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glv10 caption = "10th Variable Type" enum = "x""y""newx""newy" default = 1 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glv11 caption = "11th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glv12 caption = "12th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glyOp1 caption = "Operator 1" enum = "1""2""3""4" default = 0 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam int param glyOp2 caption = "Operator 2" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16" default = 0 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param glya caption = "Glyph Alpha" default = 3 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param h4r caption = "Step Size 1 (re)" default = .08 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param h4i caption = "Step Size 1 (im)" default = .08 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param h5r caption = "Step Size 2 (re)" default = .08 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param h5i caption = "Step Size 2 (im)" default = .08 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param h6r caption = "Step Size 3 (re)" default = .005 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param h6i caption = "Step Size 3 (im)" default = .005 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param h7r caption = "Step Size 4 (re)" default = .005 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param h7i caption = "Step Size 4 (im)" default = .005 visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly7a caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly7b caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly7c caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly8a caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly8b caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly8c caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly9a caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly9b caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly9c caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly10a caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly10b caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly10c caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly11a caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly11b caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly11c caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly12a caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly12b caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam float param gly12c caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formula == 3 && @patPar && @pat && (@iters !=0) endparam bool param glyphFlavor1 caption = "Symmetry" default = false visible = @formula == 3 && @patPar && @pat && (@iters !=0) endparam func glyfn1 caption = "Glyph Fn 1" default = cos() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn2 caption = "Glyph Fn 2" default = cos() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn3 caption = "Glyph Fn 3" default = ident() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn4 caption = "Glyph Fn 4" default = ident() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn5 caption = "Glyph Fn 5" default = sin() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn6 caption = "Glyph Fn 6" default = sin() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn7 caption = "Glyph Fn 7" default = sin() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn8 caption = "Glyph Fn 8" default = sin() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn9 caption = "Glyph Fn 9" default = ident() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn10 caption = "Glyph Fn 10" default = ident() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn11 caption = "Glyph Fn 11" default = ident() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn12 caption = "Glyph Fn 12" default = ident() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn13 caption = "Glyph Fn 13" default = cos() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc func glyfn14 caption = "Glyph Fn 14" default = cos() visible = @formula == 3 && @patPar && @pat && (@iters !=0) endfunc heading caption = "Gnarl Parameters" visible = @formula == 4 && @patPar && @pat && (@iters !=0) endheading bool param gn1 caption = "Change Main Variables" default = false visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam bool param gn2 caption = "Change 2nd Variable" default = false visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam bool param gn3 caption = "Change 3rd Variable" default = false visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam bool param gn4 caption = "Change 4th Variable" default = false visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam bool param gn6 caption = "Change 6th Variable" default = false visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam bool param gn7 caption = "Change 7th Variable" default = false visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam bool param gn8 caption = "Change 8th Variable" default = false visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam int param gnOp caption = "Gnarl Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gna caption = "Gnarl Alpha" default = 3 visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gnb caption = "Gnarl Beta" default = 2 visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param h8r caption = "Step Size (re)" default = .005 visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param h8i caption = "Step Size (im)" default = .005 visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn7a caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn7b caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn7c caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn8a caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn8b caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam float param gn8c caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formula == 4 && @patPar && @pat && (@iters !=0) endparam bool param gnFlavor caption = "Symmetry" default = false visible = @formula == 4 && @patPar && @pat && (@iters !=0) endparam func gnfnx caption = "Gnarl Fn 1" default = ident() visible = @formula == 4 && @patPar && @pat && (@iters !=0) endfunc func gnfn1 caption = "Gnarl Fn 2" default = sin() visible = @formula == 4 && @patPar && @pat && (@iters !=0) endfunc func gnfn2 caption = "Gnarl Fn 3" default = sin() visible = @formula == 4 && @patPar && @pat && (@iters !=0) endfunc func gnfn3 caption = "Gnarl Fn 4" default = sin() visible = @formula == 4 && @patPar && @pat && (@iters !=0) endfunc func gnfny caption = "Gnarl Fn 5" default = ident() visible = @formula == 4 && @patPar && @pat && (@iters !=0) endfunc func gnfn4 caption = "Gnarl Fn 6" default = sin() visible = @formula == 4 && @patPar && @pat && (@iters !=0) endfunc func gnfn5 caption = "Gnarl Fn 7" default = sin() visible = @formula == 4 && @patPar && @pat && (@iters !=0) endfunc func gnfn6 caption = "Gnarl Fn 8" default = sin() visible = @formula == 4 && @patPar && @pat && (@iters !=0) endfunc heading caption = "Hopalong Parameters" visible = @formula == 5 && @patPar && @pat && (@iters !=0) endheading float param pA caption = "A" default = 0.4 visible = @formula == 5 && @patPar && @pat && (@iters !=0) endparam float param pB caption = "B" default = 1.0 visible = @formula == 5 && @patPar && @pat && (@iters !=0) endparam float param pC caption = "C" default = 0.0 visible = @formula == 5 && @patPar && @pat && (@iters !=0) endparam float param sx caption = "Spread" default = -1 visible = @formula == 5 && @patPar && @pat && (@iters !=0) endparam float param hop caption = "Depth" default = 0 visible = @formula == 5 && @patPar && @pat && (@iters !=0) endparam bool param hopFlavor caption = "Symmetry" default = false visible = @formula == 5 && @patPar && @pat && (@iters !=0) endparam func fnhop caption = "Hopalong Function" default = ident () visible = @formula == 5 && @patPar && @pat && (@iters !=0) endfunc func fnhop2 caption = "Hopalong Function 2" default = sqrt () visible = @formula == 5 && @patPar && @pat && (@iters !=0) endfunc heading caption = "Dynamic Parameters" visible = @formula == 6 && @patPar && @pat && (@iters !=0) endheading bool param dynv1 caption = "Change Main Variables" default = false visible = @formula == 6 && @patPar && @pat && (@iters !=0) endparam bool param dynv2 caption = "Change 2nd Variable" default = false visible = @formula == 6 && @patPar && @pat && (@iters !=0) endparam bool param dynv3 caption = "Change 3rd Variable" default = false visible = @formula == 6 && @patPar && @pat && (@iters !=0) endparam bool param dynv5 caption = "Change 5th Variable" default = false visible = @formula == 6 && @patPar && @pat && (@iters !=0) endparam bool param dynv6 caption = "Change 6th Variable" default = false visible = @formula == 6 && @patPar && @pat && (@iters !=0) endparam int param dynOp caption = "Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16" default = 0 visible = @formula == 6 && @patPar && @pat && (@iters !=0) endparam complex param da caption = "Dynamic Alpha" default = (3,3) visible = @formula == 6 && @patPar && @pat && (@iters !=0) endparam complex param db caption = "Dynamic Beta" default = (2,2) visible = @formula == 6 && @patPar && @pat && (@iters !=0) endparam complex param dhx caption = "Step Size" default = (.005,.005) visible = @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam float param dynv6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 6 && @patPar && @pat && (@iters !=0) endparam bool param dynFlavor caption = "Symmetry" default = false visible = @formula == 6 && @patPar && @pat && (@iters !=0) endparam func dynfn1 caption = "Dynamic Fn 1" default = ident () visible = @formula == 6 && @patPar && @pat && (@iters !=0) endfunc func dynfn2 caption = "Dynamic Fn 2" default = sin () visible = @formula == 6 && @patPar && @pat && (@iters !=0) endfunc func dynfn3 caption = "Dynamic Fn 3" default = sin () visible = @formula == 6 && @patPar && @pat && (@iters !=0) endfunc func dynfn4 caption = "Dynamic Fn 4" default = ident () visible = @formula == 6 && @patPar && @pat && (@iters !=0) endfunc func dynfn5 caption = "Dynamic Fn 5" default = sin () visible = @formula == 6 && @patPar && @pat && (@iters !=0) endfunc func dynfn6 caption = "Dynamic Fn 6" default = sin () visible = @formula == 6 && @patPar && @pat && (@iters !=0) endfunc heading caption = "Tanglewood Parameters" visible = @formula == 7 && @patPar && @pat && (@iters !=0) endheading bool param twsv1 caption = "Change Main Variables 1" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv9 caption = "Change Main Variables 2" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv2 caption = "Change 2nd Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv3 caption = "Change 3rd Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv4 caption = "Change 4th Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv6 caption = "Change 6th Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv7 caption = "Change 7th Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv8 caption = "Change 8th Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv10 caption = "Change 10th Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv11 caption = "Change 11th Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv12 caption = "Change 12th Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv14 caption = "Change 14th Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv15 caption = "Change 15th Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twsv16 caption = "Change 16th Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam int param TwsOp1 caption = "Operator 1" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam int param TwsOp2 caption = "Operator 2" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twa1 caption = "Tanglewood Alpha 1 (re)" default = 3 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twa1b caption = "Tanglewood Alpha 1 (im)" default = 3 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twa2 caption = "Tanglewood Alpha 2 (re)" default = 3 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twa2b caption = "Tanglewood Alpha 2 (im)" default = 3 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twb1 caption = "Tanglewood Beta 1 (re)" default = 2 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twb1b caption = "Tanglewood Beta 1 (im)" default = 2 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twb2 caption = "Tanglewood Beta 2 (re)" default = 2 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twb2b caption = "Tanglewood Beta 2 (im)" default = 2 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsh1 caption = "Step Size 1 (re)" default = .005 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsh1b caption = "Step Size 1 (im)" default = .005 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsh2 caption = "Step Size 2 (re)" default = .005 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsh2b caption = "Step Size 2 (im)" default = .005 visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && \ @pat && (@iters !=0) endparam float param twsv2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && \ @pat && (@iters !=0) endparam float param twsv5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv7a caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv7b caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv7c caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv8a caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv8b caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv8c caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv9a caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv9b caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv9c caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv10a caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv10b caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv10c caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv11a caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv11b caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv11c caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv12a caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv12b caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv12c caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv13a caption = "13th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv13b caption = "13th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv13c caption = "13th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv14a caption = "14th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv14b caption = "14th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv14c caption = "14th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv15a caption = "15th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv15b caption = "15th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv15c caption = "15th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv16a caption = "16th Variable P1" default = 0 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv16b caption = "16th Variable P2" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && @pat && (@iters !=0) endparam float param twsv16c caption = "16th Variable P3" default = 1 visible = @begex == 1 && @formula == 7 && @patPar && \ @pat && (@iters !=0) endparam bool param twsFlavor1 caption = "Symmetry" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam func twsfn1 caption = "Tanglewood Fn 1" default = ident() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn2 caption = "Tanglewood Fn 2" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn3 caption = "Tanglewood Fn 3" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn4 caption = "Tanglewood Fn 4" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn5 caption = "Tanglewood Fn 5" default = ident() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn6 caption = "Tanglewood Fn 6" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn7 caption = "Tanglewood Fn 7" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn8 caption = "Tanglewood Fn 8" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn9 caption = "Tanglewood Fn 9" default = ident() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn10 caption = "Tanglewood Fn 10" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn11 caption = "Tanglewood Fn 11" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn12 caption = "Tanglewood Fn 12" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn13 caption = "Tanglewood Fn 13" default = ident() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn14 caption = "Tanglewood Fn 14" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn15 caption = "Tanglewood Fn 15" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc func twsfn16 caption = "Tanglewood Fn 16" default = sin() visible = @formula == 7 && @patPar && @pat && (@iters !=0) endfunc heading caption = "Twirl Parameters" visible = @formula == 8 && @patPar && @pat && (@iters !=0) endheading bool param twv1 caption = "Change Main Variables" default = false visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam bool param twv2 caption = "Change 2nd Variable" default = false visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam bool param twv3 caption = "Change 3rd Variable" default = false visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam bool param twv4 caption = "Change 4th Variable" default = false visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam bool param twv5 caption = "Change 5th Variable" default = false visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam bool param twv7 caption = "Change 7th Variable" default = false visible = @formula == 7 && @patPar && @pat && (@iters !=0) endparam bool param twv8 caption = "Change 8th Variable" default = false visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam bool param twv9 caption = "Change 9th Variable" default = false visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam bool param twv10 caption = "Change 10th Variable" default = false visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam int param twiOp caption = "Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam complex param ta caption = "Twirl Alpha" default = (3,3) visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam complex param tb caption = "Twirl Beta" default = (2,2) visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param th caption = "Step Size (re)" default = .005 visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param th2 caption = "Step Size (im)" default = .005 visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv7a caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv7b caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv7c caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv8a caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv8b caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv8c caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv9a caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv9b caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv9c caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv10a caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv10b caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam float param twv10c caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formula == 8 && @patPar && @pat && (@iters !=0) endparam bool param twiFlavor caption = "Symmetry" default = false visible = @formula == 8 && @patPar && @pat && (@iters !=0) endparam func twfn1 caption = "Twirl Fn 1" default = ident() visible = @formula == 8 && @patPar && @pat && (@iters !=0) endfunc func twfn2 caption = "Twirl Fn 2" default = sin() visible = @formula == 8 && @patPar && @pat && (@iters !=0) endfunc func twfn3 caption = "Twirl Fn 3" default = sin() visible = @formula == 8 && @patPar && @pat && (@iters !=0) endfunc func twfn4 caption = "Twirl Fn 4" default = sin() visible = @formula == 8 && @patPar && @pat && (@iters !=0) endfunc func twfn5 caption = "Twirl Fn 5" default = ident() visible = @formula == 8 && @patPar && @pat && (@iters !=0) endfunc func twfn6 caption = "Twirl Fn 6" default = sin() visible = @formula == 8 && @patPar && @pat && (@iters !=0) endfunc func twfn7 caption = "Twirl Fn 7" default = sin() visible = @formula == 8 && @patPar && @pat && (@iters !=0) endfunc func twfn8 caption = "Twirl Fn 8" default = sin() visible = @formula == 8 && @patPar && @pat && (@iters !=0) endfunc func twfn9 caption = "Twirl Fn 9" default = ident() visible = @formula == 8 && @patPar && @pat && (@iters !=0) endfunc func twfn10 caption = "Twirl Fn 10" default = sin() visible = @formula == 8 && @patPar && @pat && (@iters !=0) endfunc heading caption = "Driftwood Parameters" visible = @formula == 9 && @patPar && @pat && (@iters !=0) endheading bool param tgwv1 caption = "Change Main Variables 1" default = false visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam bool param tgwv7 caption = "Change Main Variables 2" default = false visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam bool param tgwv2 caption = "Change 2nd Variable" default = false visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam bool param tgwv3 caption = "Change 3rd Variable" default = false visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam bool param tgwv4 caption = "Change 4th Variable" default = false visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam bool param tgwv6 caption = "Change 6th Variable" default = false visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam bool param tgwv8 caption = "Change 8th Variable" default = false visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam bool param tgwv9 caption = "Change 9th Variable" default = false visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam bool param tgwv10 caption = "Change 10th Variable" default = false visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam bool param tgwv12 caption = "Change 12th Variable" default = false visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam int param tgwOp1 caption = "Operator 1" enum = "1""2""3""4""5""6""7""8" default = 0 visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam int param tgwOp2 caption = "Operator 2" enum = "1""2""3""4""5""6""7""8" default = 0 visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwa1 caption = "Driftwood Alpha 1" default = 3 visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwa2 caption = "Driftwood Alpha 2" default = 3 visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwb1 caption = "Driftwood Beta 1" default = 2 visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwb2 caption = "Driftwood Beta 2" default = 2 visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam complex param tgwh1 caption = "Step Size 1" default = (.05,.05) visible = @formula == 9 && @patPar && \ @pat && (@iters !=0) endparam complex param tgwh2 caption = "Step Size 2" default = (.005,.005) visible = @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv1a caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv1b caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv1c caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv2a caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv2b caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv2c caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv3a caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv3b caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv3c caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv4a caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv4b caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv4c caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv5a caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv5b caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv5c caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv6a caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv6b caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv6c caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv7a caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv7b caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv7c caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv8a caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv8b caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv8c caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv9a caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv9b caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv9c caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv10a caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv10b caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv10c caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv11a caption = "13th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv11b caption = "13th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv11c caption = "13th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv12a caption = "14th Variable P1" default = 0 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv12b caption = "14th Variable P2" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam float param tgwv12c caption = "14th Variable P3" default = 1 visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam bool param tgwFlavor1 caption = "Symmetry" default = false visible = @begex == 1 && @formula == 9 && @patPar && @pat && (@iters !=0) endparam func tgwfn1 caption = "Driftwood Fn 1" default = ident() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc func tgwfn2 caption = "Driftwood Fn 2" default = sin() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc func tgwfn3 caption = "Driftwood Fn 3" default = sin() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc func tgwfn4 caption = "Driftwood Fn 4" default = sin() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc func tgwfn5 caption = "Driftwood Fn 5" default = ident() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc func tgwfn6 caption = "Driftwood Fn 6" default = sin() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc func tgwfn7 caption = "Driftwood Fn 7" default = ident() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc func tgwfn8 caption = "Driftwood Fn 8" default = sin() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc func tgwfn9 caption = "Driftwood Fn 9" default = sin() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc func tgwfn10 caption = "Driftwood Fn 10" default = sin() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc func tgwfn11 caption = "Driftwood Fn 11" default = ident() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc func tgwfn12 caption = "Driftwood Fn 12" default = sin() visible = @formula == 9 && @patPar && @pat && (@iters !=0) endfunc heading caption = "Formula 2 Parameters" visible = @seq != "Single" && @pat && (@iters !=0) endheading bool param patParQ caption = "Formula 2 Parameters" default = true visible = @seq != "Single" && @pat && (@iters !=0) endparam param formulaQ caption = "2nd Formula Type" enum = "Martin" "Popcorn" "Vine" "Glyph" "Gnarl" "Hopalong" "Dynamic" \ "Tanglewood" "Twirl" "Driftwood" default = 7 visible = @patParQ && @seq != "Single" && @pat && (@iters !=0) endparam heading caption = "Martin 2 Parameters" visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endheading bool param martV1Q caption = "Change 1st Variable" default = false visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param martV2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param martV3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param martOpQ caption = "Martin Flavor" enum = "1""2" default = 0 visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param maaQ caption = "Martin Alpha" default = 3.14 visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam complex param mxQ caption = "Martin X1" default = (0,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param mxmQ caption = "Martin X2" default = 1 visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam complex param mxeQ caption = "Martin X3" default = (1,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam complex param myQ caption = "Martin Y1" default = (0,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam complex param mymQ caption = "Martin Y2" default = (1,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam complex param myeQ caption = "Martin Y3" default = (1,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam complex param mxxQ caption = "Martin XX1" default = (0,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param mxxmQ caption = "Martin XX2" default = 1 visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam complex param mxxeQ caption = "Martin XX3" default = (1,0) visible = @begex == 1 && @formulaQ == 0 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam bool param martFlavQ caption = "Symmetry" default = false visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam func martfnQ caption = "Martin X Func" default = sin() visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func fnmy1Q caption = "Martin Y Func" default = ident() visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func fnmx1Q caption = "Martin XX Func" default = ident() visible = @formulaQ == 0 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc heading caption = "Vine 2 Parameters" visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endheading param flavorQ caption = "Vine flavor" default = 2 min = 0 visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param vinV1Q caption = "Change Main Variables" default = false visible = @formulaQ == 2 && @patParQ && @flavorQ < 3 && @seq != "Single" \ && @pat && (@iters !=0) endparam bool param vinV2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 2 && @patParQ && @flavorQ < 3 && @seq != "Single" \ && @pat && (@iters !=0) endparam bool param vinV3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 2 && @patParQ && @flavorQ < 3 && @seq != "Single" \ && @pat && (@iters !=0) endparam bool param vinV5Q caption = "Change 5th Variable" default = false visible = @formulaQ == 2 && @patParQ && @flavorQ < 3 && @seq != "Single" \ && @pat && (@iters !=0) endparam bool param vinV6Q caption = "Change 6th Variable" default = false visible = @formulaQ == 2 && @patParQ && @flavorQ < 3 && @seq != "Single" \ && @pat && (@iters !=0) endparam bool param vinV7Q caption = "Change 7th Variable" default = false visible = @formulaQ == 2 && (@flavorQ > 1 && @flavorQ < 3) && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam bool param vinV8Q caption = "Change 8th Variable" default = false visible = @formulaQ == 2 && @patParQ && (@flavorQ > 1 && @flavorQ < 3) && \ @seq != "Single" && @pat && (@iters !=0) endparam int param vinOp1Q caption = "Vine Operator 1" enum = "1""2""3""4" default = 0 visible = @formulaQ == 2 && @flavorQ <3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam int param vinOp2cQ caption = "Vine Operator 2" enum = "1""2""3""4" default = 0 visible = @vinFlavorQ == true && @formulaQ == 2 && @flavorQ > 2 && @patParQ\ && @seq != "Single" && @pat && (@iters !=0) endparam int param vinOp2rQ caption = "Vine Operator 2" enum = "1""2""3""4" default = 0 visible = @vinFlavorQ == false && @formulaQ == 2 && @flavorQ > 2 && \ @patParQ && @seq != "Single" && @pat && (@iters !=0) endparam int param vinOp3cQ caption = "Vine Operator 3" enum = "1""2""3""4" default = 0 visible = @vinFlavorQ == true && @formulaQ == 2 && @flavorQ > 2 && \ @patParQ && @seq != "Single" && @pat && (@iters !=0) endparam int param vinOp3rQ caption = "Vine Operator 3" enum = "1""2""3""4" default = 0 visible = @vinFlavorQ == false && @formulaQ == 2 && @flavorQ > 2 && \ @patParQ && @seq != "Single" && @pat && (@iters !=0) endparam float param vaQ caption = "Vine Alpha" default = 3.0 visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param vbQ caption = "Vine Beta" default = 2.0 visible = @formulaQ == 2 && (@flavorQ > 1 && @flavorQ < 3) && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param h2rQ caption = "Step Size (re)" default = 0.05 visible = @formulaQ == 2 && @flavorQ < 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param h2iQ caption = "Step Size (im)" default = 0.05 visible = @formulaQ == 2 && @flavorQ < 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param h3rQ caption = "Step Size (re)" default = 0.05 visible = @formulaQ == 2 && @flavorQ < 3 && @patParQ && @seq != "Single" \ && @pat && (@iters !=0) endparam float param h3iQ caption = "Step Size (im)" default = 0.05 visible = @formulaQ == 2 && @flavorQ < 3 && @patParQ && @seq != "Single" \ && @pat && (@iters !=0) endparam float param v1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 \ && @seq != "Single" && @pat && (@iters !=0) endparam float param v2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 \ && @seq != "Single" && @pat && (@iters !=0) endparam float param v3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && @flavorQ < 3 && \ @seq != "Single" && @pat && (@iters !=0) endparam float param v7aQ caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat && (@iters !=0) endparam float param v7bQ caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat && (@iters !=0) endparam float param v7cQ caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat && (@iters !=0) endparam float param v8aQ caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat && (@iters !=0) endparam float param v8bQ caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat && (@iters !=0) endparam float param v8cQ caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 2 && @patParQ && (@flavorQ > 1 && \ @flavorQ < 3) && @seq != "Single" && @pat && (@iters !=0) endparam bool param vinFlavorQ caption = "Symmetry" default = false visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam func vinfnx1Q caption = "Vine X Fn" default = ident() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func vinfny1Q caption = "Vine Y Fn" default = ident() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func vinfnx2Q caption = "Vine X Fn 2" default = ident() visible = @formulaQ == 2 && @patParQ && @flavorQ >2 && \ @seq != "Single" && @pat && (@iters !=0) endfunc func vinfny2Q caption = "Vine Y Fn 2" default = ident() visible = @formulaQ == 2 && @flavorQ >2 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endfunc func vinfn1Q caption = "Vine Fn 1" default = sin() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func vinfn2Q caption = "Vine Fn 2" default = sin() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func vinfn3Q caption = "Vine Fn 3" default = sin() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func vinfn4Q caption = "Vine Fn 4" default = sin() visible = @formulaQ == 2 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func vinfn5Q caption = "Vine Fn 5" default = sin() visible = @formulaQ == 2 && @flavorQ == 2 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endfunc func vinfn6Q caption = "Vine Fn 6" default = sin() visible = @formulaQ == 2 && @flavorQ == 2 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endfunc func vinfn7Q caption = "Vine Fn 7" default = ident() visible = @formulaQ == 2 && @flavorQ > 2 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endfunc func vinfn8Q caption = "Vine Fn 8" default = ident() visible = @formulaQ == 2 && @flavorQ > 2 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endfunc func vinfn9Q caption = "Vine Fn 9" default = sin() visible = @formulaQ == 2 && @flavorQ > 2 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endfunc func vinfn10Q caption = "Vine Fn 10" default = sin() visible = @formulaQ == 2 && @flavorQ > 2 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endfunc func vinfn11Q caption = "Vine Fn 11" default = sin() visible = @formulaQ == 2 && @flavorQ > 2 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endfunc heading caption = "Popcorn 2 Parameters" visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endheading int param popflavor1Q caption = "1st Flavor" enum = "1""2""3""4" default = 0 visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param popflavor2Q caption = "2nd Flavor" enum = "1""2""3""4" default = 0 visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param v1Q caption = "Change 1st Variable" default = false visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param v2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param v3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param v4Q caption = "Change 4th Variable" default = false visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param popxQ caption = "X Param" default = 1 visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param popyQ caption = "Y Param" default = 1 visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam complex param popcQ caption = "Constant" default = (3,3) visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam complex param h1Q caption = "Step Size" default = (.05,.05) visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param pop1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param pop1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param pop1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param pop2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param pop2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param pop2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param pop3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param pop3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param pop3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param pop4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param pop4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param pop4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 1 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam bool param funcPopTypeQ caption = "Symmetry" default = false visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam func fnpopxQ caption = "Popcorn X Function" default = ident() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func fnpopyQ caption = "Popcorn Y Function" default = ident() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func popfn1Q caption = "Popcorn Fn 1" default = sin() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func popfn2Q caption = "Popcorn Fn 2" default = tan() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func popfn3Q caption = "Popcorn Fn 3" default = sin() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func popfn4Q caption = "Popcorn Fn 4" default = tan() visible = @formulaQ == 1 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc heading caption = "Glyph 2 Parameters" visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endheading int param glv1Q caption = "1st Variable Type" enum = "x""y""newx""newy" default = 1 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glv2Q caption = "2nd Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glv3Q caption = "3rd Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glv4Q caption = "4th Variable Type" enum = "x""y""newx""newy" default = 0 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glv5Q caption = "5th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glv6Q caption = "6th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glv7Q caption = "7th Variable Type" enum = "x""y""newx""newy" default = 0 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glv8Q caption = "8th Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glv9Q caption = "9th Variable Type" enum = "x""y""newx""newy" default = 2 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glv10Q caption = "10th Variable Type" enum = "x""y""newx""newy" default = 1 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glv11Q caption = "11th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glv12Q caption = "12th Variable Type" enum = "x""y""newx""newy" default = 3 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glyOp1Q caption = "Operator 1" enum = "1""2""3""4" default = 0 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param glyOp2Q caption = "Operator 2" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16" default = 0 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param glyaQ caption = "Glyph Alpha" default = 3 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param h4rQ caption = "Step Size 1 (re)" default = .8 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param h4iQ caption = "Step Size 1 (im)" default = .8 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param h5rQ caption = "Step Size 2 (re)" default = .8 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param h5iQ caption = "Step Size 2 (im)" default = .8 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param h6rQ caption = "Step Size 3 (re)" default = .05 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param h6iQ caption = "Step Size 3 (im)" default = .05 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param h7rQ caption = "Step Size 4 (re)" default = .05 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param h7iQ caption = "Step Size 4 (im)" default = .05 visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param gly1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly7aQ caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly7bQ caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly7cQ caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly8aQ caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly8bQ caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly8cQ caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly9aQ caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly9bQ caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly9cQ caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly10aQ caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly10bQ caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly10cQ caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly11aQ caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly11bQ caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly11cQ caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly12aQ caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly12bQ caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gly12cQ caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 3 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam bool param glyphFlavor1Q caption = "Symmetry" default = false visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam func glyfn1Q caption = "Glyph Fn 1" default = cos() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn2Q caption = "Glyph Fn 2" default = cos() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn3Q caption = "Glyph Fn 3" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn4Q caption = "Glyph Fn 4" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn5Q caption = "Glyph Fn 5" default = sin() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn6Q caption = "Glyph Fn 6" default = sin() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn7Q caption = "Glyph Fn 7" default = sin() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn8Q caption = "Glyph Fn 8" default = sin() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn9Q caption = "Glyph Fn 9" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn10Q caption = "Glyph Fn 10" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn11Q caption = "Glyph Fn 11" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn12Q caption = "Glyph Fn 12" default = ident() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn13Q caption = "Glyph Fn 13" default = cos() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func glyfn14Q caption = "Glyph Fn 14" default = cos() visible = @formulaQ == 3 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc heading caption = "Gnarl 2 Functions" visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endheading bool param gn1Q caption = "Change Main Variables" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param gn2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param gn3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param gn4Q caption = "Change 4th Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param gn6Q caption = "Change 6th Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param gn7Q caption = "Change 7th Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param gn8Q caption = "Change 8th Variable" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param gnOpQ caption = "Gnarl Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param gnaQ caption = "Gnarl Alpha" default = 3 visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param gnbQ caption = "Gnarl Beta" default = 2 visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param h8rQ caption = "Step Size (re)" default = .05 visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param h8iQ caption = "Step Size (im)" default = .05 visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param gn1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn7aQ caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn7bQ caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn7cQ caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn8aQ caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn8bQ caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param gn8cQ caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 4 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam bool param gnFlavorQ caption = "Symmetry" default = false visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam func gnfnxQ caption = "Gnarl Fn 1" default = ident() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func gnfn1Q caption = "Gnarl Fn 2" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func gnfn2Q caption = "Gnarl Fn 3" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func gnfn3Q caption = "Gnarl Fn 4" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func gnfnyQ caption = "Gnarl Fn 5" default = ident() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func gnfn4Q caption = "Gnarl Fn 6" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func gnfn5Q caption = "Gnarl Fn 7" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func gnfn6Q caption = "Gnarl Fn 8" default = sin() visible = @formulaQ == 4 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc heading caption = "Hopalong 2 Parameters" visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endheading float param pAQ caption = "A" default = 0.4 visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param pBQ caption = "B" default = 1.0 visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param pCQ caption = "C" default = 0.0 visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param sxQ caption = "Spread" default = -1 visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param hopQ caption = "Depth" default = 0 visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param hopFlavorQ caption = "Symmetry" default = false visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam func fnhopQ caption = "Hopalong Function" default = ident () visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func fnhop2Q caption = "Hopalong Function 2" default = sqrt () visible = @formulaQ == 5 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc heading caption = "Dynamic 2 Parameters" visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endheading bool param dynv1Q caption = "Change Main Variables" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param dynv2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param dynv3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param dynv5Q caption = "Change 5th Variable" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param dynv6Q caption = "Change 6th Variable" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param dynOpQ caption = "Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16" default = 0 visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam complex param daQ caption = "Dynamic Alpha" default = (3,3) visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam complex param dbQ caption = "Dynamic Beta" default = (2,2) visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam complex param dhxQ caption = "Step Size" default = (.05,.05) visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param dynv1aQ caption = "1st Variable P1" default = 0 visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param dynv1bQ caption = "1st Variable P2" default = 1 visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param dynv1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param dynv6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 6 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam bool param dynFlavorQ caption = "Symmetry" default = false visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam func dynfn1Q caption = "Dynamic Fn 1" default = ident () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func dynfn2Q caption = "Dynamic Fn 2" default = sin () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func dynfn3Q caption = "Dynamic Fn 3" default = sin () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func dynfn4Q caption = "Dynamic Fn 4" default = ident () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func dynfn5Q caption = "Dynamic Fn 5" default = sin () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func dynfn6Q caption = "Dynamic Fn 6" default = sin () visible = @formulaQ == 6 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc heading caption = "Tanglewood 2 Parameters" visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endheading bool param twsv1Q caption = "Change Main Variables 1" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv9Q caption = "Change Main Variables 2" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv4Q caption = "Change 4th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv6Q caption = "Change 6th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv7Q caption = "Change 7th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv8Q caption = "Change 8th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv10Q caption = "Change 10th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv11Q caption = "Change 11th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv12Q caption = "Change 12th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv14Q caption = "Change 14th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv15Q caption = "Change 15th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twsv16Q caption = "Change 16th Variable" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param twsOp1Q caption = "Operator 1" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param twsOp2Q caption = "Operator 2" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twa1Q caption = "Tanglewood Alpha 1 (re)" default = 3 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twa1bQ caption = "Tanglewood Alpha 1 (im)" default = 3 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twa2Q caption = "Tanglewood Alpha 2 (re)" default = 3 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twa2bQ caption = "Tanglewood Alpha 2 (im)" default = 3 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twb1Q caption = "Tanglewood Beta 1 (re)" default = 2 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twb1bQ caption = "Tanglewood Beta 1 (im)" default = 2 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twb2Q caption = "Tanglewood Beta 2 (re)" default = 2 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twb2bQ caption = "Tanglewood Beta 2 (im)" default = 2 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twsh1Q caption = "Step Size 1 (re)" default = .05 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twsh1bQ caption = "Step Size 1 (im)" default = .05 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twsh2Q caption = "Step Size 2 (re)" default = .05 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twsh2bQ caption = "Step Size 2 (im)" default = .05 visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twsv1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv7aQ caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv7bQ caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv7cQ caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv8aQ caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv8bQ caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv8cQ caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv9aQ caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv9bQ caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv9cQ caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv10aQ caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv10bQ caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv10cQ caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv11aQ caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv11bQ caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv11cQ caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv12aQ caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv12bQ caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv12cQ caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv13aQ caption = "13th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv13bQ caption = "13th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv13cQ caption = "13th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv14aQ caption = "14th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv14bQ caption = "14th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv14cQ caption = "14th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv15aQ caption = "15th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv15bQ caption = "15th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv15cQ caption = "15th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv16aQ caption = "16th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv16bQ caption = "16th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twsv16cQ caption = "16th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 7 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam bool param twsFlavor1Q caption = "Symmetry" default = false visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam func twsfn1Q caption = "Tanglewood Fn 1" default = ident() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn2Q caption = "Tanglewood Fn 2" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn3Q caption = "Tanglewood Fn 3" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn4Q caption = "Tanglewood Fn 4" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn5Q caption = "Tanglewood Fn 5" default = ident() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn6Q caption = "Tanglewood Fn 6" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn7Q caption = "Tanglewood Fn 7" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn8Q caption = "Tanglewood Fn 8" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn9Q caption = "Tanglewood Fn 9" default = ident() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn10Q caption = "Tanglewood Fn 10" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn11Q caption = "Tanglewood Fn 11" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn12Q caption = "Tanglewood Fn 12" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn13Q caption = "Tanglewood Fn 13" default = ident() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn14Q caption = "Tanglewood Fn 14" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn15Q caption = "Tanglewood Fn 15" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twsfn16Q caption = "Tanglewood Fn 16" default = sin() visible = @formulaQ == 7 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc heading caption = "Twirl 2 Parameters" visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endheading bool param twv1Q caption = "Change Main Variables" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twv2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twv3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twv4Q caption = "Change 4th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twv5Q caption = "Change 5th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twv7Q caption = "Change 7th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twv8Q caption = "Change 8th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twv9Q caption = "Change 9th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param twv10Q caption = "Change 10th Variable" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param twiOpQ caption = "Operator" enum = "1""2""3""4""5""6""7""8""9""10""11""12""13""14""15""16""17""18""19" \ "20""21""22""23""24""25""26""27""28""29""30""31""32""33""34""35" \ "36""37""38""39""40""41""42""43""44""45""46""47""48""49""50""51" \ "52""53""54""55""56""57""58""59""60""61""62""63""64" default = 0 visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam complex param taQ caption = "Twirl Alpha" default = (3,3) visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam complex param tbQ caption = "Twirl Beta" default = (2,2) visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param thQ caption = "Step Size (re)" default = .05 visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param th2Q caption = "Step Size (im)" default = .05 visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param twv1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv7aQ caption = "7th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv7bQ caption = "7th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv7cQ caption = "7th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv8aQ caption = "8th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv8bQ caption = "8th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv8cQ caption = "8th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv9aQ caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv9bQ caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv9cQ caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv10aQ caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv10bQ caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam float param twv10cQ caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 8 && @patParQ && \ @seq != "Single" && @pat && (@iters !=0) endparam bool param twiFlavorQ caption = "Symmetry" default = false visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam func twfn1Q caption = "Twirl Fn 1" default = ident() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twfn2Q caption = "Twirl Fn 2" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twfn3Q caption = "Twirl Fn 3" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twfn4Q caption = "Twirl Fn 4" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twfn5Q caption = "Twirl Fn 5" default = ident() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twfn6Q caption = "Twirl Fn 6" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twfn7Q caption = "Twirl Fn 7" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twfn8Q caption = "Twirl Fn 8" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twfn9Q caption = "Twirl Fn 9" default = ident() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func twfn10Q caption = "Twirl Fn 10" default = sin() visible = @formulaQ == 8 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc heading caption = "Driftwood 2 Parameters" visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endheading bool param tgwv1Q caption = "Change Main Variables 1" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param tgwv7Q caption = "Change Main Variables 2" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param tgwv2Q caption = "Change 2nd Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param tgwv3Q caption = "Change 3rd Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param tgwv4Q caption = "Change 4th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param tgwv6Q caption = "Change 6th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param tgwv8Q caption = "Change 8th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param tgwv9Q caption = "Change 9th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param tgwv10Q caption = "Change 10th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam bool param tgwv12Q caption = "Change 12th Variable" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param tgwOp1Q caption = "Operator 1" enum = "1""2""3""4""5""6""7""8" default = 0 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam int param tgwOp2Q caption = "Operator 2" enum = "1""2""3""4""5""6""7""8" default = 0 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param tgwa1Q caption = "Driftwood Alpha 1" default = 3 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param tgwa2Q caption = "Driftwood Alpha 2" default = 3 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param tgwb1Q caption = "Driftwood Beta 1" default = 2 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam float param tgwb2Q caption = "Driftwood Beta 2" default = 2 visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam complex param tgwh1Q caption = "Step Size 1" default = (.05,.05) visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && (@iters !=0) endparam complex param tgwh2Q caption = "Step Size 2" default = (.05,.05) visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv1aQ caption = "1st Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv1bQ caption = "1st Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv1cQ caption = "1st Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv2aQ caption = "2nd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv2bQ caption = "2nd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv2cQ caption = "2nd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv3aQ caption = "3rd Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv3bQ caption = "3rd Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv3cQ caption = "3rd Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv4aQ caption = "4th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv4bQ caption = "4th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv4cQ caption = "4th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv5aQ caption = "5th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv5bQ caption = "5th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv5cQ caption = "5th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv6aQ caption = "6th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv6bQ caption = "6th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv6cQ caption = "6th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv7aQ caption = "9th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv7bQ caption = "9th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv7cQ caption = "9th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv8aQ caption = "10th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv8bQ caption = "10th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv8cQ caption = "10th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv9aQ caption = "11th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv9bQ caption = "11th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv9cQ caption = "11th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv10aQ caption = "12th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv10bQ caption = "12th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv10cQ caption = "12th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv11aQ caption = "13th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv11bQ caption = "13th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv11cQ caption = "13th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv12aQ caption = "14th Variable P1" default = 0 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv12bQ caption = "14th Variable P2" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam float param tgwv12cQ caption = "14th Variable P3" default = 1 visible = @begex == 1 && @formulaQ == 9 && @patParQ \ && @seq != "Single" && @pat && (@iters !=0) endparam bool param tgwFlavor1Q caption = "Symmetry" default = false visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endparam func tgwfn1Q caption = "Driftwood Fn 1" default = ident() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func tgwfn2Q caption = "Driftwood Fn 2" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func tgwfn3Q caption = "Driftwood Fn 3" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func tgwfn4Q caption = "Driftwood Fn 4" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func tgwfn5Q caption = "Driftwood Fn 5" default = ident() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func tgwfn6Q caption = "Driftwood Fn 6" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func tgwfn7Q caption = "Driftwood Fn 7" default = ident() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func tgwfn8Q caption = "Driftwood Fn 8" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func tgwfn9Q caption = "Driftwood Fn 9" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func tgwfn10Q caption = "Driftwood Fn 10" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func tgwfn11Q caption = "Driftwood Fn 11" default = ident() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc func tgwfn12Q caption = "Driftwood Fn 12" default = sin() visible = @formulaQ == 9 && @patParQ && @seq != "Single" && @pat && \ (@iters !=0) endfunc heading caption = "Global Formula Functions" visible = @pat endheading func fnov1 caption = "Formula Fn 1" default = ident() visible = @pat endfunc func fnov2 caption = "Formula Fn 2" default = ident() visible = @pat endfunc func fnx3 caption = "Formula X Fn 1" default = ident () visible = @pat endfunc func fnx2 caption = "Formula X Fn 2" default = ident () visible = @pat endfunc func fny3 caption = "Formula Y Fn 1" default = ident () visible = @pat endfunc func fny2 caption = "Formula Y Fn 2" default = ident () visible = @pat endfunc heading caption = "Loop Parameters" endheading complex param zpar1 caption = "Z Offset" default = (0,0) endparam complex param zpar2 caption = "Z Strength" default = (1,0) endparam complex param zpar3 caption = "Z Power" default = (1,0) endparam complex param cpar1 caption = "C Offset" default = (0,0) endparam complex param cpar2 caption = "C Strength" default = (1,0) endparam complex param cpar3 caption = "C Power" default = (1,0) endparam complex param zzpar1 caption = "Z2 Offset" default = (0,0) visible = @loop == "Complex" endparam complex param zzpar2 caption = "Z2 Strength" default = (1,0) visible = @loop == "Complex" endparam complex param zzpar3 caption = "Z2 Power" default = (1,0) visible = @loop == "Complex" endparam complex param ccpar1 caption = "C2 Offset" default = (0,0) visible = @loop == "Complex" endparam complex param ccpar2 caption = "C2 Strength" default = (1,0) visible = @loop == "Complex" endparam complex param ccpar3 caption = "C2 Power" default = (1,0) visible = @loop == "Complex" endparam param op3 caption = "Operator 3" enum = "+""-""*""/""^" default = 2 visible = @loop == "Complex" endparam param op4 caption = "Operator 4" enum = "+""-""*""/""^" default = 0 visible = @loop == "Complex" endparam heading caption = "Loop Functions" endheading func fnc caption = "C Function" default = ident() endfunc func fncc caption = "C2 Function" default = ident() visible = @loop == "Complex" endfunc func fnz caption = "Z Function" default = ident() endfunc func fnzz caption = "Z2 Function" default = ident() visible = @loop == "Complex" endfunc switch: type = "PlasticFantastic" startseed = pixel version = @version flavor = @flavor bail = @bail op = @op zmod = @zmod fn1a = @fn1a fn1b = @fn1b fn2a = @fn2a fn2b = @fn2b fn3a = @fn3a fn3b = @fn3b fn4 = @fn4 fn5 = @fn5 op3 = @op3 op4 = @op4 zpar1 = @zpar1 zpar2 = @zpar2 zpar3 = @zpar3 cpar1 = @cpar1 cpar2 = @cpar2 cpar3 = @cpar3 zzpar1 = @zzpar1 zzpar2 = @zzpar2 zzpar3 = @zzpar3 ccpar1 = @ccpar1 ccpar2 = @ccpar2 ccpar3 = @ccpar3 fnc = @fnc fncc = @fncc fnz = @fnz fnzz = @fnzz mode=@switchmode switchmode=@mode center=@swcenter sscale=@swscale loop = @loop select = @select zg = @zg ezg = @ezg cg = @cg cmg = @cmg ecg = @ecg fnzInit = @fnzInit fncInit = @fncinit begex = @begex pat = @pat seq = @seq modCmp = @modCmp modBy = @modBy randomseed = @randomseed prob1 = @prob1 blendFn = @blendFn iters = @iters scale = @scale exr = @exp pp2 = @pp2 scale2 = @scale2 pvol2a = @pvol2a pvol2b = @pvol2b pvol2 = @pvol2 scale3 = @scale3 pvol3a = @pvol3a pvol3b = @pvol3b pvol3 = @pvol3 offset1 = @offset1 paramP3 = @paramP3 distD = @distD distE = @distE distF = @distF patPar = @patPar formula = @formula martV1 = @martV1 martV2 = @martV2 martV3 = @martV3 martOp = @martOp maa = @maa mx = @mx mxm = @mxm my = @my mym = @mym mye = @mye mxx = @mxx mxxm = @mxxm mxxe = @mxxe martFlav = @martFlav martfn = @martfn fnmy1 = @fnmy1 fnmx1 = @fnmx1 vinV2 = @vinV2 vinV3 = @vinV3 vinV4 = @vinV4 vinV5 = @vinV5 vinV6 = @vinV6 vinV7 = @vinV7 vinV8 = @vinV8 vinOp1 = @vinOp1 vinOp2c = @vinOp2c vinOp2r = @vinOp2r vinOp3c = @vinOp3c vinOp3r = @vinOp3r va = @va vb = @vb h2r = @h2r h2i = @h2i h3r = @h3r h3i = @h3i v1a = @v1a v1b = @v1b v1c = @v1c v2a = @v2a v2b = @v2b v2c = @v2c v3a = @v3a v3b = @v3b v3c = @v3c v4a = @v4a v4b = @v4b v4c = @v4c v5a = @v5a v5b = @v5b v5c = @v5c v6a = @v6a v6b = @v6b v6c = @v6c v7a = @v7a v7b = @v7b v7c = @v7c v8a = @v8a v8b = @v8b v8c = @v8c vinFlavor = @vinFlavor vinfnx1 = @vinfnx1 vinfny1 = @vinfny1 vinfnx2 = @vinfnx2 vinfny2 = @vinfny2 vinfn1 = @vinfn1 vinfn2 = @vinfn2 vinfn3 = @vinfn3 vinfn4 = @vinfn4 vinfn5 = @vinfn5 vinfn6 = @vinfn6 vinfn7 = @vinfn7 vinfn8 = @vinfn8 vinfn9 = @vinfn9 vinfn10 = @vinfn10 vinfn11 = @vinfn11 popflavor1 = @popflavor1 popflavor2 = @popflavor2 v1 = @v1 v2 = @v2 v3 = @v3 v4 = @v4 popx = @popx popy = @popy popc = @popc h1 = @h1 pop1a = @pop1a pop1b = @pop1b pop1c = @pop1c pop2a = @pop1a pop2b = @pop2b pop2c = @pop2c pop3a = @pop2a pop3b = @pop3b pop3c = @pop3c pop4a = @pop4a pop4b = @pop4b pop4c = @pop4c funcPopType = @funcPopType fnpopx = @fnpopx fnpopy = @fnpopy popfn1 = @popfn1 popfn2 = @popfn2 popfn3 = @popfn3 popfn4 = @popfn4 glv1 = @glv1 glv2 = @glv2 glv3 = @glv3 glv4 = @glv4 glv5 = @glv5 glv6 = @glv6 glv7 = @glv7 glv8 = @glv8 glv9 = @glv9 glv10 = @glv10 glv11 = @glv11 glv12 = @glv12 glyOp1 = @glyOp1 glyOp2 = @glyOp2 glya = @glya h4r = @h4r h4i = @h4i h5r = @h5r h5i = @h5i h6r = @h6r h6i = @h6i h7r = @h7r h7i = @h7i gly1a = @gly1a gly1b = @gly1b gly1c = @gly1c gly2a = @gly2a gly2b = @gly2b gly2c = @gly2c gly3a = @gly3a gly3b = @gly3b gly3c = @gly3c gly4a = @gly4a gly4b = @gly4b gly4c = @gly4c gly5a = @gly5a gly5b = @gly5b gly5c = @gly5c gly6a = @gly6a gly6b = @gly6b gly6c = @gly6c gly7a = @gly7a gly7b = @gly7b gly7c = @gly7c gly8a = @gly8a gly8b = @gly8b gly8c = @gly8c gly9a = @gly9a gly9b = @gly9b gly9c = @gly9c gly10a = @gly10a gly10b = @gly10b gly10c = @gly10c gly11a = @gly11a gly11b = @gly11b gly11c = @gly11c gly12a = @gly12a gly12b = @gly12b gly12c = @gly12c glyphFlavor1 = @glyphFlavor1 glyfn1 = @glyfn1 glyfn2 = @glyfn2 glyfn3 = @glyfn3 glyfn4 = @glyfn4 glyfn5 = @glyfn5 glyfn6 = @glyfn6 glyfn7 = @glyfn7 glyfn8 = @glyfn8 glyfn9 = @glyfn9 glyfn10 = @glyfn10 glyfn11 = @glyfn11 glyfn12 = @glyfn12 glyfn13 = @glyfn13 glyfn14 = @glyfn14 gn1 = @gn1 gn2 = @gn2 gn3 = @gn3 gn4 = @gn4 gn5 = @gn5 gn6 = @gn6 gn7 = @gn7 gn8 = @gn8 gnOp = @gnOp gna = @gna gnb = @gnb h8r = @h8r h8i = @h8i gn1a = @gn1a gn1b = @gn1b gn1c = @gn1c gn2a = @gn2a gn2b = @gn2b gn2c = @gn2c gn3a = @gn3a gn3b = @gn3b gn3c = @gn3c gn4a = @gn4a gn4b = @gn4b gn4c = @gn4c gn5a = @gn5a gn5b = @gn5b gn5c = @gn5c gn6a = @gn6a gn6b = @gn6b gn6c = @gn6c gn7a = @gn7a gn7b = @gn7b gn7c = @gn7c gn8a = @gn8a gn8b = @gn8b gn8c = @gn8c gnFlavor = @gnFlavor gnfnx = @gnfnx gnfny = @gnfny gnfn1 = @gnfn1 gnfn2 = @gnfn2 gnfn3 = @gnfn3 gnfn4 = @gnfn4 gnfn5 = @gnfn5 gnfn6 = @gnfn6 pA = @pA pB = @pB pC = @pC sx = @sx hop = @hop hopFlavor = @hopFlavor fnhop = @fnhop fnhop2 = @fnhop2 dynv1 = @dynv1 dynv2 = @dynv2 dynv3 = @dynv3 dynv4 = @dynv4 dynv5 = @dynv5 dynv6 = @dynv6 dynOp = @dynOp da = @da db = @db dhx = @dhx dynv1a = @dynv1a dynv1b = @dynv1b dynv1c = @dynv1c dynv2a = @dynv2a dynv2b = @dynv2b dynv2c = @dynv2c dynv3a = @dynv3a dynv3b = @dynv3b dynv3c = @dynv3c dynv4a = @dynv4a dynv4b = @dynv4b dynv4c = @dynv4c dynv5a = @dynv5a dynv5b = @dynv5b dynv5c = @dynv5c dynv6a = @dynv6a dynv6b = @dynv6b dynv6c = @dynv6c dynFlavor = @dynFlavor dynfn1 = @dynfn1 dynfn2 = @dynfn2 dynfn3 = @dynfn3 dynfn4 = @dynfn4 dynfn5 = @dynfn5 dynfn6 = @dynfn6 twsv1 = @twsv1 twsv2 = @twsv2 twsv3 = @twsv3 twsv4 = @twsv4 twsv5 = @twsv5 twsv6 = @twsv6 twsv7 = @twsv7 twsv8 = @twsv8 twsv9 = @twsv9 twsv10 = @twsv10 twsv11 = @twsv11 twsv12 = @twsv12 twsv13 = @twsv13 twsv14 = @twsv14 twsv15 = @twsv15 twsv16 = @twsv16 twsOp1 = @twsOp1 twsOp2 = @twsOp2 twa1 = @twa1 twa1b = @twa1b twa2 = @twa2 twa2b = @twa2b twb1 = @twb1 twb1b = @twb1b twb2 = @twb2 twb2b = @twb2b twsh1 = @twsh1 twsh1b = @twsh1b twsh2 = @twsh2 twsh2b = @twsh2b twsv1a = @twsv1a twsv1b = @twsv1b twsv1c = @twsv1c twsv2a = @twsv2a twsv2b = @twsv2b twsv2c = @twsv2c twsv3a = @twsv3a twsv3b = @twsv3b twsv3c = @twsv3c twsv4a = @twsv4a twsv4b = @twsv4b twsv4c = @twsv4c twsv5a = @twsv5a twsv5b = @twsv5b twsv5c = @twsv5c twsv6a = @twsv6a twsv6b = @twsv6b twsv6c = @twsv6c twsv7a = @twsv7a twsv7b = @twsv7b twsv7c = @twsv7c twsv8a = @twsv8a twsv8b = @twsv8b twsv8c = @twsv8c twsv9a = @twsv9a twsv9b = @twsv9b twsv9c = @twsv9c twsv10a = @twsv10a twsv10b = @twsv10b twsv10c = @twsv10c twsv11a = @twsv11a twsv11b = @twsv11b twsv11c = @twsv11c twsv12a = @twsv12a twsv12b = @twsv12b twsv12c = @twsv12c twsv13a = @twsv13a twsv13b = @twsv13b twsv13c = @twsv13c twsv14a = @twsv14a twsv14b = @twsv14b twsv14c = @twsv14c twsv15a = @twsv15a twsv15b = @twsv15b twsv15c = @twsv15c twsv16a = @twsv16a twsv16b = @twsv16b twsv16c = @twsv16c twsFlavor1 = @twsFlavor1 twsfn1 = @twsfn1 twsfn2 = @twsfn2 twsfn3 = @twsfn3 twsfn4 = @twsfn4 twsfn5 = @twsfn5 twsfn6 = @twsfn6 twsfn7 = @twsfn7 twsfn8 = @twsfn8 twsfn9 = @twsfn9 twsfn10 = @twsfn10 twsfn11 = @twsfn11 twsfn12 = @twsfn12 twsfn13 = @twsfn13 twsfn14 = @twsfn14 twsfn15 = @twsfn15 twsfn16 = @twsfn16 twv1 = @twv1 twv2 = @twv2 twv3 = @twv3 twv4 = @twv4 twv5 = @twv5 twv6 = @twv6 twv7 = @twv7 twv8 = @twv8 twv9 = @twv9 twv10 = @twv10 twiOp = @twiOp ta = @ta th = @th th2 = @th2 twv1a = @twv1a twv1b = @twv1b twv1c = @twv1c twv2a = @twv2a twv2b = @twv2b twv2c = @twv2c twv3a = @twv3a twv3b = @twv3b twv3c = @twv3c twv4a = @twv4a twv4b = @twv4b twv4c = @twv4c twv5a = @twv5a twv5b = @twv5b twv5c = @twv5c twv6a = @twv6a twv6b = @twv6b twv6c = @twv6c twv7a = @twv7a twv7b = @twv7b twv7c = @twv7c twv8a = @twv8a twv8b = @twv8b twv8c = @twv8c twv9a = @twv9a twv9b = @twv9b twv9c = @twv9c twv10a = @twv10a twv10b = @twv10b twv10c = @twv10c twiFlavor = @twiFlavor twfn1 = @twfn1 twfn2 = @twfn2 twfn3 = @twfn3 twfn4 = @twfn4 twfn5 = @twfn5 twfn6 = @twfn6 twfn7 = @twfn7 twfn8 = @twfn8 twfn9 = @twfn9 twfn10 = @twfn10 tgwv1 = @tgwv1 tgwv2 = @tgwv2 tgwv3 = @tgwv3 tgwv4 = @tgwv4 tgwv5 = @tgwv5 tgwv6 = @tgwv6 tgwv7 = @tgwv7 tgwv8 = @tgwv8 tgwv9 = @tgwv9 tgwv10 = @tgwv10 tgwv11 = @tgwv11 tgwv12 = @tgwv12 tgwOp1 = @tgwOp1 tgwOp2 = @tgwOp2 tgwa1 = @tgwa1 tgwb1 = @tgwb1 tgwa2 = @tgwa2 tgwb2 = @tgwb2 tgwh1 = @tgwh1 tgwh2 = @tgwh2 tgwv1a = @tgwv1a tgwv1b = @tgwv1b tgwv1c = @tgwv1c tgwv2a = @tgwv2a tgwv2b = @tgwv2b tgwv2c = @tgwv2c tgwv3a = @tgwv3a tgwv3b = @tgwv3b tgwv3c = @tgwv3c tgwv4a = @tgwv4a tgwv4b = @tgwv4b tgwv4c = @tgwv4c tgwv5a = @tgwv5a tgwv5b = @tgwv5b tgwv5c = @tgwv5c tgwv6a = @tgwv6a tgwv6b = @tgwv6b tgwv6c = @tgwv6c tgwv7a = @tgwv7a tgwv7b = @tgwv7b tgwv7c = @tgwv7c tgwv8a = @tgwv8a tgwv8b = @tgwv8b tgwv8c = @tgwv8c tgwv9a = @tgwv9a tgwv9b = @tgwv9b tgwv9c = @tgwv9c tgwv10a = @tgwv10a tgwv10b = @tgwv10b tgwv10c = @tgwv10c tgwv11a = @tgwv11a tgwv11b = @tgwv11b tgwv11c = @tgwv11c tgwv12a = @tgwv12a tgwv12b = @tgwv12b tgwv12c = @tgwv12c tgwfn1 = @tgwfn1 tgwfn2 = @tgwfn2 tgwfn3 = @tgwfn3 tgwfn4 = @tgwfn4 tgwfn5 = @tgwfn5 tgwfn6 = @tgwfn6 tgwfn7 = @tgwfn7 tgwfn8 = @tgwfn8 tgwfn9 = @tgwfn9 tgwfn10 = @tgwfn10 tgwfn11 = @tgwfn11 tgwfn12 = @tgwfn12 martV1Q = @martV1Q martV2Q = @martV2Q martV3Q = @martV3Q martOpQ = @martOpQ maaQ = @maaQ mxQ = @mxQ mxmQ = @mxmQ myQ = @myQ mymQ = @mymQ myeQ = @myeQ mxxQ = @mxxQ mxxmQ = @mxxmQ mxxeQ = @mxxeQ martFlavQ = @martFlavQ martfnQ = @martfnQ fnmy1Q = @fnmy1Q fnmx1Q = @fnmx1Q flavorQ = @flavorQ vinV2Q = @vinV2Q vinV3Q = @vinV3Q vinV4Q = @vinV4Q vinV5Q = @vinV5Q vinV6Q = @vinV6Q vinV7Q = @vinV7Q vinV8Q = @vinV8Q vinOp1Q = @vinOp1Q vinOp2cQ = @vinOp2cQ vinOp2rQ = @vinOp2rQ vinOp3cQ = @vinOp3cQ vinOp3rQ = @vinOp3rQ vaQ = @vaQ vbQ = @vbQ h2rQ = @h2rQ h2iQ = @h2iQ h3rQ = @h3rQ h3iQ = @h3iQ v1aQ = @v1aQ v1bQ = @v1bQ v1cQ = @v1cQ v2aQ = @v2aQ v2bQ = @v2bQ v2cQ = @v2cQ v3aQ = @v3aQ v3bQ = @v3bQ v3cQ = @v3cQ v4aQ = @v4aQ v4bQ = @v4bQ v4cQ = @v4cQ v5aQ = @v5aQ v5bQ = @v5bQ v5cQ = @v5cQ v6aQ = @v6aQ v6bQ = @v6bQ v6cQ = @v6cQ v7aQ = @v7aQ v7bQ = @v7bQ v7cQ = @v7cQ v8aQ = @v8aQ v8bQ = @v8bQ v8cQ = @v8cQ vinFlavorQ = @vinFlavorQ vinfnx1Q = @vinfnx1Q vinfny1Q = @vinfny1Q vinfnx2Q = @vinfnx2Q vinfny2Q = @vinfny2Q vinfn1Q = @vinfn1Q vinfn2Q = @vinfn2Q vinfn3Q = @vinfn3Q vinfn4Q = @vinfn4Q vinfn5Q = @vinfn5Q vinfn6Q = @vinfn6Q vinfn7Q = @vinfn7Q vinfn8Q = @vinfn8Q vinfn9Q = @vinfn9Q vinfn10Q = @vinfn10Q vinfn11Q = @vinfn11Q popflavor1Q = @popflavor1Q popflavor2Q = @popflavor2Q v1Q = @v1Q v2Q = @v2Q v3Q = @v3Q v4Q = @v4Q popxQ = @popxQ popyQ = @popyQ popcQ = @popcQ h1Q = @h1Q pop1aQ = @pop1aQ pop1bQ = @pop1bQ pop1cQ = @pop1cQ pop2aQ = @pop1aQ pop2bQ = @pop2bQ pop2cQ = @pop2cQ pop3aQ = @pop2aQ pop3bQ = @pop3bQ pop3cQ = @pop3cQ pop4aQ = @pop4aQ pop4bQ = @pop4bQ pop4cQ = @pop4cQ funcPopTypeQ = @funcPopTypeQ fnpopxQ = @fnpopxQ fnpopyQ = @fnpopyQ popfn1Q = @popfn1Q popfn2Q = @popfn2Q popfn3Q = @popfn3Q popfn4Q = @popfn4Q glv1Q = @glv1Q glv2Q = @glv2Q glv3Q = @glv3Q glv4Q = @glv4Q glv5Q = @glv5Q glv6Q = @glv6Q glv7Q = @glv7Q glv8Q = @glv8Q glv9Q = @glv9Q glv10Q = @glv10Q glv11Q = @glv11Q glv12Q = @glv12Q glyOp1Q = @glyOp1Q glyOp2Q = @glyOp2Q glyaQ = @glyaQ h4rQ = @h4rQ h4iQ = @h4iQ h5rQ = @h5rQ h5iQ = @h5iQ h6rQ = @h6rQ h6iQ = @h6iQ h7rQ = @h7rQ h7iQ = @h7iQ gly1aQ = @gly1aQ gly1bQ = @gly1bQ gly1cQ = @gly1cQ gly2aQ = @gly2aQ gly2bQ = @gly2bQ gly2cQ = @gly2cQ gly3aQ = @gly3aQ gly3bQ = @gly3bQ gly3cQ = @gly3cQ gly4aQ = @gly4aQ gly4bQ = @gly4bQ gly4cQ = @gly4cQ gly5aQ = @gly5aQ gly5bQ = @gly5bQ gly5cQ = @gly5cQ gly6aQ = @gly6aQ gly6bQ = @gly6bQ gly6cQ = @gly6cQ gly7aQ = @gly7aQ gly7bQ = @gly7bQ gly7cQ = @gly7cQ gly8aQ = @gly8aQ gly8bQ = @gly8bQ gly8cQ = @gly8cQ gly9aQ = @gly9aQ gly9bQ = @gly9bQ gly9cQ = @gly9cQ gly10aQ = @gly10aQ gly10bQ = @gly10bQ gly10cQ = @gly10cQ gly11aQ = @gly11aQ gly11bQ = @gly11bQ gly11cQ = @gly11cQ gly12aQ = @gly12aQ gly12bQ = @gly12bQ gly12cQ = @gly12cQ glyphFlavor1Q = @glyphFlavor1Q glyfn1Q = @glyfn1Q glyfn2Q = @glyfn2Q glyfn3Q = @glyfn3Q glyfn4Q = @glyfn4Q glyfn5Q = @glyfn5Q glyfn6Q = @glyfn6Q glyfn7Q = @glyfn7Q glyfn8Q = @glyfn8Q glyfn9Q = @glyfn9Q glyfn10Q = @glyfn10Q glyfn11Q = @glyfn11Q glyfn12Q = @glyfn12Q glyfn13Q = @glyfn13Q glyfn14Q = @glyfn14Q gn1Q = @gn1Q gn2Q = @gn2Q gn3Q = @gn3Q gn4Q = @gn4Q gn5Q = @gn5Q gn6Q = @gn6Q gn7Q = @gn7Q gn8Q = @gn8Q gnOpQ = @gnOpQ gnaQ = @gnaQ gnbQ = @gnbQ h8rQ = @h8rQ h8iQ = @h8iQ gn1aQ = @gn1aQ gn1bQ = @gn1bQ gn1cQ = @gn1cQ gn2aQ = @gn2aQ gn2bQ = @gn2bQ gn2cQ = @gn2cQ gn3aQ = @gn3aQ gn3bQ = @gn3bQ gn3cQ = @gn3cQ gn4aQ = @gn4aQ gn4bQ = @gn4bQ gn4cQ = @gn4cQ gn5aQ = @gn5aQ gn5bQ = @gn5bQ gn5cQ = @gn5cQ gn6aQ = @gn6aQ gn6bQ = @gn6bQ gn6cQ = @gn6cQ gn7aQ = @gn7aQ gn7bQ = @gn7bQ gn7cQ = @gn7cQ gn8aQ = @gn8aQ gn8bQ = @gn8bQ gn8cQ = @gn8cQ gnFlavorQ = @gnFlavorQ gnfnxQ = @gnfnxQ gnfnyQ = @gnfnyQ gnfn1Q = @gnfn1Q gnfn2Q = @gnfn2Q gnfn3Q = @gnfn3Q gnfn4Q = @gnfn4Q gnfn5Q = @gnfn5Q gnfn6Q = @gnfn6Q pAQ = @pAQ pBQ = @pBQ pCQ = @pCQ sxQ = @sxQ hopQ = @hopQ hopFlavorQ = @hopFlavorQ fnhopQ = @fnhopQ fnhop2Q = @fnhop2Q dynv1Q = @dynv1Q dynv2Q = @dynv2Q dynv3Q = @dynv3Q dynv4Q = @dynv4Q dynv5Q = @dynv5Q dynv6Q = @dynv6Q dynOpQ = @dynOpQ daQ = @daQ dbQ = @dbQ dhxQ = @dhxQ dynv1aQ = @dynv1aQ dynv1bQ = @dynv1bQ dynv1cQ = @dynv1cQ dynv2aQ = @dynv2aQ dynv2bQ = @dynv2bQ dynv2cQ = @dynv2cQ dynv3aQ = @dynv3aQ dynv3bQ = @dynv3bQ dynv3cQ = @dynv3cQ dynv4aQ = @dynv4aQ dynv4bQ = @dynv4bQ dynv4cQ = @dynv4cQ dynv5aQ = @dynv5aQ dynv5bQ = @dynv5bQ dynv5cQ = @dynv5cQ dynv6aQ = @dynv6aQ dynv6bQ = @dynv6bQ dynv6cQ = @dynv6cQ dynFlavorQ = @dynFlavorQ dynfn1Q = @dynfn1Q dynfn2Q = @dynfn2Q dynfn3Q = @dynfn3Q dynfn4Q = @dynfn4Q dynfn5Q = @dynfn5Q dynfn6Q = @dynfn6Q twsv1Q = @twsv1Q twsv2Q = @twsv2Q twsv3Q = @twsv3Q twsv4Q = @twsv4Q twsv5Q = @twsv5Q twsv6Q = @twsv6Q twsv7Q = @twsv7Q twsv8Q = @twsv8Q twsv9Q = @twsv9Q twsv10Q = @twsv10Q twsv11Q = @twsv11Q twsv12Q = @twsv12Q twsv13Q = @twsv13Q twsv14Q = @twsv14Q twsv15Q = @twsv15Q twsv16Q = @twsv16Q twsOp1Q = @twsOp1Q twsOp2Q = @twsOp2Q twa1Q = @twa1Q twa1bQ = @twa1bQ twa2Q = @twa2Q twa2bQ = @twa2bQ twb1Q = @twb1Q twb1bQ = @twb1bQ twb2Q = @twb2Q twb2bQ = @twb2bQ twsh1Q = @twsh1Q twsh1bQ = @twsh1bQ twsh2Q = @twsh2Q twsh2bQ = @twsh2bQ twsv1aQ = @twsv1aQ twsv1bQ = @twsv1bQ twsv1cQ = @twsv1cQ twsv2aQ = @twsv2aQ twsv2bQ = @twsv2bQ twsv2cQ = @twsv2cQ twsv3aQ = @twsv3aQ twsv3bQ = @twsv3bQ twsv3cQ = @twsv3cQ twsv4aQ = @twsv4aQ twsv4bQ = @twsv4bQ twsv4cQ = @twsv4cQ twsv5aQ = @twsv5aQ twsv5bQ = @twsv5bQ twsv5cQ = @twsv5cQ twsv6aQ = @twsv6aQ twsv6bQ = @twsv6bQ twsv6cQ = @twsv6cQ twsv7aQ = @twsv7aQ twsv7bQ = @twsv7bQ twsv7cQ = @twsv7cQ twsv8aQ = @twsv8aQ twsv8bQ = @twsv8bQ twsv8cQ = @twsv8cQ twsv9aQ = @twsv9aQ twsv9bQ = @twsv9bQ twsv9cQ = @twsv9cQ twsv10aQ = @twsv10aQ twsv10bQ = @twsv10bQ twsv10cQ = @twsv10cQ twsv11aQ = @twsv11aQ twsv11bQ = @twsv11bQ twsv11cQ = @twsv11cQ twsv12aQ = @twsv12aQ twsv12bQ = @twsv12bQ twsv12cQ = @twsv12cQ twsv13aQ = @twsv13aQ twsv13bQ = @twsv13bQ twsv13cQ = @twsv13cQ twsv14aQ = @twsv14aQ twsv14bQ = @twsv14bQ twsv14cQ = @twsv14cQ twsv15aQ = @twsv15aQ twsv15bQ = @twsv15bQ twsv15cQ = @twsv15cQ twsv16aQ = @twsv16aQ twsv16bQ = @twsv16bQ twsv16cQ = @twsv16cQ twsFlavor1Q = @twsFlavor1Q twsfn1Q = @twsfn1Q twsfn2Q = @twsfn2Q twsfn3Q = @twsfn3Q twsfn4Q = @twsfn4Q twsfn5Q = @twsfn5Q twsfn6Q = @twsfn6Q twsfn7Q = @twsfn7Q twsfn8Q = @twsfn8Q twsfn9Q = @twsfn9Q twsfn10Q = @twsfn10Q twsfn11Q = @twsfn11Q twsfn12Q = @twsfn12Q twsfn13Q = @twsfn13Q twsfn14Q = @twsfn14Q twsfn15Q = @twsfn15Q twsfn16Q = @twsfn16Q twv1Q = @twv1Q twv2Q = @twv2Q twv3Q = @twv3Q twv4Q = @twv4Q twv5Q = @twv5Q twv6Q = @twv6Q twv7Q = @twv7Q twv8Q = @twv8Q twv9Q = @twv9Q twv10Q = @twv10Q twiOpQ = @twiOpQ taQ = @taQ thQ = @thQ th2Q = @th2Q twv1aQ = @twv1aQ twv1bQ = @twv1bQ twv1cQ = @twv1cQ twv2aQ = @twv2aQ twv2bQ = @twv2bQ twv2cQ = @twv2cQ twv3aQ = @twv3aQ twv3bQ = @twv3bQ twv3cQ = @twv3cQ twv4aQ = @twv4aQ twv4bQ = @twv4bQ twv4cQ = @twv4cQ twv5aQ = @twv5aQ twv5bQ = @twv5bQ twv5cQ = @twv5cQ twv6aQ = @twv6aQ twv6bQ = @twv6bQ twv6cQ = @twv6cQ twv7aQ = @twv7aQ twv7bQ = @twv7bQ twv7cQ = @twv7cQ twv8aQ = @twv8aQ twv8bQ = @twv8bQ twv8cQ = @twv8cQ twv9aQ = @twv9aQ twv9bQ = @twv9bQ twv9cQ = @twv9cQ twv10aQ = @twv10aQ twv10bQ = @twv10bQ twv10cQ = @twv10cQ twiFlavorQ = @twiFlavorQ twfn1Q = @twfn1Q twfn2Q = @twfn2Q twfn3Q = @twfn3Q twfn4Q = @twfn4Q twfn5Q = @twfn5Q twfn6Q = @twfn6Q twfn7Q = @twfn7Q twfn8Q = @twfn8Q twfn9Q = @twfn9Q twfn10Q = @twfn10Q tgwv1Q = @tgwv1Q tgwv2Q = @tgwv2Q tgwv3Q = @tgwv3Q tgwv4Q = @tgwv4Q tgwv5Q = @tgwv5Q tgwv6Q = @tgwv6Q tgwv7Q = @tgwv7Q tgwv8Q = @tgwv8Q tgwv9Q = @tgwv9Q tgwv10Q = @tgwv10Q tgwv11Q = @tgwv11Q tgwv12Q = @tgwv12Q tgwOp1Q = @tgwOp1Q tgwOp2Q = @tgwOp2Q tgwa1Q = @tgwa1Q tgwb1Q = @tgwb1Q tgwa2Q = @tgwa2Q tgwb2Q = @tgwb2Q tgwh1Q = @tgwh1Q tgwh2Q = @tgwh2Q tgwv1aQ = @tgwv1aQ tgwv1bQ = @tgwv1bQ tgwv1cQ = @tgwv1cQ tgwv2aQ = @tgwv2aQ tgwv2bQ = @tgwv2bQ tgwv2cQ = @tgwv2cQ tgwv3aQ = @tgwv3aQ tgwv3bQ = @tgwv3bQ tgwv3cQ = @tgwv3cQ tgwv4aQ = @tgwv4aQ tgwv4bQ = @tgwv4bQ tgwv4cQ = @tgwv4cQ tgwv5aQ = @tgwv5aQ tgwv5bQ = @tgwv5bQ tgwv5cQ = @tgwv5cQ tgwv6aQ = @tgwv6aQ tgwv6bQ = @tgwv6bQ tgwv6cQ = @tgwv6cQ tgwv7aQ = @tgwv7aQ tgwv7bQ = @tgwv7bQ tgwv7cQ = @tgwv7cQ tgwv8aQ = @tgwv8aQ tgwv8bQ = @tgwv8bQ tgwv8cQ = @tgwv8cQ tgwv9aQ = @tgwv9aQ tgwv9bQ = @tgwv9bQ tgwv9cQ = @tgwv9cQ tgwv10aQ = @tgwv10aQ tgwv10bQ = @tgwv10bQ tgwv10cQ = @tgwv10cQ tgwv11aQ = @tgwv11aQ tgwv11bQ = @tgwv11bQ tgwv11cQ = @tgwv11cQ tgwv12aQ = @tgwv12aQ tgwv12bQ = @tgwv12bQ tgwv12cQ = @tgwv12cQ tgwfn1Q = @tgwfn1Q tgwfn2Q = @tgwfn2Q tgwfn3Q = @tgwfn3Q tgwfn4Q = @tgwfn4Q tgwfn5Q = @tgwfn5Q tgwfn6Q = @tgwfn6Q tgwfn7Q = @tgwfn7Q tgwfn8Q = @tgwfn8Q tgwfn9Q = @tgwfn9Q tgwfn10Q = @tgwfn10Q tgwfn11Q = @tgwfn11Q tgwfn12Q = @tgwfn12Q fnov1 = @fnov1 fnov2 = @fnov2 fnx3 = @fnx3 fnx2 = @fnx2 fny3 = @fny3 fny2 = @fny2 nufuncx = @nufuncx nufuncy = @nufuncy xtra1 = @xtra1 xtra2 = @xtra2 ssfn = @ssfn pixfn = @pixfn varType = @varType opxy = @opxy nuflav2 = @nuflav2 opadd = @opadd nufnx2 = @nufnx2 nufny2 = @nufny2 nufuncxtx = @nufuncxtx nufuncxty = @nufuncxty nuflav = @nuflav xtra1x = @xtrax1 xtra2x = @xtrax2 xtra3x = @xtrax3 xtra1y = @xtray1 xtra2y = @xtray2 xtra3y = @xtray3 looptype = @looptype talispar1 = @talispar1 talispar2 = @talispar2 talispar3 = @talispar3 talisfn = @talisfn bailtype = @bailtype bailfunc = @bailfunc mandpar1 = @mandpar1 mandpar2 = @mandpar2 mandpar3 = @mandpar3 mandfn1 = @mandfn1 lampar1 = @lampar1 lampar2 = @lampar2 lampar3 = @lampar3 lamfn1 = @lamfn1 phopar1 = @phopar1 phopar2 = @phopar2 phopar3 = @phopar3 phopar4 = @phopar4 phopar5 = @phopar5 phopar6 = @phopar6 phofn1 = @phofn1 phofn2 = @phofn2 phofn3 = @phofn3 clampar1 = @clampar1 clampar2 = @clampar2 clampar3 = @clampar3 clamfn = @clamfn } ****************************************************************** mandelbrotTurbo{ ; To go boldly where no Mandelbrot has gone before... ; Generic Mandelbrot set, but with a twist. Changing 'Loop' ; to 'Turbo' changes the z definition with interesting results. ; Especially nice for exploring Mandelbrot zooms. ; Note: Turbo 1 & 2 look the same until you start changing Z functions. ; 2011.03.30 Toby Marshall v1.0 ; init: complex a = z complex c = #pixel complex z = @startSeed IF (@mode == "Mandelbrot") z = @startSeed ENDIF IF @mode == "Julia" z = #pixel c = @startSeed ENDIF loop: if @type == "Normal" a = z z = a^@pwr* @zfn2(@zfn(z-@power*0.1)) + @cfn(c) elseif @type == "Turbo 1" a = @zfn3(z)*@typefn2(@typefn(c-@start)) z = a^@pwr* @zfn2(@zfn(z-@power*0.1)) + @cfn(c) elseif @type == "Turbo 2" a = z*@typefn2(@typefn(c-@start)) z = @zfn3(z)^@pwr* @zfn2(@zfn(a-@power*0.1)) + @cfn(c) elseif @type == "Turbo 3" a = z*@typefn2(@typefn(c-@start)) z = a^@pwr* @zfn2(@zfn(a-@power*0.1)) + @cfn(c) endif bailout: |z| <= @bailout default: title = "Mandelbrot Turbo" center = (-0.5, 0) maxiter = 2500 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" hint = "Shows the current mode for the formula." enabled = false endparam param type caption = "Loop" enum = "Normal""Turbo 1""Turbo 2""Turbo 3" default = 0 endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." visible = false endparam complex param startSeed caption = "Start/Seed" default = (0,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam param pwr caption = "Power" default = (1,0) endparam param start caption = "Pixel Parameter" default = (0,0) hint = "Varying this parameter will distort the M set, but will not \ change or eliminate the minibrots found in zooms." endparam param power caption = "Z Parameter" default = (0,0) hint = "Varying this parameter will distort the M set and alter or \ eliminate minibrots in zooms." endparam float param bailout caption = "Bailout value" default = 44 min = 1.0 endparam func zfn caption = "Z Function 1a" default= ident() hint = "Certain values here will change the fractal patterns found around \ minibrots and change the shape of the minibrots themselves." endfunc func zfn2 caption = "Z Function 1b" default= ident() hint = "Certain values here will change the fractal patterns found around \ minibrots and change the shape of the minibrots themselves." endfunc func zfn3 caption = "Z Function 2" default= ident() visible = @type=="Turbo 1" || @type=="Turbo 2" hint = "Certain values here will change the fractal patterns found around \ minibrots and change the shape of the minibrots themselves." endfunc func cfn caption = "Pixel Function" default= ident() hint = "Changing this function alters the mapping of the M set, and the \ way the elements are mapped, but leaves minibrots intact." endfunc func typefn caption = "Turbo Function 1" visible = @type == 1 default = cabs() hint = "Changing this function will result in alterations of the M set,\ and the way the elements are colored." endfunc func typefn2 caption = "Turbo Function 2" visible = @type == 1 default = ident() hint = "Changing this function will result in alterations of the M set,\ and the way the elements are colored." endfunc float param version caption = "Version" default = 1.0 visible = false endparam switch: type = "MandelbrotTurbo" startSeed = #pixel power = power bailout = bailout type = @type pwr = @pwr mode = switchMode switchMode = mode center = @swcenter scale = @swscale typefn = @typefn typefn2 = @typefn2 zfn = @zfn zfn3 = @zfn3 zfn2 = @zfn2 cfn =@cfn fn1 = @fn1 version = @version } ************************************************************************** mandelbrotFantasia { ; A very liberal port of the 'Curfew' formula in FE. Good for ; exploring Mandelbrot zooms. ; Note: Turbo 1 & 2 look the same until you start changing functions. ; Turbo 4 and onwards do not produce minibrots. ; 2011.04.01 Toby Marshall v 1.0 ; 2011.04.02, v 1.1--added Turbo 4-11, fixed bug in switch init: complex a = z complex c = #pixel complex z = @startSeed IF (@mode == "Mandelbrot") z = @startSeed ENDIF IF @mode == "Julia" z = #pixel c = @startSeed ENDIF loop: a = z*@typefn(c) if @type == "Normal" z = (@fn2(z^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(z)+@fn4(c)+@p1)))) elseif @type == "Turbo 1" z = (@fn2(a^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(z)+@fn4(c)+@p1)))) elseif @type == "Turbo 2" z = (@fn2(z^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(a)+@fn4(c)+@p1)))) elseif @type == "Turbo 3" z = (@fn2(a^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(a)+@fn4(c)+@p1)))) elseif @type == "Turbo 4" z = (@fn2(z^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(z)+@fn4a(z)+@p1)))) elseif @type == "Turbo 5" z = (@fn2(z^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(a)+@fn4a(z)+@p1)))) elseif @type == "Turbo 6" z = (@fn2(z^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(z)+@fn4a(a)+@p1)))) elseif @type == "Turbo 7" z = (@fn2(z^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(a)+@fn4a(a)+@p1)))) elseif @type == "Turbo 8" z = (@fn2(a^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(z)+@fn4a(z)+@p1)))) elseif @type == "Turbo 9" z = (@fn2(a^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(a)+@fn4a(z)+@p1)))) elseif @type == "Turbo 10" z = (@fn2(a^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(z)+@fn4a(a)+@p1)))) elseif @type == "Turbo 11" z = (@fn2(a^@pwr)+c+@p1)*recip(fn1(((1/c)/(@fn3(a)+@fn4a(a)+@p1)))) endif bailout: |z| <= @bailout default: title = "Mandelbrot Fantasia" center = (-0.5, 0) maxiter = 5000 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" enabled = false hint = "Shows the current mode for the formula." endparam param type caption = "Loop" enum = "Normal""Turbo 1""Turbo 2""Turbo 3""Turbo 4""Turbo 5""Turbo 6"\ "Turbo 7""Turbo 8""Turbo 9""Turbo 10""Turbo 11" default = 0 endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." visible = false endparam complex param startSeed caption = "Start/Seed" default = (0,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam complex param pwr caption = "Power" default = (1,0) endparam complex param p1 caption = "Offset" default = (0.1,0.1) endparam float param bailout caption = "Bailout value" default = 22 min = 1.0 endparam func fn1 caption = "Main Function" default = ident() endfunc func fn2 caption = "Z Function 1" default = ident() endfunc func fn3 caption = "Z Function 2" default = ident() endfunc func fn4 caption = "Pixel Function" default = ident() visible = @type < 4 endfunc func fn4a caption = "Z Function 3" default = ident() visible = @type > 3 endfunc func typefn caption = "Turbo Function" default = conj() visible = @type != 0 && @type != 4 endfunc float param version caption = "Version" default = 1.1 visible = false endparam switch: type = "mandelbrotFantasia" startSeed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 fn4a = @fn4a typefn = @typefn type = @type mode = switchMode switchMode = mode center = @swcenter scale = @swscale p1 = @p1 pwr = @pwr version = @version } **************************************************************************** unit-vector-explorer { ; Toby Marshall 2012.01.24, v 1.0 ; ; A modification of the "Unit Vector" formula of Kerry Mitchell, many ; thanks to him for his kind permission to use it as the basis for ; this formula. ; ; Hints: --the unit vector functions are "stackable"--they modify each other. ; --When using the "before" or "both" setting, try setting all unit vector ; functions to "ident" for more recognizable Mandelbrot/Julia stuff. ;--The "before" and "after" factors are powerful juju: try small increment ; increases and decreases ; ; Based on Asdam's Mandelbrot variation, posted to Fractal Forums 12/30/2011 ; http://www.fractalforums.com/new-theories-and-research/ ; is-there-anything-novel-left-to-do-in-m-like-escape-time-fractals-in-2d/ ; msg38948/#newinit: ; init: complex c = #pixel complex z = @startSeed IF (@mode == "Mandelbrot") z = @startSeed ENDIF IF @mode == "Julia" z = #pixel c = @startSeed ENDIF complex unit_vector=(0,0) loop: if((@tweak_type=="before")||(@tweak_type=="both")) if (@fn(z)==0) unit_vector=1 else unit_vector=@fz((z-@p1)^@p2)/@fnnn(@fnn(@fn(z))) endif if @ztype == "add" z=z+@fac_pre*@func_pre(((unit_vector-@vp1)*@vp2)^@vp3) elseif @ztype == "subtract" z=z-@fac_pre*@func_pre(((unit_vector-@vp1)*@vp2)^@vp3) elseif @ztype == "multiply" z=z*@fac_pre*@func_pre(((unit_vector-@vp1)*@vp2)^@vp3) elseif @ztype == "divide" z=z/@fac_pre*@func_pre(((unit_vector-@vp1)*@vp2)^@vp3) elseif @ztype == "exponent" z=z^@fac_pre*@func_pre(((unit_vector-@vp1)*@vp2)^@vp3) endif endif z=z^@power+c if((@tweak_type=="after")||(@tweak_type=="both")) if (@fn(z)==0) unit_vector=1 else unit_vector=@fz((z-@p1)^@p2)/@fnnn(@fnn(@fn(z))) endif if @ztype == "add" z=z+@fac_post*@func_post(((unit_vector-@vp1)*@vp2)^@vp3) elseif @ztype == "subtract" z=z-@fac_post*@func_post(((unit_vector-@vp1)*@vp2)^@vp3) elseif @ztype == "multiply" z=z*@fac_post*@func_post(((unit_vector-@vp1)*@vp2)^@vp3) elseif @ztype == "divide" z=z/@fac_post*@func_post(((unit_vector-@vp1)*@vp2)^@vp3) elseif @ztype == "exponent" z=z^@fac_post*@func_post(((unit_vector-@vp1)*@vp2)^@vp3) endif endif bailout: |z|<@bailout default: title="Unit Vector Explorer" method=multipass heading caption="Switch Paramters" endheading param mode caption = "current mode" default = 0 enum = "Mandelbrot" "Julia" enabled = false hint = "Shows the current mode for the formula." endparam param switchMode caption = "switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." visible = false endparam param swscale caption = "switch scale" default = 1.0 hint = "To reduce (values greater than 0 but\ less than 1) or magnify (values greater than\ 1) the image in the switch window. " endparam param swcenter caption = "switch center" default = (0,0) hint = "To change the centering of the image in the\ switch window" endparam param scale caption = "scale reset" default = 1.0 hint = "Reset this value to 1 after switching if you changed the 'switch\ scale' value." endparam param center caption = "center reset" default = (0,0) hint = "Reset this value to 0,0 after switching if you changed the 'switch\ center' value." endparam heading caption="Formula Parameters" endheading complex param startSeed caption = "start/seed" default = (0,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam complex param power caption="power" default=2 endparam float param bailout caption="bailout" default=1000 endparam param tweak_type caption="tweak type" default=1 enum="before" "after" "both" endparam param ztype caption = "loop type" enum = "add""subtract""multiply""divide""exponent" default=0 endparam complex param fac_pre caption="before factor" default=0.05 visible=((@tweak_type=="before")||(@tweak_type=="both")) endparam complex param fac_post caption="after factor" default=0.05 visible=((@tweak_type=="after")||(@tweak_type=="both")) endparam complex param vp1 caption="vector offset" default=0 endparam complex param vp2 caption="vector multiplier" default=(1,0) endparam complex param vp3 caption="vector power" default=(1,0) endparam complex param p1 caption="distort" default=(0,0) endparam complex param p2 caption="distort 2" default=(1,0) endparam heading caption = "Functions" endheading func func_pre caption="before function" default=ident() visible=((@tweak_type=="before")||(@tweak_type=="both")) endfunc func func_post caption="after function" default=ident() visible=((@tweak_type=="after")||(@tweak_type=="both")) endfunc func fnn caption="unit vector function 1" default=cabs() endfunc func fn caption="unit vector function 2" default=ident() endfunc func fnnn caption="unit vector function 3" default=ident() endfunc func fz caption="unit vector function 4" default=ident() endfunc float param version caption = "Version" default = 1.0 visible = false endparam switch: type="unit-vector-explorer" power=power bailout=bailout tweak_type=tweak_type fac_pre=fac_pre func_pre=func_pre fac_post=fac_post func_post=func_post fn=fn fnn=fnn fnnn=fnnn fz=fz startSeed=#pixel mode=switchMode switchMode=mode center=swcenter scale=swscale version=version vp1=vp1 vp2=vp2 vp3=vp3 ztype=ztype p1=p1 p2=p2 } alternating-functions+switch { ; Kerry Mitchell 02Jul2013 ; Toby Marshall added a switch and some other stuff... ; v1.0 22Jul2013 ; v1.0 27 Nov 2019 added some functions to the functions. ; ; Kerry has graciously given his permission for me to ; tweak his lovely formula. I have added a few things ; to his original. First, I added a switch. Because of the ; functions involved, it is not strictly Mandelbrot/Julia, ; so I have named it Mandelbrot and Julia 'mode'. ; ;!The switch does not work if the ; function types chosen are all Julia functions. ; ; In addition I have added some new functions. "Z*C" is ; exactly that, a simple linear scaling of Z by C. It is ; not much by itself, but it can add interesting things ; when used in conjunction with other functions. "Talis" ; is a Mandelbrot adaptation ported from Fractal Explorer: ; z=z*z/(1+z)+c. "Talis var" is a Talis variant: ; z=z*c*z*c/(1+z*c)+conj(c). I discovered this by accident, ; and it gives lovely results either exploring the Mandelbrot ; set or using the switch. ; ; I have added a great number of "z type" variations, and I ; have added some function blocks and two params to vary ; them even further. I also added some function blocks to ; some of the original functions. ; ; ; init: complex dz=(0,0) complex z=@startseed complex xnew=(0,0) complex xold=(0,0) complex ynew=(0,0) complex yold=(0,0) complex znew=(0,0) complex zold=(0,0) complex znew2=(0,0) complex zold2=(0,0) float r=0 float sincos=0 int funtype=0 int iter=0 int picker=0 int seed=@initial_seed complex c=#pixel if @mode2 == "Mandelbrot Mode" z = @startseed c = #pixel endif if @mode2 == "Julia Mode" z = #pixel c = @startseed if @scale != 1.0 z = z/@scale endif if @center != (0.0,0.0) z = z + @center endif endif ; if(@initz_type=="pixel") zold=#pixel else zold=@initial_z endif iter=-1 loop: iter=iter+1 ; ; choose function ; ; 1 function ; if(@nfunction=="1") if(@fn1=="Mandelbrot 1") funtype=1 elseif(@fn1=="Julia 1") funtype=2 elseif(@fn1=="Newton M 1") funtype=3 elseif(@fn1=="Newton J 1") funtype=4 elseif(@fn1=="Popcorn C 1") funtype=5 elseif(@fn1=="Popcorn R 1") funtype=6 elseif(@fn1=="Mandelbrot 2") funtype=7 elseif(@fn1=="Julia 2") funtype=8 elseif(@fn1=="Newton M 2") funtype=9 elseif(@fn1=="Newton J 2") funtype=10 elseif(@fn1=="Popcorn C 2") funtype=11 elseif(@fn1=="Popcorn R 2") funtype=12 elseif(@fn1=="Z*C 1") funtype=13 elseif(@fn1=="Z*C 2") funtype=14 elseif(@fn1=="Talis 1") funtype=15 elseif(@fn1=="Talis 2") funtype=16 elseif(@fn1=="Talis var 1") funtype=17 elseif(@fn1=="Talis var 2") funtype=18 endif ; ; 2 functions ; elseif(@nfunction=="2") if(@oscillator_type=="ramp") picker=iter%2 elseif(@oscillator_type=="sine") sincos=(1+sin(iter-0.125))/2 picker=trunc(sincos*2) elseif(@oscillator_type=="cosine") sincos=(1+cos(iter+0.125))/2 picker=trunc(sincos*2) elseif(@oscillator_type=="random msb") seed=random(seed) sincos=abs(seed/#randomrange) picker=trunc(sincos*2) elseif(@oscillator_type=="random lsb") seed=random(seed) picker=abs(seed)%2 endif picker=picker+1 if(picker==1) if(@fn1=="Mandelbrot 1") funtype=1 elseif(@fn1=="Julia 1") funtype=2 elseif(@fn1=="Newton M 1") funtype=3 elseif(@fn1=="Newton J 1") funtype=4 elseif(@fn1=="Popcorn C 1") funtype=5 elseif(@fn1=="Popcorn R 1") funtype=6 elseif(@fn1=="Mandelbrot 2") funtype=7 elseif(@fn1=="Julia 2") funtype=8 elseif(@fn1=="Newton M 2") funtype=9 elseif(@fn1=="Newton J 2") funtype=10 elseif(@fn1=="Popcorn C 2") funtype=11 elseif(@fn1=="Popcorn R 2") funtype=12 elseif(@fn1=="Z*C 1") funtype=13 elseif(@fn1=="Z*C 2") funtype=14 elseif(@fn1=="Talis 1") funtype=15 elseif(@fn1=="Talis 2") funtype=16 elseif(@fn1=="Talis var 1") funtype=17 elseif(@fn1=="Talis var 2") funtype=18 endif else if(@fn2=="Mandelbrot 1") funtype=1 elseif(@fn2=="Julia 1") funtype=2 elseif(@fn2=="Newton M 1") funtype=3 elseif(@fn2=="Newton J 1") funtype=4 elseif(@fn2=="Popcorn C 1") funtype=5 elseif(@fn2=="Popcorn R 1") funtype=6 elseif(@fn2=="Mandelbrot 2") funtype=7 elseif(@fn2=="Julia 2") funtype=8 elseif(@fn2=="Newton M 2") funtype=9 elseif(@fn2=="Newton J 2") funtype=10 elseif(@fn2=="Popcorn C 2") funtype=11 elseif(@fn2=="Popcorn R 2") funtype=12 elseif(@fn2=="Z*C 1") funtype=13 elseif(@fn2=="Z*C 2") funtype=14 elseif(@fn2=="Talis 1") funtype=15 elseif(@fn2=="Talis 2") funtype=16 elseif(@fn2=="Talis var 1") funtype=17 elseif(@fn2=="Talis var 2") funtype=18 endif endif ; ; 3 functions ; elseif(@nfunction=="3") if(@oscillator_type=="ramp") picker=iter%3 elseif(@oscillator_type=="sine") sincos=(1+sin(iter-0.125))/2 picker=trunc(sincos*3) elseif(@oscillator_type=="cosine") sincos=(1+cos(iter+0.125))/2 picker=trunc(sincos*3) elseif(@oscillator_type=="random msb") seed=random(seed) sincos=abs(seed/#randomrange) picker=trunc(sincos*3) elseif(@oscillator_type=="random lsb") seed=random(seed) picker=abs(seed)%3 endif picker=picker+1 if(picker==1) if(@fn1=="Mandelbrot 1") funtype=1 elseif(@fn1=="Julia 1") funtype=2 elseif(@fn1=="Newton M 1") funtype=3 elseif(@fn1=="Newton J 1") funtype=4 elseif(@fn1=="Popcorn C 1") funtype=5 elseif(@fn1=="Popcorn R 1") funtype=6 elseif(@fn1=="Mandelbrot 2") funtype=7 elseif(@fn1=="Julia 2") funtype=8 elseif(@fn1=="Newton M 2") funtype=9 elseif(@fn1=="Newton J 2") funtype=10 elseif(@fn1=="Popcorn C 2") funtype=11 elseif(@fn1=="Popcorn R 2") funtype=12 elseif(@fn1=="Z*C 1") funtype=13 elseif(@fn1=="Z*C 2") funtype=14 elseif(@fn1=="Talis 1") funtype=15 elseif(@fn1=="Talis 2") funtype=16 elseif(@fn1=="Talis var 1") funtype=17 elseif(@fn1=="Talis var 2") funtype=18 endif elseif(picker==2) if(@fn2=="Mandelbrot 1") funtype=1 elseif(@fn2=="Julia 1") funtype=2 elseif(@fn2=="Newton M 1") funtype=3 elseif(@fn2=="Newton J 1") funtype=4 elseif(@fn2=="Popcorn C 1") funtype=5 elseif(@fn2=="Popcorn R 1") funtype=6 elseif(@fn2=="Mandelbrot 2") funtype=7 elseif(@fn2=="Julia 2") funtype=8 elseif(@fn2=="Newton M 2") funtype=9 elseif(@fn2=="Newton J 2") funtype=10 elseif(@fn2=="Popcorn C 2") funtype=11 elseif(@fn2=="Popcorn R 2") funtype=12 elseif(@fn2=="Z*C 1") funtype=13 elseif(@fn2=="Z*C 2") funtype=14 elseif(@fn2=="Talis 1") funtype=15 elseif(@fn2=="Talis 2") funtype=16 elseif(@fn2=="Talis var 1") funtype=17 elseif(@fn2=="Talis var 2") funtype=18 endif else if(@fn3=="Mandelbrot 1") funtype=1 elseif(@fn3=="Julia 1") funtype=2 elseif(@fn3=="Newton M 1") funtype=3 elseif(@fn3=="Newton J 1") funtype=4 elseif(@fn3=="Popcorn C 1") funtype=5 elseif(@fn3=="Popcorn R 1") funtype=6 elseif(@fn3=="Mandelbrot 2") funtype=7 elseif(@fn3=="Julia 2") funtype=8 elseif(@fn3=="Newton M 2") funtype=9 elseif(@fn3=="Newton J 2") funtype=10 elseif(@fn3=="Popcorn C 2") funtype=11 elseif(@fn3=="Popcorn R 2") funtype=12 elseif(@fn3=="Z*C 1") funtype=13 elseif(@fn3=="Z*C 2") funtype=14 elseif(@fn3=="Talis 1") funtype=15 elseif(@fn3=="Talis 2") funtype=16 elseif(@fn3=="Talis var 1") funtype=17 elseif(@fn3=="Talis var 2") funtype=18 endif endif ; ; 4 functions ; elseif(@nfunction=="4") if(@oscillator_type=="ramp") picker=iter%4 elseif(@oscillator_type=="sine") sincos=(1+sin(iter-0.125))/2 picker=trunc(sincos*4) elseif(@oscillator_type=="cosine") sincos=(1+cos(iter+0.125))/2 picker=trunc(sincos*4) elseif(@oscillator_type=="random msb") seed=random(seed) sincos=abs(seed/#randomrange) picker=trunc(sincos*4) elseif(@oscillator_type=="random lsb") seed=random(seed) picker=abs(seed)%4 endif picker=picker+1 if(picker==1) if(@fn1=="Mandelbrot 1") funtype=1 elseif(@fn1=="Julia 1") funtype=2 elseif(@fn1=="Newton M 1") funtype=3 elseif(@fn1=="Newton J 1") funtype=4 elseif(@fn1=="Popcorn C 1") funtype=5 elseif(@fn1=="Popcorn R 1") funtype=6 elseif(@fn1=="Mandelbrot 2") funtype=7 elseif(@fn1=="Julia 2") funtype=8 elseif(@fn1=="Newton M 2") funtype=9 elseif(@fn1=="Newton J 2") funtype=10 elseif(@fn1=="Popcorn C 2") funtype=11 elseif(@fn1=="Popcorn R 2") funtype=12 elseif(@fn1=="Z*C 1") funtype=13 elseif(@fn1=="Z*C 2") funtype=14 elseif(@fn1=="Talis 1") funtype=15 elseif(@fn1=="Talis 2") funtype=16 elseif(@fn1=="Talis var 1") funtype=17 elseif(@fn1=="Talis var 2") funtype=18 endif elseif(picker==2) if(@fn2=="Mandelbrot 1") funtype=1 elseif(@fn2=="Julia 1") funtype=2 elseif(@fn2=="Newton M 1") funtype=3 elseif(@fn2=="Newton J 1") funtype=4 elseif(@fn2=="Popcorn C 1") funtype=5 elseif(@fn2=="Popcorn R 1") funtype=6 elseif(@fn2=="Mandelbrot 2") funtype=7 elseif(@fn2=="Julia 2") funtype=8 elseif(@fn2=="Newton M 2") funtype=9 elseif(@fn2=="Newton J 2") funtype=10 elseif(@fn2=="Popcorn C 2") funtype=11 elseif(@fn2=="Popcorn R 2") funtype=12 elseif(@fn2=="Z*C 1") funtype=13 elseif(@fn2=="Z*C 2") funtype=14 elseif(@fn2=="Talis 1") funtype=15 elseif(@fn2=="Talis 2") funtype=16 elseif(@fn2=="Talis var 1") funtype=17 elseif(@fn2=="Talis var 2") funtype=18 endif elseif(picker==3) if(@fn3=="Mandelbrot 1") funtype=1 elseif(@fn3=="Julia 1") funtype=2 elseif(@fn3=="Newton M 1") funtype=3 elseif(@fn3=="Newton J 1") funtype=4 elseif(@fn3=="Popcorn C 1") funtype=5 elseif(@fn3=="Popcorn R 1") funtype=6 elseif(@fn3=="Mandelbrot 2") funtype=7 elseif(@fn3=="Julia 2") funtype=8 elseif(@fn3=="Newton M 2") funtype=9 elseif(@fn3=="Newton J 2") funtype=10 elseif(@fn3=="Popcorn C 2") funtype=11 elseif(@fn3=="Popcorn R 2") funtype=12 elseif(@fn3=="Z*C 1") funtype=13 elseif(@fn3=="Z*C 2") funtype=14 elseif(@fn3=="Talis 1") funtype=15 elseif(@fn3=="Talis 2") funtype=16 elseif(@fn3=="Talis var 1") funtype=17 elseif(@fn3=="Talis var 2") funtype=18 endif else if(@fn4=="Mandelbrot 1") funtype=1 elseif(@fn4=="Julia 1") funtype=2 elseif(@fn4=="Newton M 1") funtype=3 elseif(@fn4=="Newton J 1") funtype=4 elseif(@fn4=="Popcorn C 1") funtype=5 elseif(@fn4=="Popcorn R 1") funtype=6 elseif(@fn4=="Mandelbrot 2") funtype=7 elseif(@fn4=="Julia 2") funtype=8 elseif(@fn4=="Newton M 2") funtype=9 elseif(@fn4=="Newton J 2") funtype=10 elseif(@fn4=="Popcorn C 2") funtype=11 elseif(@fn4=="Popcorn R 2") funtype=12 elseif(@fn4=="Z*C 1") funtype=13 elseif(@fn4=="Z*C 2") funtype=14 elseif(@fn4=="Talis 1") funtype=15 elseif(@fn4=="Talis 2") funtype=16 elseif(@fn4=="Talis var 1") funtype=17 elseif(@fn4=="Talis var 2") funtype=18 endif endif ; ; 5 functions ; elseif(@nfunction=="5") if(@oscillator_type=="ramp") picker=iter%5 elseif(@oscillator_type=="sine") sincos=(1+sin(iter-0.125))/2 picker=trunc(sincos*5) elseif(@oscillator_type=="cosine") sincos=(1+cos(iter+0.125))/2 picker=trunc(sincos*5) elseif(@oscillator_type=="random msb") seed=random(seed) sincos=abs(seed/#randomrange) picker=trunc(sincos*5) elseif(@oscillator_type=="random lsb") seed=random(seed) picker=abs(seed)%5 endif picker=picker+1 if(picker==1) if(@fn1=="Mandelbrot 1") funtype=1 elseif(@fn1=="Julia 1") funtype=2 elseif(@fn1=="Newton M 1") funtype=3 elseif(@fn1=="Newton J 1") funtype=4 elseif(@fn1=="Popcorn C 1") funtype=5 elseif(@fn1=="Popcorn R 1") funtype=6 elseif(@fn1=="Mandelbrot 2") funtype=7 elseif(@fn1=="Julia 2") funtype=8 elseif(@fn1=="Newton M 2") funtype=9 elseif(@fn1=="Newton J 2") funtype=10 elseif(@fn1=="Popcorn C 2") funtype=11 elseif(@fn1=="Popcorn R 2") funtype=12 elseif(@fn1=="Z*C 1") funtype=13 elseif(@fn1=="Z*C 2") funtype=14 elseif(@fn1=="Talis 1") funtype=15 elseif(@fn1=="Talis 2") funtype=16 elseif(@fn1=="Talis var 1") funtype=17 elseif(@fn1=="Talis var 2") funtype=18 endif elseif(picker==2) if(@fn2=="Mandelbrot 1") funtype=1 elseif(@fn2=="Julia 1") funtype=2 elseif(@fn2=="Newton M 1") funtype=3 elseif(@fn2=="Newton J 1") funtype=4 elseif(@fn2=="Popcorn C 1") funtype=5 elseif(@fn2=="Popcorn R 1") funtype=6 elseif(@fn2=="Mandelbrot 2") funtype=7 elseif(@fn2=="Julia 2") funtype=8 elseif(@fn2=="Newton M 2") funtype=9 elseif(@fn2=="Newton J 2") funtype=10 elseif(@fn2=="Popcorn C 2") funtype=11 elseif(@fn2=="Popcorn R 2") funtype=12 elseif(@fn2=="Z*C 1") funtype=13 elseif(@fn2=="Z*C 2") funtype=14 elseif(@fn2=="Talis 1") funtype=15 elseif(@fn2=="Talis 2") funtype=16 elseif(@fn2=="Talis var 1") funtype=17 elseif(@fn2=="Talis var 2") funtype=18 endif elseif(picker==3) if(@fn3=="Mandelbrot 1") funtype=1 elseif(@fn3=="Julia 1") funtype=2 elseif(@fn3=="Newton M 1") funtype=3 elseif(@fn3=="Newton J 1") funtype=4 elseif(@fn3=="Popcorn C 1") funtype=5 elseif(@fn3=="Popcorn R 1") funtype=6 elseif(@fn3=="Mandelbrot 2") funtype=7 elseif(@fn3=="Julia 2") funtype=8 elseif(@fn3=="Newton M 2") funtype=9 elseif(@fn3=="Newton J 2") funtype=10 elseif(@fn3=="Popcorn C 2") funtype=11 elseif(@fn3=="Popcorn R 2") funtype=12 elseif(@fn3=="Z*C 1") funtype=13 elseif(@fn3=="Z*C 2") funtype=14 elseif(@fn3=="Talis 1") funtype=15 elseif(@fn3=="Talis 2") funtype=16 elseif(@fn3=="Talis var 1") funtype=17 elseif(@fn3=="Talis var 2") funtype=18 endif elseif(picker==4) if(@fn4=="Mandelbrot 1") funtype=1 elseif(@fn4=="Julia 1") funtype=2 elseif(@fn4=="Newton M 1") funtype=3 elseif(@fn4=="Newton J 1") funtype=4 elseif(@fn4=="Popcorn C 1") funtype=5 elseif(@fn4=="Popcorn R 1") funtype=6 elseif(@fn4=="Mandelbrot 2") funtype=7 elseif(@fn4=="Julia 2") funtype=8 elseif(@fn4=="Newton M 2") funtype=9 elseif(@fn4=="Newton J 2") funtype=10 elseif(@fn4=="Popcorn C 2") funtype=11 elseif(@fn4=="Popcorn R 2") funtype=12 elseif(@fn4=="Z*C 1") funtype=13 elseif(@fn4=="Z*C 2") funtype=14 elseif(@fn4=="Talis 1") funtype=15 elseif(@fn4=="Talis 2") funtype=16 elseif(@fn4=="Talis var 1") funtype=17 elseif(@fn4=="Talis var 2") funtype=18 endif else if(@fn5=="Mandelbrot 1") funtype=1 elseif(@fn5=="Julia 1") funtype=2 elseif(@fn5=="Newton M 1") funtype=3 elseif(@fn5=="Newton J 1") funtype=4 elseif(@fn5=="Popcorn C 1") funtype=5 elseif(@fn5=="Popcorn R 1") funtype=6 elseif(@fn5=="Mandelbrot 2") funtype=7 elseif(@fn5=="Julia 2") funtype=8 elseif(@fn5=="Newton M 2") funtype=9 elseif(@fn5=="Newton J 2") funtype=10 elseif(@fn5=="Popcorn C 2") funtype=11 elseif(@fn5=="Popcorn R 2") funtype=12 elseif(@fn5=="Z*C 1") funtype=13 elseif(@fn5=="Z*C 2") funtype=14 elseif(@fn5=="Talis 1") funtype=15 elseif(@fn5=="Talis 2") funtype=16 elseif(@fn5=="Talis var 1") funtype=17 elseif(@fn5=="Talis var 2") funtype=18 endif endif ; ; 6 functions ; elseif(@nfunction=="6") if(@oscillator_type=="ramp") picker=iter%6 elseif(@oscillator_type=="sine") sincos=(1+sin(iter-0.125))/2 picker=trunc(sincos*6) elseif(@oscillator_type=="cosine") sincos=(1+cos(iter+0.125))/2 picker=trunc(sincos*6) elseif(@oscillator_type=="random msb") seed=random(seed) sincos=abs(seed/#randomrange) picker=trunc(sincos*6) elseif(@oscillator_type=="random lsb") seed=random(seed) picker=abs(seed)%6 endif picker=picker+1 if(picker==1) if(@fn1=="Mandelbrot 1") funtype=1 elseif(@fn1=="Julia 1") funtype=2 elseif(@fn1=="Newton M 1") funtype=3 elseif(@fn1=="Newton J 1") funtype=4 elseif(@fn1=="Popcorn C 1") funtype=5 elseif(@fn1=="Popcorn R 1") funtype=6 elseif(@fn1=="Mandelbrot 2") funtype=7 elseif(@fn1=="Julia 2") funtype=8 elseif(@fn1=="Newton M 2") funtype=9 elseif(@fn1=="Newton J 2") funtype=10 elseif(@fn1=="Popcorn C 2") funtype=11 elseif(@fn1=="Popcorn R 2") funtype=12 elseif(@fn1=="Z*C 1") funtype=13 elseif(@fn1=="Z*C 2") funtype=14 elseif(@fn1=="Talis 1") funtype=15 elseif(@fn1=="Talis 2") funtype=16 elseif(@fn1=="Talis var 1") funtype=17 elseif(@fn1=="Talis var 2") funtype=18 endif elseif(picker==2) if(@fn2=="Mandelbrot 1") funtype=1 elseif(@fn2=="Julia 1") funtype=2 elseif(@fn2=="Newton M 1") funtype=3 elseif(@fn2=="Newton J 1") funtype=4 elseif(@fn2=="Popcorn C 1") funtype=5 elseif(@fn2=="Popcorn R 1") funtype=6 elseif(@fn2=="Mandelbrot 2") funtype=7 elseif(@fn2=="Julia 2") funtype=8 elseif(@fn2=="Newton M 2") funtype=9 elseif(@fn2=="Newton J 2") funtype=10 elseif(@fn2=="Popcorn C 2") funtype=11 elseif(@fn2=="Popcorn R 2") funtype=12 elseif(@fn2=="Z*C 1") funtype=13 elseif(@fn2=="Z*C 2") funtype=14 elseif(@fn2=="Talis 1") funtype=15 elseif(@fn2=="Talis 2") funtype=16 elseif(@fn2=="Talis var 1") funtype=17 elseif(@fn2=="Talis var 2") funtype=18 endif elseif(picker==3) if(@fn3=="Mandelbrot 1") funtype=1 elseif(@fn3=="Julia 1") funtype=2 elseif(@fn3=="Newton M 1") funtype=3 elseif(@fn3=="Newton J 1") funtype=4 elseif(@fn3=="Popcorn C 1") funtype=5 elseif(@fn3=="Popcorn R 1") funtype=6 elseif(@fn3=="Mandelbrot 2") funtype=7 elseif(@fn3=="Julia 2") funtype=8 elseif(@fn3=="Newton M 2") funtype=9 elseif(@fn3=="Newton J 2") funtype=10 elseif(@fn3=="Popcorn C 2") funtype=11 elseif(@fn3=="Popcorn R 2") funtype=12 elseif(@fn3=="Z*C 1") funtype=13 elseif(@fn3=="Z*C 2") funtype=14 elseif(@fn3=="Talis 1") funtype=15 elseif(@fn3=="Talis 2") funtype=16 elseif(@fn3=="Talis var 1") funtype=17 elseif(@fn3=="Talis var 2") funtype=18 endif elseif(picker==4) if(@fn4=="Mandelbrot 1") funtype=1 elseif(@fn4=="Julia 1") funtype=2 elseif(@fn4=="Newton M 1") funtype=3 elseif(@fn4=="Newton J 1") funtype=4 elseif(@fn4=="Popcorn C 1") funtype=5 elseif(@fn4=="Popcorn R 1") funtype=6 elseif(@fn4=="Mandelbrot 2") funtype=7 elseif(@fn4=="Julia 2") funtype=8 elseif(@fn4=="Newton M 2") funtype=9 elseif(@fn4=="Newton J 2") funtype=10 elseif(@fn4=="Popcorn C 2") funtype=11 elseif(@fn4=="Popcorn R 2") funtype=12 elseif(@fn4=="Z*C 1") funtype=13 elseif(@fn4=="Z*C 2") funtype=14 elseif(@fn4=="Talis 1") funtype=15 elseif(@fn4=="Talis 2") funtype=16 elseif(@fn4=="Talis var 1") funtype=17 elseif(@fn4=="Talis var 2") funtype=18 endif elseif(picker==5) if(@fn5=="Mandelbrot 1") funtype=1 elseif(@fn5=="Julia 1") funtype=2 elseif(@fn5=="Newton M 1") funtype=3 elseif(@fn5=="Newton J 1") funtype=4 elseif(@fn5=="Popcorn C 1") funtype=5 elseif(@fn5=="Popcorn R 1") funtype=6 elseif(@fn5=="Mandelbrot 2") funtype=7 elseif(@fn5=="Julia 2") funtype=8 elseif(@fn5=="Newton M 2") funtype=9 elseif(@fn5=="Newton J 2") funtype=10 elseif(@fn5=="Popcorn C 2") funtype=11 elseif(@fn5=="Popcorn R 2") funtype=12 elseif(@fn5=="Z*C 1") funtype=13 elseif(@fn5=="Z*C 2") funtype=14 elseif(@fn5=="Talis 1") funtype=15 elseif(@fn5=="Talis 2") funtype=16 elseif(@fn5=="Talis var 1") funtype=17 elseif(@fn5=="Talis var 2") funtype=18 endif else if(@fn6=="Mandelbrot 1") funtype=1 elseif(@fn6=="Julia 1") funtype=2 elseif(@fn6=="Newton M 1") funtype=3 elseif(@fn6=="Newton J 1") funtype=4 elseif(@fn6=="Popcorn C 1") funtype=5 elseif(@fn6=="Popcorn R 1") funtype=6 elseif(@fn6=="Mandelbrot 2") funtype=7 elseif(@fn6=="Julia 2") funtype=8 elseif(@fn6=="Newton M 2") funtype=9 elseif(@fn6=="Newton J 2") funtype=10 elseif(@fn6=="Popcorn C 2") funtype=11 elseif(@fn6=="Popcorn R 2") funtype=12 elseif(@fn6=="Z*C 1") funtype=13 elseif(@fn6=="Z*C 2") funtype=14 elseif(@fn6=="Talis 1") funtype=15 elseif(@fn6=="Talis 2") funtype=16 elseif(@fn6=="Talis var 1") funtype=17 elseif(@fn6=="Talis var 2") funtype=18 endif endif endif ; ; iterate ; if(funtype==1) ; Mandelbrot 1 znew=(1-@m1weight)*zold+@m1weight*@fnm1(zold^@m1power+(@fnm1c(c))) r=|znew| elseif(funtype==2) ; Julia 1 znew=(1-@j1weight)*zold+@j1weight*@fnj1(zold^@j1power+@j1param) r=|znew| elseif(funtype==3) ; Newton M 1, roots of pixel dz=@nm1fn1(zold^@nm1power-c)/@nm1fn2(@nm1power*zold^(@nm1power-1)) znew=zold-@nm1weight*dz r=1/|dz| elseif(funtype==4) ; Newton J 1, roots of specific value dz=@nj1fn1(zold^@nj1power-@nj1param)/@nj1fn2(@nj1power*zold^(@nj1power-1)) znew=zold-@nj1weight*dz r=1/|dz| elseif(funtype==5) ; Popcorn C 1, popcorn with complex variables xold=real(zold) yold=imag(zold) xnew=xold-@pc1h*@pc1out(@pc1yfn((yold)+@pc1in(@pc1c*yold))) ynew=yold-@pc1h*@pc1out(@pc1xfn((xold)+@pc1in(@pc1c*xold))) znew=xnew+flip(ynew) r=|znew| elseif(funtype==6) ; Popcorn R 1, popcorn with real variables xold=real(zold) yold=imag(zold) xnew=xold-@pr1h*real(@pr1out(@pr1yfn(yold+real(@pr1in(@pr1c*yold))))) ynew=yold-@pr1h*real(@pr1out(@pr1xfn(xold+real(@pr1in(@pr1c*xold))))) znew=xnew+flip(ynew) r=|znew| elseif(funtype==7) ; Mandelbrot 2 znew=(1-@m2weight)*zold+@m2weight*@fnm2(zold^@m2power+(@fnm2c(c))) r=|znew| elseif(funtype==8) ; Julia 2 znew=(1-@j2weight)*zold+@j2weight*@fnj2(zold^@j2power+@j2param) r=|znew| elseif(funtype==9) ; Newton M 2, roots of pixel dz=@nm2fn1(zold^@nm2power-c)/@nm2fn2(@nm2power*zold^(@nm2power-1)) znew=zold-@nm2weight*dz r=1/|dz| elseif(funtype==10) ; Newton J 2, roots of specific value dz=@nj2fn1(zold^@nj2power-@nj2param)/@nj2fn2(@nj2power*zold^(@nj2power-1)) znew=zold-@nj2weight*dz r=1/|dz| elseif(funtype==11) ; Popcorn C 2, popcorn with complex variables xold=real(zold) yold=imag(zold) xnew=xold-@pc2h*@pc2out(@pc2yfn(yold+@pc2in(@pc2c*yold))) ynew=yold-@pc2h*@pc2out(@pc2xfn(xold+@pc2in(@pc2c*xold))) znew=xnew+flip(ynew) r=|znew| elseif(funtype==12) ; Popcorn R 2, popcorn with real variables xold=real(zold) yold=imag(zold) xnew=xold-@pr2h*real(@pr2out(@pr2yfn(yold+real(@pr2in(@pr2c*yold))))) ynew=yold-@pr2h*real(@pr2out(@pr2xfn(xold+real(@pr2in(@pr2c*xold))))) znew=xnew+flip(ynew) r=|znew| elseif(funtype==13) ; z*c 1 znew=(1-@zc1weight)*zold+@zc1weight*@zc1fn(zold)^@zc1power*@zc1fn2(c) r=|znew| elseif(funtype==14) ; z*c 2 znew=(1-@zc2weight)*zold+@zc2weight*@zc2fn(zold)^@zc2power*@zc2fn2(c) r=|znew| elseif(funtype==15) ; Talis 1 znew=(1-@t1weight)*zold+@t1weight*@t1fn(zold)^@t1power*zold/(1+zold)+@t1fn2(c) r=|znew| elseif(funtype==16) ; Talis 2 znew=(1-@t2weight)*zold+@t2weight*@t2fn(zold)^@t2power*zold/(1+zold)+@t2fn2(c) r=|znew| elseif(funtype==17) ; Talis var 1 znew=(1-@tv1weight)*zold+@tv1weight*@tv1fn(zold^@tv1power*c)*(zold*c)/\ (1+zold*c)+@tv1fn2(conj(c)) r=|znew| elseif(funtype==18) ; Talis var 2 znew=(1-@tv2weight)*zold+@tv2weight*@tv2fn(zold^@tv2power*c)*(zold*c)/\ (1+zold*c)+@tv2fn2(conj(c)) r=|znew| endif ; ; establish z ; znew2=@znfn(znew-@zparn) zold2=@zofn(zold-@zparo) ; if @zflavor=="1" ; 22-22 if(@ztype=="iterate") z=@zafn(znew2)-@zpar elseif(@ztype=="difference") z=@zafn(znew2-zold2)-@zpar elseif(@ztype=="sum") z=@zafn((znew2+zold2))-@zpar elseif(@ztype=="product") z=@zafn((znew2*zold2))-@zpar elseif(@ztype=="ratio") z=@zafn((znew2/zold2))-@zpar elseif(@ztype=="inverse difference") z=@zafn((zold2-znew2))-@zpar elseif(@ztype=="inverse ratio") z=@zafn((zold2/znew2))-@zpar elseif(@ztype=="multi sum 1") z=@zafn((znew2+(zold2+znew2)))-@zpar elseif(@ztype=="multi sum 2") z=@zafn((znew2+(zold2*znew2)))-@zpar elseif(@ztype=="multi sum 3") z=@zafn((znew2+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 4") z=@zafn((znew2+(zold2/znew2)))-@zpar elseif(@ztype=="multi sum 5") z=@zafn((zold2+(zold2-znew2)))-@zpar elseif(@ztype=="multi sum 6") z=@zafn((zold2+(zold2+znew2)))-@zpar elseif(@ztype=="multi sum 7") z=@zafn((zold2+(zold2*znew2)))-@zpar elseif(@ztype=="multi sum 8") z=@zafn((zold2+(zold2/znew2)))-@zpar elseif(@ztype=="multi sum 9") z=@zafn((zold2+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 10") z=@zafn(((znew2-zold2)+(znew2*zold2)))-@zpar elseif(@ztype=="multi sum 11") z=@zafn(((znew2-zold2)+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 12") z=@zafn(((znew2-zold2)+(zold2/znew2)))-@zpar elseif(@ztype=="multi sum 13") z=@zafn(((zold2-znew2)+(znew2+zold2)))-@zpar elseif(@ztype=="multi sum 14") z=@zafn(((zold2-znew2)+(znew2*zold2)))-@zpar elseif(@ztype=="multi sum 15") z=@zafn(((zold2-znew2)+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 16") z=@zafn(((zold2-znew2)+(zold2/znew2)))-@zpar elseif(@ztype=="multi sum 17") z=@zafn(((znew2+zold2)+(zold2*znew2)))-@zpar elseif(@ztype=="multi sum 18") z=@zafn(((znew2+zold2)+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 19") z=@zafn(((znew2*zold2)+(zold2/znew2)))-@zpar elseif(@ztype=="multi sum 20") z=@zafn(((znew2*zold2)+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 21") z=@zafn(((znew2/zold2)+(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 1") z=@zafn((znew2-(zold2-znew2)))-@zpar elseif(@ztype=="multi difference 2") z=@zafn((znew2-(znew2+zold2)))-@zpar elseif(@ztype=="multi difference 3") z=@zafn((znew2-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 4") z=@zafn((znew2-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 5") z=@zafn((znew2-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 6") z=@zafn((zold2-(znew2-zold2)))-@zpar elseif(@ztype=="multi difference 7") z=@zafn((zold2-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 8") z=@zafn((zold2-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 9") z=@zafn((zold2-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 10") z=@zafn(((znew2-zold2)-zold2))-@zpar elseif(@ztype=="multi difference 11") z=@zafn(((znew2-zold2)-(znew2+zold2)))-@zpar elseif(@ztype=="multi difference 12") z=@zafn(((znew2-zold2)-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 13") z=@zafn(((znew2-zold2)-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 14") z=@zafn(((znew2-zold2)-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 15") z=@zafn(((zold2-znew2)-znew2))-@zpar elseif(@ztype=="multi difference 16") z=@zafn(((zold2-znew2)-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 17") z=@zafn(((zold2-znew2)-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 18") z=@zafn(((zold2-znew2)-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 19") z=@zafn(((znew2+zold2)-(zold2-znew2)))-@zpar elseif(@ztype=="multi difference 20") z=@zafn(((znew2+zold2)-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 21") z=@zafn(((znew2+zold2)-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 22") z=@zafn(((znew2+zold2)-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 23") z=@zafn(((znew2*zold2)-znew2))-@zpar elseif(@ztype=="multi difference 24") z=@zafn(((znew2*zold2)-zold2))-@zpar elseif(@ztype=="multi difference 25") z=@zafn(((znew2*zold2)-(znew2-zold2)))-@zpar elseif(@ztype=="multi difference 26") z=@zafn(((znew2*zold2)-(zold2-znew2)))-@zpar elseif(@ztype=="multi difference 27") z=@zafn(((znew2*zold2)-(zold2+znew2)))-@zpar elseif(@ztype=="multi difference 28") z=@zafn(((znew2*zold2)-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 29") z=@zafn(((znew2*zold2)-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 30") z=@zafn(((znew2/zold2)-znew2))-@zpar elseif(@ztype=="multi difference 31") z=@zafn(((znew2/zold2)-zold2))-@zpar elseif(@ztype=="multi difference 32") z=@zafn(((znew2/zold2)-(zold2-znew2)))-@zpar elseif(@ztype=="multi difference 33") z=@zafn(((znew2/zold2)-(znew2-zold2)))-@zpar elseif(@ztype=="multi difference 34") z=@zafn(((znew2/zold2)-(znew2+zold2)))-@zpar elseif(@ztype=="multi difference 35") z=@zafn(((znew2/zold2)-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 36") z=@zafn(((znew2/zold2)-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 37") z=@zafn(((zold2/znew2)-znew2))-@zpar elseif(@ztype=="multi difference 38") z=@zafn(((zold2/znew2)-zold2))-@zpar elseif(@ztype=="multi difference 39") z=@zafn(((zold2/znew2)-(zold2-znew2)))-@zpar elseif(@ztype=="multi difference 40") z=@zafn(((zold2/znew2)-(znew2-zold2)))-@zpar elseif(@ztype=="multi difference 41") z=@zafn(((zold2/znew2)-(znew2+zold2)))-@zpar elseif(@ztype=="multi difference 42") z=@zafn(((zold2/znew2)-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 43") z=@zafn(((zold2/znew2)/(znew2/zold2)))-@zpar elseif(@ztype=="multi product 1") z=@zafn((znew2*(znew2-zold2)))-@zpar elseif(@ztype=="multi product 2") z=@zafn((znew2*(zold2-znew2)))-@zpar elseif(@ztype=="multi product 3") z=@zafn((znew2*(zold2+znew2)))-@zpar elseif(@ztype=="multi product 4") z=@zafn((znew2*(znew2/zold2)))-@zpar elseif(@ztype=="multi product 5") z=@zafn((zold2*(znew2-zold2)))-@zpar elseif(@ztype=="multi product 6") z=@zafn((zold2*(zold2-znew2)))-@zpar elseif(@ztype=="multi product 7") z=@zafn((zold2*(zold2+znew2)))-@zpar elseif(@ztype=="multi product 8") z=@zafn((zold2*(zold2/znew2)))-@zpar elseif(@ztype=="multi product 9") z=@zafn(((znew2-zold2)*(zold2-znew2)))-@zpar elseif(@ztype=="multi product 10") z=@zafn(((znew2-zold2)*(znew2*zold2)))-@zpar elseif(@ztype=="multi product 11") z=@zafn(((znew2-zold2)*(znew2/zold2)))-@zpar elseif(@ztype=="multi product 12") z=@zafn(((znew2-zold2)*(zold2/znew2)))-@zpar elseif(@ztype=="multi product 13") z=@zafn(((zold2-znew2)*zold2))-@zpar elseif(@ztype=="multi product 14") z=@zafn(((zold2-znew2)*(znew2-zold2)))-@zpar elseif(@ztype=="multi product 15") z=@zafn(((zold2-znew2)*(znew2*zold2)))-@zpar elseif(@ztype=="multi product 16") z=@zafn(((zold2-znew2)*(znew2/zold2)))-@zpar elseif(@ztype=="multi product 17") z=@zafn(((znew2+zold2)*(zold2/znew2)))-@zpar elseif(@ztype=="multi ratio 1") z=@zafn((znew2/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 2") z=@zafn((znew2/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 3") z=@zafn((znew2/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 4") z=@zafn((znew2/(znew2*zold2)))-@zpar elseif(@ztype=="multi ratio 5") z=@zafn((zold2/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 6") z=@zafn((zold2/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 7") z=@zafn((zold2/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 8") z=@zafn(((znew2-zold2)/znew2))-@zpar elseif(@ztype=="multi ratio 9") z=@zafn(((znew2-zold2)/zold2))-@zpar elseif(@ztype=="multi ratio 10") z=@zafn(((znew2-zold2)/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 11") z=@zafn(((znew2-zold2)/(znew2*zold2)))-@zpar elseif(@ztype=="multi ratio 12") z=@zafn(((znew2-zold2)/(znew2/zold2)))-@zpar elseif(@ztype=="multi ratio 13") z=@zafn(((zold2-znew2)/znew2))-@zpar elseif(@ztype=="multi ratio 14") z=@zafn(((zold2-znew2)/zold2))-@zpar elseif(@ztype=="multi ratio 15") z=@zafn(((zold2-znew2)/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 16") z=@zafn(((zold2-znew2)/(znew2*zold2)))-@zpar elseif(@ztype=="multi ratio 17") z=@zafn(((zold2-znew2)/(znew2/zold2)))-@zpar elseif(@ztype=="multi ratio 18") z=@zafn(((znew2+zold2)/znew2))-@zpar elseif(@ztype=="multi ratio 19") z=@zafn(((znew2+zold2)/zold2))-@zpar elseif(@ztype=="multi ratio 20") z=@zafn(((znew2+zold2)/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 21") z=@zafn(((znew2+zold2)/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 22") z=@zafn(((znew2+zold2)/(znew2*zold2)))-@zpar elseif(@ztype=="multi ratio 23") z=@zafn(((znew2+zold2)/(zold2/znew2)))-@zpar elseif(@ztype=="multi ratio 24") z=@zafn(((znew2*zold2)/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 25") z=@zafn(((znew2*zold2)/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 26") z=@zafn(((znew2*zold2)/(zold2+znew2)))-@zpar elseif(@ztype=="multi ratio 27") z=@zafn(((znew2*zold2)/(zold2/znew2)))-@zpar elseif(@ztype=="multi ratio 28") z=@zafn(((znew2/zold2)/zold2))-@zpar elseif(@ztype=="multi ratio 29") z=@zafn(((znew2/zold2)/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 30") z=@zafn(((znew2/zold2)/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 31") z=@zafn(((znew2/zold2)/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 32") z=@zafn(((znew2/zold2)/(znew2*zold2)))-@zpar elseif(@ztype=="multi ratio 33") z=@zafn(((znew2/zold2)/(zold2/znew2)))-@zpar elseif(@ztype=="multi ratio 34") z=@zafn(((zold2/znew2)/znew2))-@zpar elseif(@ztype=="multi ratio 35") z=@zafn(((zold2/znew2)/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 36") z=@zafn(((zold2/znew2)/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 37") z=@zafn(((zold2/znew2)/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 38") z=@zafn(((zold2/znew2)/(znew2/zold2)))-@zpar elseif(@ztype=="weird") if(@nfunction=="1") z=@zafn(zold2^znew2)-@zpar elseif(@nfunction=="2") z=@zafn((-zold2)^znew2)-@zpar elseif(@nfunction=="3") z=@zafn((-zold2)^(-znew2))-@zpar elseif(@nfunction=="4") z=@zafn(zold2^(-znew2))-@zpar elseif(@nfunction=="5") z=@zafn((zold2+znew2)^(zold2-znew2))-@zpar elseif(@nfunction=="6") z=@zafn((znew2-zold2)^(zold2+znew2))-@zpar endif endif elseif @zflavor=="2"; 11-22 if(@ztype=="iterate") z=@zafn(znew2)-@zpar elseif(@ztype=="difference") z=@zafn(znew-zold2)-@zpar elseif(@ztype=="sum") z=@zafn((znew+zold2))-@zpar elseif(@ztype=="product") z=@zafn((znew*zold2))-@zpar elseif(@ztype=="ratio") z=@zafn((znew/zold2))-@zpar elseif(@ztype=="inverse difference") z=@zafn((zold-znew2))-@zpar elseif(@ztype=="inverse ratio") z=@zafn((zold/znew2))-@zpar elseif(@ztype=="multi sum 1") z=@zafn((znew+(zold2+znew2)))-@zpar elseif(@ztype=="multi sum 2") z=@zafn((znew+(zold2*znew2)))-@zpar elseif(@ztype=="multi sum 3") z=@zafn((znew+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 4") z=@zafn((znew+(zold2/znew2)))-@zpar elseif(@ztype=="multi sum 5") z=@zafn((zold+(zold2-znew2)))-@zpar elseif(@ztype=="multi sum 6") z=@zafn((zold+(zold2+znew2)))-@zpar elseif(@ztype=="multi sum 7") z=@zafn((zold+(zold2*znew2)))-@zpar elseif(@ztype=="multi sum 8") z=@zafn((zold+(zold2/znew2)))-@zpar elseif(@ztype=="multi sum 9") z=@zafn((zold+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 10") z=@zafn(((znew-zold)+(znew2*zold2)))-@zpar elseif(@ztype=="multi sum 11") z=@zafn(((znew-zold)+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 12") z=@zafn(((znew-zold)+(zold2/znew2)))-@zpar elseif(@ztype=="multi sum 13") z=@zafn(((zold-znew)+(znew2+zold2)))-@zpar elseif(@ztype=="multi sum 14") z=@zafn(((zold-znew)+(znew2*zold2)))-@zpar elseif(@ztype=="multi sum 15") z=@zafn(((zold-znew)+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 16") z=@zafn(((zold-znew)+(zold2/znew2)))-@zpar elseif(@ztype=="multi sum 17") z=@zafn(((znew+zold)+(zold2*znew2)))-@zpar elseif(@ztype=="multi sum 18") z=@zafn(((znew+zold)+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 19") z=@zafn(((znew*zold)+(zold2/znew2)))-@zpar elseif(@ztype=="multi sum 20") z=@zafn(((znew*zold)+(znew2/zold2)))-@zpar elseif(@ztype=="multi sum 21") z=@zafn(((znew/zold)+(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 1") z=@zafn((znew-(zold2-znew2)))-@zpar elseif(@ztype=="multi difference 2") z=@zafn((znew-(znew2+zold2)))-@zpar elseif(@ztype=="multi difference 3") z=@zafn((znew-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 4") z=@zafn((znew-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 5") z=@zafn((znew-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 6") z=@zafn((zold-(znew2-zold2)))-@zpar elseif(@ztype=="multi difference 7") z=@zafn((zold-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 8") z=@zafn((zold-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 9") z=@zafn((zold-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 10") z=@zafn(((znew-zold)-zold2))-@zpar elseif(@ztype=="multi difference 11") z=@zafn(((znew-zold)-(znew2+zold2)))-@zpar elseif(@ztype=="multi difference 12") z=@zafn(((znew-zold)-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 13") z=@zafn(((znew-zold)-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 14") z=@zafn(((znew-zold)-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 15") z=@zafn(((zold-znew)-znew2))-@zpar elseif(@ztype=="multi difference 16") z=@zafn(((zold-znew)-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 17") z=@zafn(((zold-znew)-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 18") z=@zafn(((zold-znew)-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 19") z=@zafn(((znew+zold)-(zold2-znew2)))-@zpar elseif(@ztype=="multi difference 20") z=@zafn(((znew+zold)-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 21") z=@zafn(((znew+zold)-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 22") z=@zafn(((znew+zold)-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 23") z=@zafn(((znew*zold)-znew2))-@zpar elseif(@ztype=="multi difference 24") z=@zafn(((znew*zold)-zold2))-@zpar elseif(@ztype=="multi difference 25") z=@zafn(((znew*zold)-(znew2-zold2)))-@zpar elseif(@ztype=="multi difference 26") z=@zafn(((znew*zold)-(zold2-znew2)))-@zpar elseif(@ztype=="multi difference 27") z=@zafn(((znew*zold)-(zold2+znew2)))-@zpar elseif(@ztype=="multi difference 28") z=@zafn(((znew*zold)-(znew2/zold2)))-@zpar elseif(@ztype=="multi difference 29") z=@zafn(((znew*zold)-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 30") z=@zafn(((znew/zold)-znew2))-@zpar elseif(@ztype=="multi difference 31") z=@zafn(((znew/zold)-zold2))-@zpar elseif(@ztype=="multi difference 32") z=@zafn(((znew/zold)-(zold2-znew2)))-@zpar elseif(@ztype=="multi difference 33") z=@zafn(((znew/zold)-(znew2-zold2)))-@zpar elseif(@ztype=="multi difference 34") z=@zafn(((znew/zold)-(znew2+zold2)))-@zpar elseif(@ztype=="multi difference 35") z=@zafn(((znew/zold)-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 36") z=@zafn(((znew/zold)-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 37") z=@zafn(((zold/znew)-znew2))-@zpar elseif(@ztype=="multi difference 38") z=@zafn(((zold/znew)-zold2))-@zpar elseif(@ztype=="multi difference 39") z=@zafn(((zold/znew)-(zold2-znew2)))-@zpar elseif(@ztype=="multi difference 40") z=@zafn(((zold/znew)-(znew2-zold2)))-@zpar elseif(@ztype=="multi difference 41") z=@zafn(((zold/znew)-(znew2+zold2)))-@zpar elseif(@ztype=="multi difference 42") z=@zafn(((zold/znew)-(znew2*zold2)))-@zpar elseif(@ztype=="multi difference 43") z=@zafn(((zold/znew)/(znew2/zold2)))-@zpar elseif(@ztype=="multi product 1") z=@zafn((znew*(znew2-zold2)))-@zpar elseif(@ztype=="multi product 2") z=@zafn((znew*(zold2-znew2)))-@zpar elseif(@ztype=="multi product 3") z=@zafn((znew*(zold2+znew2)))-@zpar elseif(@ztype=="multi product 4") z=@zafn((znew*(znew2/zold2)))-@zpar elseif(@ztype=="multi product 5") z=@zafn((zold*(znew2-zold2)))-@zpar elseif(@ztype=="multi product 6") z=@zafn((zold*(zold2-znew2)))-@zpar elseif(@ztype=="multi product 7") z=@zafn((zold*(zold2+znew2)))-@zpar elseif(@ztype=="multi product 8") z=@zafn((zold*(zold2/znew2)))-@zpar elseif(@ztype=="multi product 9") z=@zafn(((znew-zold)*(zold2-znew2)))-@zpar elseif(@ztype=="multi product 10") z=@zafn(((znew-zold)*(znew2*zold2)))-@zpar elseif(@ztype=="multi product 11") z=@zafn(((znew-zold)*(znew2/zold2)))-@zpar elseif(@ztype=="multi product 12") z=@zafn(((znew-zold)*(zold2/znew2)))-@zpar elseif(@ztype=="multi product 13") z=@zafn(((zold-znew)*zold2))-@zpar elseif(@ztype=="multi product 14") z=@zafn(((zold-znew)*(znew2-zold2)))-@zpar elseif(@ztype=="multi product 15") z=@zafn(((zold-znew)*(znew2*zold2)))-@zpar elseif(@ztype=="multi product 16") z=@zafn(((zold-znew)*(znew2/zold2)))-@zpar elseif(@ztype=="multi product 17") z=@zafn(((znew+zold)*(zold2/znew2)))-@zpar elseif(@ztype=="multi ratio 1") z=@zafn((znew/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 2") z=@zafn((znew/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 3") z=@zafn((znew/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 4") z=@zafn((znew/(znew2*zold2)))-@zpar elseif(@ztype=="multi ratio 5") z=@zafn((zold/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 6") z=@zafn((zold/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 7") z=@zafn((zold/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 8") z=@zafn(((znew-zold)/znew2))-@zpar elseif(@ztype=="multi ratio 9") z=@zafn(((znew-zold)/zold2))-@zpar elseif(@ztype=="multi ratio 10") z=@zafn(((znew-zold)/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 11") z=@zafn(((znew-zold)/(znew2*zold2)))-@zpar elseif(@ztype=="multi ratio 12") z=@zafn(((znew-zold)/(znew2/zold2)))-@zpar elseif(@ztype=="multi ratio 13") z=@zafn(((zold-znew)/znew2))-@zpar elseif(@ztype=="multi ratio 14") z=@zafn(((zold-znew)/zold2))-@zpar elseif(@ztype=="multi ratio 15") z=@zafn(((zold-znew)/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 16") z=@zafn(((zold-znew)/(znew2*zold2)))-@zpar elseif(@ztype=="multi ratio 17") z=@zafn(((zold-znew)/(znew2/zold2)))-@zpar elseif(@ztype=="multi ratio 18") z=@zafn(((znew+zold)/znew2))-@zpar elseif(@ztype=="multi ratio 19") z=@zafn(((znew+zold)/zold2))-@zpar elseif(@ztype=="multi ratio 20") z=@zafn(((znew+zold)/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 21") z=@zafn(((znew+zold)/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 22") z=@zafn(((znew+zold)/(znew2*zold2)))-@zpar elseif(@ztype=="multi ratio 23") z=@zafn(((znew+zold)/(zold2/znew2)))-@zpar elseif(@ztype=="multi ratio 24") z=@zafn(((znew*zold)/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 25") z=@zafn(((znew*zold)/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 26") z=@zafn(((znew*zold)/(zold2+znew2)))-@zpar elseif(@ztype=="multi ratio 27") z=@zafn(((znew*zold)/(zold2/znew2)))-@zpar elseif(@ztype=="multi ratio 28") z=@zafn(((znew/zold)/zold2))-@zpar elseif(@ztype=="multi ratio 29") z=@zafn(((znew/zold)/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 30") z=@zafn(((znew/zold)/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 31") z=@zafn(((znew/zold)/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 32") z=@zafn(((znew/zold)/(znew2*zold2)))-@zpar elseif(@ztype=="multi ratio 33") z=@zafn(((znew/zold)/(zold2/znew2)))-@zpar elseif(@ztype=="multi ratio 34") z=@zafn(((zold/znew)/znew2))-@zpar elseif(@ztype=="multi ratio 35") z=@zafn(((zold/znew)/(zold2-znew2)))-@zpar elseif(@ztype=="multi ratio 36") z=@zafn(((zold/znew)/(znew2-zold2)))-@zpar elseif(@ztype=="multi ratio 37") z=@zafn(((zold/znew)/(znew2+zold2)))-@zpar elseif(@ztype=="multi ratio 38") z=@zafn(((zold/znew)/(znew2/zold2)))-@zpar elseif(@ztype=="weird") if(@nfunction=="1") z=@zafn(zold^znew2)-@zpar elseif(@nfunction=="2") z=@zafn((-zold)^znew2)-@zpar elseif(@nfunction=="3") z=@zafn((-zold)^(-znew2))-@zpar elseif(@nfunction=="4") z=@zafn(zold^(-znew2))-@zpar elseif(@nfunction=="5") z=@zafn((zold+znew)^(zold2-znew2))-@zpar elseif(@nfunction=="6") z=@zafn((znew-zold)^(zold2+znew2))-@zpar endif endif elseif @zflavor=="3"; 12-12 if(@ztype=="iterate") z=@zafn(znew2)-@zpar elseif(@ztype=="difference") z=@zafn(znew-zold2)-@zpar elseif(@ztype=="sum") z=@zafn((znew+zold2))-@zpar elseif(@ztype=="product") z=@zafn((znew*zold2))-@zpar elseif(@ztype=="ratio") z=@zafn((znew/zold2))-@zpar elseif(@ztype=="inverse difference") z=@zafn((zold-znew2))-@zpar elseif(@ztype=="inverse ratio") z=@zafn((zold/znew2))-@zpar elseif(@ztype=="multi sum 1") z=@zafn((znew+(zold+znew2)))-@zpar elseif(@ztype=="multi sum 2") z=@zafn((znew+(zold*znew2)))-@zpar elseif(@ztype=="multi sum 3") z=@zafn((znew+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 4") z=@zafn((znew+(zold/znew2)))-@zpar elseif(@ztype=="multi sum 5") z=@zafn((zold+(zold-znew2)))-@zpar elseif(@ztype=="multi sum 6") z=@zafn((zold+(zold+znew2)))-@zpar elseif(@ztype=="multi sum 7") z=@zafn((zold+(zold*znew2)))-@zpar elseif(@ztype=="multi sum 8") z=@zafn((zold+(zold/znew2)))-@zpar elseif(@ztype=="multi sum 9") z=@zafn((zold+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 10") z=@zafn(((znew-zold2)+(znew*zold2)))-@zpar elseif(@ztype=="multi sum 11") z=@zafn(((znew-zold2)+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 12") z=@zafn(((znew-zold2)+(zold/znew2)))-@zpar elseif(@ztype=="multi sum 13") z=@zafn(((zold-znew2)+(znew+zold2)))-@zpar elseif(@ztype=="multi sum 14") z=@zafn(((zold-znew2)+(znew*zold2)))-@zpar elseif(@ztype=="multi sum 15") z=@zafn(((zold-znew2)+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 16") z=@zafn(((zold-znew2)+(zold/znew2)))-@zpar elseif(@ztype=="multi sum 17") z=@zafn(((znew+zold2)+(zold*znew2)))-@zpar elseif(@ztype=="multi sum 18") z=@zafn(((znew+zold2)+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 19") z=@zafn(((znew*zold2)+(zold/znew2)))-@zpar elseif(@ztype=="multi sum 20") z=@zafn(((znew*zold2)+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 21") z=@zafn(((znew/zold2)+(zold/znew2)))-@zpar elseif(@ztype=="multi difference 1") z=@zafn((znew-(zold-znew2)))-@zpar elseif(@ztype=="multi difference 2") z=@zafn((znew-(znew+zold2)))-@zpar elseif(@ztype=="multi difference 3") z=@zafn((znew-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 4") z=@zafn((znew-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 5") z=@zafn((znew-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 6") z=@zafn((zold-(znew-zold2)))-@zpar elseif(@ztype=="multi difference 7") z=@zafn((zold-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 8") z=@zafn((zold-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 9") z=@zafn((zold-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 10") z=@zafn(((znew-zold2)-zold))-@zpar elseif(@ztype=="multi difference 11") z=@zafn(((znew-zold2)-(znew+zold2)))-@zpar elseif(@ztype=="multi difference 12") z=@zafn(((znew-zold2)-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 13") z=@zafn(((znew-zold2)-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 14") z=@zafn(((znew-zold2)-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 15") z=@zafn(((zold-znew2)-znew))-@zpar elseif(@ztype=="multi difference 16") z=@zafn(((zold-znew2)-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 17") z=@zafn(((zold-znew2)-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 18") z=@zafn(((zold-znew2)-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 19") z=@zafn(((znew+zold)-(zold-znew2)))-@zpar elseif(@ztype=="multi difference 20") z=@zafn(((znew+zold2)-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 21") z=@zafn(((znew+zold2)-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 22") z=@zafn(((znew+zold2)-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 23") z=@zafn(((znew*zold2)-znew))-@zpar elseif(@ztype=="multi difference 24") z=@zafn(((znew*zold2)-zold))-@zpar elseif(@ztype=="multi difference 25") z=@zafn(((znew*zold2)-(znew-zold2)))-@zpar elseif(@ztype=="multi difference 26") z=@zafn(((znew*zold2)-(zold-znew2)))-@zpar elseif(@ztype=="multi difference 27") z=@zafn(((znew*zold2)-(zold+znew2)))-@zpar elseif(@ztype=="multi difference 28") z=@zafn(((znew*zold2)-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 29") z=@zafn(((znew*zold2)-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 30") z=@zafn(((znew/zold2)-znew))-@zpar elseif(@ztype=="multi difference 31") z=@zafn(((znew/zold2)-zold))-@zpar elseif(@ztype=="multi difference 32") z=@zafn(((znew/zold2)-(zold-znew2)))-@zpar elseif(@ztype=="multi difference 33") z=@zafn(((znew/zold2)-(znew-zold2)))-@zpar elseif(@ztype=="multi difference 34") z=@zafn(((znew/zold2)-(znew+zold2)))-@zpar elseif(@ztype=="multi difference 35") z=@zafn(((znew/zold2)-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 36") z=@zafn(((znew/zold2)-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 37") z=@zafn(((zold/znew2)-znew))-@zpar elseif(@ztype=="multi difference 38") z=@zafn(((zold/znew2)-zold))-@zpar elseif(@ztype=="multi difference 39") z=@zafn(((zold/znew2)-(zold-znew2)))-@zpar elseif(@ztype=="multi difference 40") z=@zafn(((zold/znew2)-(znew-zold2)))-@zpar elseif(@ztype=="multi difference 41") z=@zafn(((zold/znew2)-(znew+zold2)))-@zpar elseif(@ztype=="multi difference 42") z=@zafn(((zold/znew2)-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 43") z=@zafn(((zold/znew2)/(znew/zold2)))-@zpar elseif(@ztype=="multi product 1") z=@zafn((znew*(znew-zold2)))-@zpar elseif(@ztype=="multi product 2") z=@zafn((znew*(zold-znew2)))-@zpar elseif(@ztype=="multi product 3") z=@zafn((znew*(zold+znew2)))-@zpar elseif(@ztype=="multi product 4") z=@zafn((znew*(znew/zold2)))-@zpar elseif(@ztype=="multi product 5") z=@zafn((zold*(znew-zold2)))-@zpar elseif(@ztype=="multi product 6") z=@zafn((zold*(zold-znew2)))-@zpar elseif(@ztype=="multi product 7") z=@zafn((zold*(zold+znew2)))-@zpar elseif(@ztype=="multi product 8") z=@zafn((zold*(zold/znew2)))-@zpar elseif(@ztype=="multi product 9") z=@zafn(((znew-zold2)*(zold-znew2)))-@zpar elseif(@ztype=="multi product 10") z=@zafn(((znew-zold2)*(znew*zold2)))-@zpar elseif(@ztype=="multi product 11") z=@zafn(((znew-zold2)*(znew/zold2)))-@zpar elseif(@ztype=="multi product 12") z=@zafn(((znew-zold2)*(zold/znew2)))-@zpar elseif(@ztype=="multi product 13") z=@zafn(((zold-znew2)*zold))-@zpar elseif(@ztype=="multi product 14") z=@zafn(((zold-znew2)*(znew-zold2)))-@zpar elseif(@ztype=="multi product 15") z=@zafn(((zold-znew2)*(znew*zold2)))-@zpar elseif(@ztype=="multi product 16") z=@zafn(((zold-znew2)*(znew/zold2)))-@zpar elseif(@ztype=="multi product 17") z=@zafn(((znew+zold2)*(zold/znew2)))-@zpar elseif(@ztype=="multi ratio 1") z=@zafn((znew/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 2") z=@zafn((znew/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 3") z=@zafn((znew/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 4") z=@zafn((znew/(znew*zold2)))-@zpar elseif(@ztype=="multi ratio 5") z=@zafn((zold/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 6") z=@zafn((zold/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 7") z=@zafn((zold/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 8") z=@zafn(((znew-zold2)/znew))-@zpar elseif(@ztype=="multi ratio 9") z=@zafn(((znew-zold2)/zold))-@zpar elseif(@ztype=="multi ratio 10") z=@zafn(((znew-zold2)/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 11") z=@zafn(((znew-zold2)/(znew*zold2)))-@zpar elseif(@ztype=="multi ratio 12") z=@zafn(((znew-zold2)/(znew/zold2)))-@zpar elseif(@ztype=="multi ratio 13") z=@zafn(((zold-znew2)/znew))-@zpar elseif(@ztype=="multi ratio 14") z=@zafn(((zold-znew2)/zold))-@zpar elseif(@ztype=="multi ratio 15") z=@zafn(((zold-znew2)/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 16") z=@zafn(((zold-znew2)/(znew*zold2)))-@zpar elseif(@ztype=="multi ratio 17") z=@zafn(((zold-znew2)/(znew/zold2)))-@zpar elseif(@ztype=="multi ratio 18") z=@zafn(((znew+zold2)/znew))-@zpar elseif(@ztype=="multi ratio 19") z=@zafn(((znew+zold2)/zold))-@zpar elseif(@ztype=="multi ratio 20") z=@zafn(((znew+zold2)/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 21") z=@zafn(((znew+zold2)/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 22") z=@zafn(((znew+zold2)/(znew*zold2)))-@zpar elseif(@ztype=="multi ratio 23") z=@zafn(((znew+zold2)/(zold/znew2)))-@zpar elseif(@ztype=="multi ratio 24") z=@zafn(((znew*zold2)/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 25") z=@zafn(((znew*zold2)/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 26") z=@zafn(((znew*zold2)/(zold+znew2)))-@zpar elseif(@ztype=="multi ratio 27") z=@zafn(((znew*zold2)/(zold/znew2)))-@zpar elseif(@ztype=="multi ratio 28") z=@zafn(((znew/zold2)/zold))-@zpar elseif(@ztype=="multi ratio 29") z=@zafn(((znew/zold2)/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 30") z=@zafn(((znew/zold2)/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 31") z=@zafn(((znew/zold2)/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 32") z=@zafn(((znew/zold2)/(znew*zold2)))-@zpar elseif(@ztype=="multi ratio 33") z=@zafn(((znew/zold2)/(zold/znew2)))-@zpar elseif(@ztype=="multi ratio 34") z=@zafn(((zold/znew2)/znew))-@zpar elseif(@ztype=="multi ratio 35") z=@zafn(((zold/znew2)/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 36") z=@zafn(((zold/znew2)/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 37") z=@zafn(((zold/znew2)/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 38") z=@zafn(((zold/znew2)/(znew/zold2)))-@zpar elseif(@ztype=="weird") if(@nfunction=="1") z=@zafn(zold^znew)-@zpar elseif(@nfunction=="2") z=@zafn((-zold)^znew)-@zpar elseif(@nfunction=="3") z=@zafn((-zold)^(-znew))-@zpar elseif(@nfunction=="4") z=@zafn(zold^(-znew))-@zpar elseif(@nfunction=="5") z=@zafn((zold+znew2)^(zold-znew2))-@zpar elseif(@nfunction=="6") z=@zafn((znew-zold2)^(zold+znew2))-@zpar endif endif elseif @zflavor=="4" ; 12-21 if(@ztype=="iterate") z=@zafn(znew2)-@zpar elseif(@ztype=="difference") z=@zafn(znew2-zold)-@zpar elseif(@ztype=="sum") z=@zafn((znew2+zold))-@zpar elseif(@ztype=="product") z=@zafn((znew2*zold))-@zpar elseif(@ztype=="ratio") z=@zafn((znew2/zold))-@zpar elseif(@ztype=="inverse difference") z=@zafn((zold2-znew))-@zpar elseif(@ztype=="inverse ratio") z=@zafn((zold2/znew))-@zpar elseif(@ztype=="multi sum 1") z=@zafn((znew+(zold2+znew)))-@zpar elseif(@ztype=="multi sum 2") z=@zafn((znew+(zold2*znew)))-@zpar elseif(@ztype=="multi sum 3") z=@zafn((znew+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 4") z=@zafn((znew+(zold2/znew)))-@zpar elseif(@ztype=="multi sum 5") z=@zafn((zold+(zold2-znew)))-@zpar elseif(@ztype=="multi sum 6") z=@zafn((zold+(zold2+znew)))-@zpar elseif(@ztype=="multi sum 7") z=@zafn((zold+(zold2*znew)))-@zpar elseif(@ztype=="multi sum 8") z=@zafn((zold+(zold2/znew)))-@zpar elseif(@ztype=="multi sum 9") z=@zafn((zold+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 10") z=@zafn(((znew-zold2)+(znew2*zold)))-@zpar elseif(@ztype=="multi sum 11") z=@zafn(((znew-zold2)+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 12") z=@zafn(((znew-zold2)+(zold2/znew)))-@zpar elseif(@ztype=="multi sum 13") z=@zafn(((zold-znew2)+(znew2+zold)))-@zpar elseif(@ztype=="multi sum 14") z=@zafn(((zold-znew2)+(znew2*zold)))-@zpar elseif(@ztype=="multi sum 15") z=@zafn(((zold-znew2)+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 16") z=@zafn(((zold-znew2)+(zold2/znew)))-@zpar elseif(@ztype=="multi sum 17") z=@zafn(((znew+zold2)+(zold2*znew)))-@zpar elseif(@ztype=="multi sum 18") z=@zafn(((znew+zold2)+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 19") z=@zafn(((znew*zold2)+(zold2/znew)))-@zpar elseif(@ztype=="multi sum 20") z=@zafn(((znew*zold2)+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 21") z=@zafn(((znew/zold2)+(zold2/znew)))-@zpar elseif(@ztype=="multi difference 1") z=@zafn((znew-(zold2-znew)))-@zpar elseif(@ztype=="multi difference 2") z=@zafn((znew-(znew2+zold)))-@zpar elseif(@ztype=="multi difference 3") z=@zafn((znew-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 4") z=@zafn((znew-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 5") z=@zafn((znew-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 6") z=@zafn((zold-(znew2-zold)))-@zpar elseif(@ztype=="multi difference 7") z=@zafn((zold-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 8") z=@zafn((zold-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 9") z=@zafn((zold-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 10") z=@zafn(((znew-zold2)-zold))-@zpar elseif(@ztype=="multi difference 11") z=@zafn(((znew-zold2)-(znew2+zold)))-@zpar elseif(@ztype=="multi difference 12") z=@zafn(((znew-zold2)-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 13") z=@zafn(((znew-zold2)-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 14") z=@zafn(((znew-zold2)-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 15") z=@zafn(((zold-znew2)-znew2))-@zpar elseif(@ztype=="multi difference 16") z=@zafn(((zold-znew2)-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 17") z=@zafn(((zold-znew2)-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 18") z=@zafn(((zold-znew2)-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 19") z=@zafn(((znew+zold2)-(zold2-znew)))-@zpar elseif(@ztype=="multi difference 20") z=@zafn(((znew+zold2)-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 21") z=@zafn(((znew+zold2)-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 22") z=@zafn(((znew+zold2)-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 23") z=@zafn(((znew*zold2)-znew2))-@zpar elseif(@ztype=="multi difference 24") z=@zafn(((znew*zold2)-zold2))-@zpar elseif(@ztype=="multi difference 25") z=@zafn(((znew*zold2)-(znew2-zold)))-@zpar elseif(@ztype=="multi difference 26") z=@zafn(((znew*zold2)-(zold2-znew)))-@zpar elseif(@ztype=="multi difference 27") z=@zafn(((znew*zold2)-(zold2+znew)))-@zpar elseif(@ztype=="multi difference 28") z=@zafn(((znew*zold2)-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 29") z=@zafn(((znew*zold2)-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 30") z=@zafn(((znew/zold2)-znew2))-@zpar elseif(@ztype=="multi difference 31") z=@zafn(((znew/zold2)-zold2))-@zpar elseif(@ztype=="multi difference 32") z=@zafn(((znew/zold2)-(zold2-znew)))-@zpar elseif(@ztype=="multi difference 33") z=@zafn(((znew/zold2)-(znew2-zold)))-@zpar elseif(@ztype=="multi difference 34") z=@zafn(((znew/zold2)-(znew2+zold)))-@zpar elseif(@ztype=="multi difference 35") z=@zafn(((znew/zold2)-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 36") z=@zafn(((znew/zold2)-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 37") z=@zafn(((zold/znew2)-znew2))-@zpar elseif(@ztype=="multi difference 38") z=@zafn(((zold/znew2)-zold2))-@zpar elseif(@ztype=="multi difference 39") z=@zafn(((zold/znew2)-(zold2-znew)))-@zpar elseif(@ztype=="multi difference 40") z=@zafn(((zold/znew2)-(znew2-zold)))-@zpar elseif(@ztype=="multi difference 41") z=@zafn(((zold/znew2)-(znew2+zold)))-@zpar elseif(@ztype=="multi difference 42") z=@zafn(((zold/znew2)-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 43") z=@zafn(((zold/znew2)/(znew2/zold)))-@zpar elseif(@ztype=="multi product 1") z=@zafn((znew*(znew2-zold)))-@zpar elseif(@ztype=="multi product 2") z=@zafn((znew*(zold2-znew)))-@zpar elseif(@ztype=="multi product 3") z=@zafn((znew*(zold2+znew)))-@zpar elseif(@ztype=="multi product 4") z=@zafn((znew*(znew2/zold)))-@zpar elseif(@ztype=="multi product 5") z=@zafn((zold*(znew2-zold)))-@zpar elseif(@ztype=="multi product 6") z=@zafn((zold*(zold2-znew)))-@zpar elseif(@ztype=="multi product 7") z=@zafn((zold*(zold2+znew)))-@zpar elseif(@ztype=="multi product 8") z=@zafn((zold*(zold2/znew)))-@zpar elseif(@ztype=="multi product 9") z=@zafn(((znew-zold2)*(zold2-znew)))-@zpar elseif(@ztype=="multi product 10") z=@zafn(((znew-zold2)*(znew2*zold)))-@zpar elseif(@ztype=="multi product 11") z=@zafn(((znew-zold2)*(znew2/zold)))-@zpar elseif(@ztype=="multi product 12") z=@zafn(((znew-zold2)*(zold2/znew)))-@zpar elseif(@ztype=="multi product 13") z=@zafn(((zold-znew2)*zold2))-@zpar elseif(@ztype=="multi product 14") z=@zafn(((zold-znew2)*(znew2-zold)))-@zpar elseif(@ztype=="multi product 15") z=@zafn(((zold-znew2)*(znew2*zold)))-@zpar elseif(@ztype=="multi product 16") z=@zafn(((zold-znew2)*(znew2/zold)))-@zpar elseif(@ztype=="multi product 17") z=@zafn(((znew+zold2)*(zold2/znew)))-@zpar elseif(@ztype=="multi ratio 1") z=@zafn((znew/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 2") z=@zafn((znew/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 3") z=@zafn((znew/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 4") z=@zafn((znew/(znew2*zold)))-@zpar elseif(@ztype=="multi ratio 5") z=@zafn((zold/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 6") z=@zafn((zold/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 7") z=@zafn((zold/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 8") z=@zafn(((znew-zold2)/znew2))-@zpar elseif(@ztype=="multi ratio 9") z=@zafn(((znew-zold2)/zold2))-@zpar elseif(@ztype=="multi ratio 10") z=@zafn(((znew-zold2)/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 11") z=@zafn(((znew-zold2)/(znew2*zold)))-@zpar elseif(@ztype=="multi ratio 12") z=@zafn(((znew-zold2)/(znew2/zold)))-@zpar elseif(@ztype=="multi ratio 13") z=@zafn(((zold-znew2)/znew2))-@zpar elseif(@ztype=="multi ratio 14") z=@zafn(((zold-znew2)/zold2))-@zpar elseif(@ztype=="multi ratio 15") z=@zafn(((zold-znew2)/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 16") z=@zafn(((zold-znew2)/(znew2*zold)))-@zpar elseif(@ztype=="multi ratio 17") z=@zafn(((zold-znew2)/(znew2/zold)))-@zpar elseif(@ztype=="multi ratio 18") z=@zafn(((znew+zold2)/znew2))-@zpar elseif(@ztype=="multi ratio 19") z=@zafn(((znew+zold2)/zold2))-@zpar elseif(@ztype=="multi ratio 20") z=@zafn(((znew+zold2)/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 21") z=@zafn(((znew+zold2)/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 22") z=@zafn(((znew+zold2)/(znew2*zold)))-@zpar elseif(@ztype=="multi ratio 23") z=@zafn(((znew+zold2)/(zold2/znew)))-@zpar elseif(@ztype=="multi ratio 24") z=@zafn(((znew*zold2)/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 25") z=@zafn(((znew*zold2)/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 26") z=@zafn(((znew*zold2)/(zold2+znew)))-@zpar elseif(@ztype=="multi ratio 27") z=@zafn(((znew*zold2)/(zold2/znew)))-@zpar elseif(@ztype=="multi ratio 28") z=@zafn(((znew/zold2)/zold2))-@zpar elseif(@ztype=="multi ratio 29") z=@zafn(((znew/zold2)/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 30") z=@zafn(((znew/zold2)/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 31") z=@zafn(((znew/zold2)/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 32") z=@zafn(((znew/zold2)/(znew2*zold)))-@zpar elseif(@ztype=="multi ratio 33") z=@zafn(((znew/zold2)/(zold2/znew)))-@zpar elseif(@ztype=="multi ratio 34") z=@zafn(((zold/znew2)/znew2))-@zpar elseif(@ztype=="multi ratio 35") z=@zafn(((zold/znew2)/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 36") z=@zafn(((zold/znew2)/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 37") z=@zafn(((zold/znew2)/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 38") z=@zafn(((zold/znew2)/(znew2/zold)))-@zpar elseif(@ztype=="weird") if(@nfunction=="1") z=@zafn(zold^znew2)-@zpar elseif(@nfunction=="2") z=@zafn((-zold)^znew2)-@zpar elseif(@nfunction=="3") z=@zafn((-zold)^(-znew2))-@zpar elseif(@nfunction=="4") z=@zafn(zold^(-znew2))-@zpar elseif(@nfunction=="5") z=@zafn((zold+znew2)^(zold2-znew))-@zpar elseif(@nfunction=="6") z=@zafn((znew-zold2)^(zold2+znew))-@zpar endif endif elseif @zflavor=="5" ; 21-12 if(@ztype=="iterate") z=@zafn(znew2)-@zpar elseif(@ztype=="difference") z=@zafn(znew2-zold)-@zpar elseif(@ztype=="sum") z=@zafn((znew2+zold))-@zpar elseif(@ztype=="product") z=@zafn((znew2*zold))-@zpar elseif(@ztype=="ratio") z=@zafn((znew2/zold))-@zpar elseif(@ztype=="inverse difference") z=@zafn((zold2-znew))-@zpar elseif(@ztype=="inverse ratio") z=@zafn((zold2/znew))-@zpar elseif(@ztype=="multi sum 1") z=@zafn((znew2+(zold+znew2)))-@zpar elseif(@ztype=="multi sum 2") z=@zafn((znew2+(zold*znew2)))-@zpar elseif(@ztype=="multi sum 3") z=@zafn((znew2+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 4") z=@zafn((znew2+(zold/znew2)))-@zpar elseif(@ztype=="multi sum 5") z=@zafn((zold2+(zold-znew2)))-@zpar elseif(@ztype=="multi sum 6") z=@zafn((zold2+(zold+znew2)))-@zpar elseif(@ztype=="multi sum 7") z=@zafn((zold2+(zold*znew2)))-@zpar elseif(@ztype=="multi sum 8") z=@zafn((zold2+(zold/znew2)))-@zpar elseif(@ztype=="multi sum 9") z=@zafn((zold2+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 10") z=@zafn(((znew2-zold)+(znew*zold2)))-@zpar elseif(@ztype=="multi sum 11") z=@zafn(((znew2-zold)+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 12") z=@zafn(((znew2-zold)+(zold/znew2)))-@zpar elseif(@ztype=="multi sum 13") z=@zafn(((zold2-znew)+(znew+zold2)))-@zpar elseif(@ztype=="multi sum 14") z=@zafn(((zold2-znew)+(znew*zold2)))-@zpar elseif(@ztype=="multi sum 15") z=@zafn(((zold2-znew)+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 16") z=@zafn(((zold2-znew)+(zold/znew2)))-@zpar elseif(@ztype=="multi sum 17") z=@zafn(((znew2+zold)+(zold*znew2)))-@zpar elseif(@ztype=="multi sum 18") z=@zafn(((znew2+zold)+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 19") z=@zafn(((znew2*zold)+(zold/znew2)))-@zpar elseif(@ztype=="multi sum 20") z=@zafn(((znew2*zold)+(znew/zold2)))-@zpar elseif(@ztype=="multi sum 21") z=@zafn(((znew2/zold)+(zold/znew2)))-@zpar elseif(@ztype=="multi difference 1") z=@zafn((znew2-(zold-znew2)))-@zpar elseif(@ztype=="multi difference 2") z=@zafn((znew2-(znew+zold2)))-@zpar elseif(@ztype=="multi difference 3") z=@zafn((znew2-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 4") z=@zafn((znew2-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 5") z=@zafn((znew2-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 6") z=@zafn((zold2-(znew-zold2)))-@zpar elseif(@ztype=="multi difference 7") z=@zafn((zold2-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 8") z=@zafn((zold2-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 9") z=@zafn((zold2-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 10") z=@zafn(((znew2-zold)-zold))-@zpar elseif(@ztype=="multi difference 11") z=@zafn(((znew2-zold)-(znew+zold2)))-@zpar elseif(@ztype=="multi difference 12") z=@zafn(((znew2-zold)-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 13") z=@zafn(((znew2-zold)-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 14") z=@zafn(((znew2-zold)-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 15") z=@zafn(((zold2-znew)-znew))-@zpar elseif(@ztype=="multi difference 16") z=@zafn(((zold2-znew)-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 17") z=@zafn(((zold2-znew)-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 18") z=@zafn(((zold2-znew)-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 19") z=@zafn(((znew2+zold)-(zold-znew2)))-@zpar elseif(@ztype=="multi difference 20") z=@zafn(((znew2+zold)-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 21") z=@zafn(((znew2+zold)-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 22") z=@zafn(((znew2+zold)-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 23") z=@zafn(((znew2*zold)-znew))-@zpar elseif(@ztype=="multi difference 24") z=@zafn(((znew2*zold)-zold))-@zpar elseif(@ztype=="multi difference 25") z=@zafn(((znew2*zold)-(znew-zold2)))-@zpar elseif(@ztype=="multi difference 26") z=@zafn(((znew2*zold)-(zold-znew2)))-@zpar elseif(@ztype=="multi difference 27") z=@zafn(((znew2*zold)-(zold+znew2)))-@zpar elseif(@ztype=="multi difference 28") z=@zafn(((znew2*zold)-(znew/zold2)))-@zpar elseif(@ztype=="multi difference 29") z=@zafn(((znew2*zold)-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 30") z=@zafn(((znew2/zold)-znew))-@zpar elseif(@ztype=="multi difference 31") z=@zafn(((znew2/zold)-zold))-@zpar elseif(@ztype=="multi difference 32") z=@zafn(((znew2/zold)-(zold-znew2)))-@zpar elseif(@ztype=="multi difference 33") z=@zafn(((znew2/zold)-(znew-zold2)))-@zpar elseif(@ztype=="multi difference 34") z=@zafn(((znew2/zold)-(znew+zold2)))-@zpar elseif(@ztype=="multi difference 35") z=@zafn(((znew2/zold)-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 36") z=@zafn(((znew2/zold)-(zold/znew2)))-@zpar elseif(@ztype=="multi difference 37") z=@zafn(((zold2/znew)-znew))-@zpar elseif(@ztype=="multi difference 38") z=@zafn(((zold2/znew)-zold))-@zpar elseif(@ztype=="multi difference 39") z=@zafn(((zold2/znew)-(zold-znew2)))-@zpar elseif(@ztype=="multi difference 40") z=@zafn(((zold2/znew)-(znew-zold2)))-@zpar elseif(@ztype=="multi difference 41") z=@zafn(((zold2/znew)-(znew+zold2)))-@zpar elseif(@ztype=="multi difference 42") z=@zafn(((zold2/znew)-(znew*zold2)))-@zpar elseif(@ztype=="multi difference 43") z=@zafn(((zold2/znew)/(znew/zold2)))-@zpar elseif(@ztype=="multi product 1") z=@zafn((znew2*(znew-zold2)))-@zpar elseif(@ztype=="multi product 2") z=@zafn((znew2*(zold-znew2)))-@zpar elseif(@ztype=="multi product 3") z=@zafn((znew2*(zold+znew2)))-@zpar elseif(@ztype=="multi product 4") z=@zafn((znew2*(znew/zold2)))-@zpar elseif(@ztype=="multi product 5") z=@zafn((zold2*(znew-zold2)))-@zpar elseif(@ztype=="multi product 6") z=@zafn((zold2*(zold-znew2)))-@zpar elseif(@ztype=="multi product 7") z=@zafn((zold2*(zold+znew2)))-@zpar elseif(@ztype=="multi product 8") z=@zafn((zold2*(zold/znew2)))-@zpar elseif(@ztype=="multi product 9") z=@zafn(((znew2-zold)*(zold-znew2)))-@zpar elseif(@ztype=="multi product 10") z=@zafn(((znew2-zold)*(znew*zold2)))-@zpar elseif(@ztype=="multi product 11") z=@zafn(((znew2-zold)*(znew/zold2)))-@zpar elseif(@ztype=="multi product 12") z=@zafn(((znew2-zold)*(zold/znew2)))-@zpar elseif(@ztype=="multi product 13") z=@zafn(((zold2-znew)*zold))-@zpar elseif(@ztype=="multi product 14") z=@zafn(((zold2-znew)*(znew-zold2)))-@zpar elseif(@ztype=="multi product 15") z=@zafn(((zold2-znew)*(znew*zold2)))-@zpar elseif(@ztype=="multi product 16") z=@zafn(((zold2-znew)*(znew/zold2)))-@zpar elseif(@ztype=="multi product 17") z=@zafn(((znew2+zold)*(zold/znew2)))-@zpar elseif(@ztype=="multi ratio 1") z=@zafn((znew2/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 2") z=@zafn((znew2/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 3") z=@zafn((znew2/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 4") z=@zafn((znew2/(znew*zold2)))-@zpar elseif(@ztype=="multi ratio 5") z=@zafn((zold2/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 6") z=@zafn((zold2/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 7") z=@zafn((zold2/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 8") z=@zafn(((znew2-zold)/znew))-@zpar elseif(@ztype=="multi ratio 9") z=@zafn(((znew2-zold)/zold))-@zpar elseif(@ztype=="multi ratio 10") z=@zafn(((znew2-zold)/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 11") z=@zafn(((znew2-zold)/(znew*zold2)))-@zpar elseif(@ztype=="multi ratio 12") z=@zafn(((znew2-zold)/(znew/zold2)))-@zpar elseif(@ztype=="multi ratio 13") z=@zafn(((zold2-znew)/znew))-@zpar elseif(@ztype=="multi ratio 14") z=@zafn(((zold2-znew)/zold))-@zpar elseif(@ztype=="multi ratio 15") z=@zafn(((zold2-znew)/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 16") z=@zafn(((zold2-znew)/(znew*zold2)))-@zpar elseif(@ztype=="multi ratio 17") z=@zafn(((zold2-znew)/(znew/zold2)))-@zpar elseif(@ztype=="multi ratio 18") z=@zafn(((znew2+zold)/znew))-@zpar elseif(@ztype=="multi ratio 19") z=@zafn(((znew2+zold)/zold))-@zpar elseif(@ztype=="multi ratio 20") z=@zafn(((znew2+zold)/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 21") z=@zafn(((znew2+zold)/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 22") z=@zafn(((znew2+zold)/(znew*zold2)))-@zpar elseif(@ztype=="multi ratio 23") z=@zafn(((znew2+zold)/(zold/znew2)))-@zpar elseif(@ztype=="multi ratio 24") z=@zafn(((znew2*zold)/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 25") z=@zafn(((znew2*zold)/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 26") z=@zafn(((znew2*zold)/(zold+znew2)))-@zpar elseif(@ztype=="multi ratio 27") z=@zafn(((znew2*zold)/(zold/znew2)))-@zpar elseif(@ztype=="multi ratio 28") z=@zafn(((znew2/zold)/zold))-@zpar elseif(@ztype=="multi ratio 29") z=@zafn(((znew2/zold)/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 30") z=@zafn(((znew2/zold)/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 31") z=@zafn(((znew2/zold)/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 32") z=@zafn(((znew2/zold)/(znew*zold2)))-@zpar elseif(@ztype=="multi ratio 33") z=@zafn(((znew2/zold)/(zold/znew2)))-@zpar elseif(@ztype=="multi ratio 34") z=@zafn(((zold2/znew)/znew))-@zpar elseif(@ztype=="multi ratio 35") z=@zafn(((zold2/znew)/(zold-znew2)))-@zpar elseif(@ztype=="multi ratio 36") z=@zafn(((zold2/znew)/(znew-zold2)))-@zpar elseif(@ztype=="multi ratio 37") z=@zafn(((zold2/znew)/(znew+zold2)))-@zpar elseif(@ztype=="multi ratio 38") z=@zafn(((zold2/znew)/(znew/zold2)))-@zpar elseif(@ztype=="weird") if(@nfunction=="1") z=@zafn(zold2^znew)-@zpar elseif(@nfunction=="2") z=@zafn((-zold2)^znew)-@zpar elseif(@nfunction=="3") z=@zafn((-zold2)^(-znew))-@zpar elseif(@nfunction=="4") z=@zafn(zold2^(-znew))-@zpar elseif(@nfunction=="5") z=@zafn((zold2+znew)^(zold-znew2))-@zpar elseif(@nfunction=="6") z=@zafn((znew2-zold)^(zold+znew2))-@zpar endif endif elseif @zflavor=="6" ; 21-21 if(@ztype=="iterate") z=@zafn(znew2)-@zpar elseif(@ztype=="difference") z=@zafn(znew2-zold2)-@zpar elseif(@ztype=="sum") z=@zafn((znew2+zold2))-@zpar elseif(@ztype=="product") z=@zafn((znew2*zold2))-@zpar elseif(@ztype=="ratio") z=@zafn((znew2/zold2))-@zpar elseif(@ztype=="inverse difference") z=@zafn((zold2-znew2))-@zpar elseif(@ztype=="inverse ratio") z=@zafn((zold2/znew2))-@zpar elseif(@ztype=="multi sum 1") z=@zafn((znew2+(zold2+znew)))-@zpar elseif(@ztype=="multi sum 2") z=@zafn((znew2+(zold2*znew)))-@zpar elseif(@ztype=="multi sum 3") z=@zafn((znew2+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 4") z=@zafn((znew2+(zold2/znew)))-@zpar elseif(@ztype=="multi sum 5") z=@zafn((zold2+(zold2-znew)))-@zpar elseif(@ztype=="multi sum 6") z=@zafn((zold2+(zold2+znew)))-@zpar elseif(@ztype=="multi sum 7") z=@zafn((zold2+(zold2*znew)))-@zpar elseif(@ztype=="multi sum 8") z=@zafn((zold2+(zold2/znew2)))-@zpar elseif(@ztype=="multi sum 9") z=@zafn((zold2+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 10") z=@zafn(((znew2-zold)+(znew2*zold)))-@zpar elseif(@ztype=="multi sum 11") z=@zafn(((znew2-zold)+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 12") z=@zafn(((znew2-zold)+(zold2/znew)))-@zpar elseif(@ztype=="multi sum 13") z=@zafn(((zold2-znew)+(znew2+zold)))-@zpar elseif(@ztype=="multi sum 14") z=@zafn(((zold2-znew)+(znew2*zold)))-@zpar elseif(@ztype=="multi sum 15") z=@zafn(((zold2-znew)+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 16") z=@zafn(((zold2-znew)+(zold2/znew)))-@zpar elseif(@ztype=="multi sum 17") z=@zafn(((znew2+zold)+(zold2*znew)))-@zpar elseif(@ztype=="multi sum 18") z=@zafn(((znew2+zold)+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 19") z=@zafn(((znew2*zold)+(zold2/znew)))-@zpar elseif(@ztype=="multi sum 20") z=@zafn(((znew2*zold)+(znew2/zold)))-@zpar elseif(@ztype=="multi sum 21") z=@zafn(((znew2/zold)+(zold2/znew)))-@zpar elseif(@ztype=="multi difference 1") z=@zafn((znew2-(zold2-znew)))-@zpar elseif(@ztype=="multi difference 2") z=@zafn((znew2-(znew2+zold)))-@zpar elseif(@ztype=="multi difference 3") z=@zafn((znew2-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 4") z=@zafn((znew2-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 5") z=@zafn((znew2-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 6") z=@zafn((zold2-(znew2-zold)))-@zpar elseif(@ztype=="multi difference 7") z=@zafn((zold2-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 8") z=@zafn((zold2-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 9") z=@zafn((zold2-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 10") z=@zafn(((znew2-zold)-zold))-@zpar elseif(@ztype=="multi difference 11") z=@zafn(((znew2-zold)-(znew2+zold)))-@zpar elseif(@ztype=="multi difference 12") z=@zafn(((znew2-zold)-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 13") z=@zafn(((znew2-zold)-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 14") z=@zafn(((znew2-zold)-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 15") z=@zafn(((zold2-znew)-znew))-@zpar elseif(@ztype=="multi difference 16") z=@zafn(((zold2-znew)-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 17") z=@zafn(((zold2-znew)-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 18") z=@zafn(((zold2-znew)-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 19") z=@zafn(((znew2+zold)-(zold2-znew2)))-@zpar elseif(@ztype=="multi difference 20") z=@zafn(((znew2+zold)-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 21") z=@zafn(((znew2+zold)-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 22") z=@zafn(((znew2+zold)-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 23") z=@zafn(((znew2*zold)-znew))-@zpar elseif(@ztype=="multi difference 24") z=@zafn(((znew2*zold)-zold))-@zpar elseif(@ztype=="multi difference 25") z=@zafn(((znew2*zold)-(znew2-zold)))-@zpar elseif(@ztype=="multi difference 26") z=@zafn(((znew2*zold)-(zold2-znew)))-@zpar elseif(@ztype=="multi difference 27") z=@zafn(((znew2*zold)-(zold2+znew)))-@zpar elseif(@ztype=="multi difference 28") z=@zafn(((znew2*zold)-(znew2/zold)))-@zpar elseif(@ztype=="multi difference 29") z=@zafn(((znew2*zold)-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 30") z=@zafn(((znew2/zold)-znew2))-@zpar elseif(@ztype=="multi difference 31") z=@zafn(((znew2/zold)-zold2))-@zpar elseif(@ztype=="multi difference 32") z=@zafn(((znew2/zold)-(zold2-znew)))-@zpar elseif(@ztype=="multi difference 33") z=@zafn(((znew2/zold)-(znew2-zold)))-@zpar elseif(@ztype=="multi difference 34") z=@zafn(((znew2/zold)-(znew2+zold)))-@zpar elseif(@ztype=="multi difference 35") z=@zafn(((znew2/zold)-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 36") z=@zafn(((znew2/zold)-(zold2/znew)))-@zpar elseif(@ztype=="multi difference 37") z=@zafn(((zold2/znew)-znew2))-@zpar elseif(@ztype=="multi difference 38") z=@zafn(((zold2/znew)-zold2))-@zpar elseif(@ztype=="multi difference 39") z=@zafn(((zold2/znew)-(zold2-znew)))-@zpar elseif(@ztype=="multi difference 40") z=@zafn(((zold2/znew)-(znew2-zold)))-@zpar elseif(@ztype=="multi difference 41") z=@zafn(((zold2/znew)-(znew2+zold)))-@zpar elseif(@ztype=="multi difference 42") z=@zafn(((zold2/znew)-(znew2*zold)))-@zpar elseif(@ztype=="multi difference 43") z=@zafn(((zold2/znew)/(znew2/zold)))-@zpar elseif(@ztype=="multi product 1") z=@zafn((znew2*(znew2-zold)))-@zpar elseif(@ztype=="multi product 2") z=@zafn((znew2*(zold2-znew)))-@zpar elseif(@ztype=="multi product 3") z=@zafn((znew2*(zold2+znew)))-@zpar elseif(@ztype=="multi product 4") z=@zafn((znew2*(znew2/zold)))-@zpar elseif(@ztype=="multi product 5") z=@zafn((zold2*(znew2-zold)))-@zpar elseif(@ztype=="multi product 6") z=@zafn((zold2*(zold2-znew)))-@zpar elseif(@ztype=="multi product 7") z=@zafn((zold2*(zold2+znew)))-@zpar elseif(@ztype=="multi product 8") z=@zafn((zold2*(zold2/znew)))-@zpar elseif(@ztype=="multi product 9") z=@zafn(((znew2-zold)*(zold2-znew)))-@zpar elseif(@ztype=="multi product 10") z=@zafn(((znew2-zold)*(znew2*zold)))-@zpar elseif(@ztype=="multi product 11") z=@zafn(((znew2-zold)*(znew2/zold)))-@zpar elseif(@ztype=="multi product 12") z=@zafn(((znew2-zold)*(zold2/znew)))-@zpar elseif(@ztype=="multi product 13") z=@zafn(((zold2-znew)*zold2))-@zpar elseif(@ztype=="multi product 14") z=@zafn(((zold2-znew)*(znew2-zold)))-@zpar elseif(@ztype=="multi product 15") z=@zafn(((zold2-znew)*(znew2*zold)))-@zpar elseif(@ztype=="multi product 16") z=@zafn(((zold2-znew)*(znew2/zold)))-@zpar elseif(@ztype=="multi product 17") z=@zafn(((znew2+zold)*(zold2/znew)))-@zpar elseif(@ztype=="multi ratio 1") z=@zafn((znew2/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 2") z=@zafn((znew2/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 3") z=@zafn((znew2/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 4") z=@zafn((znew2/(znew2*zold)))-@zpar elseif(@ztype=="multi ratio 5") z=@zafn((zold2/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 6") z=@zafn((zold2/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 7") z=@zafn((zold2/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 8") z=@zafn(((znew2-zold)/znew2))-@zpar elseif(@ztype=="multi ratio 9") z=@zafn(((znew2-zold)/zold2))-@zpar elseif(@ztype=="multi ratio 10") z=@zafn(((znew2-zold)/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 11") z=@zafn(((znew2-zold)/(znew2*zold)))-@zpar elseif(@ztype=="multi ratio 12") z=@zafn(((znew2-zold)/(znew2/zold)))-@zpar elseif(@ztype=="multi ratio 13") z=@zafn(((zold2-znew)/znew2))-@zpar elseif(@ztype=="multi ratio 14") z=@zafn(((zold2-znew)/zold2))-@zpar elseif(@ztype=="multi ratio 15") z=@zafn(((zold2-znew)/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 16") z=@zafn(((zold2-znew)/(znew2*zold)))-@zpar elseif(@ztype=="multi ratio 17") z=@zafn(((zold2-znew)/(znew2/zold)))-@zpar elseif(@ztype=="multi ratio 18") z=@zafn(((znew2+zold)/znew2))-@zpar elseif(@ztype=="multi ratio 19") z=@zafn(((znew2+zold)/zold2))-@zpar elseif(@ztype=="multi ratio 20") z=@zafn(((znew2+zold)/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 21") z=@zafn(((znew2+zold)/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 22") z=@zafn(((znew2+zold)/(znew2*zold)))-@zpar elseif(@ztype=="multi ratio 23") z=@zafn(((znew2+zold)/(zold2/znew)))-@zpar elseif(@ztype=="multi ratio 24") z=@zafn(((znew2*zold)/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 25") z=@zafn(((znew2*zold)/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 26") z=@zafn(((znew2*zold)/(zold2+znew)))-@zpar elseif(@ztype=="multi ratio 27") z=@zafn(((znew2*zold)/(zold2/znew)))-@zpar elseif(@ztype=="multi ratio 28") z=@zafn(((znew2/zold)/zold2))-@zpar elseif(@ztype=="multi ratio 29") z=@zafn(((znew2/zold)/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 30") z=@zafn(((znew2/zold)/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 31") z=@zafn(((znew2/zold)/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 32") z=@zafn(((znew2/zold)/(znew2*zold)))-@zpar elseif(@ztype=="multi ratio 33") z=@zafn(((znew2/zold)/(zold2/znew)))-@zpar elseif(@ztype=="multi ratio 34") z=@zafn(((zold2/znew)/znew2))-@zpar elseif(@ztype=="multi ratio 35") z=@zafn(((zold2/znew)/(zold2-znew)))-@zpar elseif(@ztype=="multi ratio 36") z=@zafn(((zold2/znew)/(znew2-zold)))-@zpar elseif(@ztype=="multi ratio 37") z=@zafn(((zold2/znew)/(znew2+zold)))-@zpar elseif(@ztype=="multi ratio 38") z=@zafn(((zold2/znew)/(znew2/zold)))-@zpar elseif(@ztype=="weird") if(@nfunction=="1") z=@zafn(zold2^znew2)-@zpar elseif(@nfunction=="2") z=@zafn((-zold2)^znew2)-@zpar elseif(@nfunction=="3") z=@zafn((-zold2)^(-znew2))-@zpar elseif(@nfunction=="4") z=@zafn(zold2^(-znew2))-@zpar elseif(@nfunction=="5") z=@zafn((zold+znew2)^(zold2-znew))-@zpar elseif(@nfunction=="6") z=@zafn((znew2-zold)^(zold2+znew))-@zpar endif endif elseif @zflavor=="7" ; 22-11 if(@ztype=="iterate") z=@zafn(znew2)-@zpar elseif(@ztype=="difference") z=@zafn(znew2-zold)-@zpar elseif(@ztype=="sum") z=@zafn((znew2+zold))-@zpar elseif(@ztype=="product") z=@zafn((znew2*zold))-@zpar elseif(@ztype=="ratio") z=@zafn((znew2/zold))-@zpar elseif(@ztype=="inverse difference") z=@zafn((zold2-znew))-@zpar elseif(@ztype=="inverse ratio") z=@zafn((zold2/znew))-@zpar elseif(@ztype=="multi sum 1") z=@zafn((znew2+(zold+znew)))-@zpar elseif(@ztype=="multi sum 2") z=@zafn((znew2+(zold*znew)))-@zpar elseif(@ztype=="multi sum 3") z=@zafn((znew2+(znew/zold)))-@zpar elseif(@ztype=="multi sum 4") z=@zafn((znew2+(zold/znew)))-@zpar elseif(@ztype=="multi sum 5") z=@zafn((zold2+(zold-znew)))-@zpar elseif(@ztype=="multi sum 6") z=@zafn((zold2+(zold+znew)))-@zpar elseif(@ztype=="multi sum 7") z=@zafn((zold2+(zold*znew)))-@zpar elseif(@ztype=="multi sum 8") z=@zafn((zold2+(zold/znew)))-@zpar elseif(@ztype=="multi sum 9") z=@zafn((zold2+(znew/zold)))-@zpar elseif(@ztype=="multi sum 10") z=@zafn(((znew2-zold2)+(znew*zold)))-@zpar elseif(@ztype=="multi sum 11") z=@zafn(((znew2-zold2)+(znew/zold)))-@zpar elseif(@ztype=="multi sum 12") z=@zafn(((znew2-zold2)+(zold/znew)))-@zpar elseif(@ztype=="multi sum 13") z=@zafn(((zold2-znew2)+(znew+zold)))-@zpar elseif(@ztype=="multi sum 14") z=@zafn(((zold2-znew2)+(znew*zold)))-@zpar elseif(@ztype=="multi sum 15") z=@zafn(((zold2-znew2)+(znew/zold)))-@zpar elseif(@ztype=="multi sum 16") z=@zafn(((zold2-znew2)+(zold/znew)))-@zpar elseif(@ztype=="multi sum 17") z=@zafn(((znew2+zold2)+(zold*znew)))-@zpar elseif(@ztype=="multi sum 18") z=@zafn(((znew2+zold2)+(znew/zold)))-@zpar elseif(@ztype=="multi sum 19") z=@zafn(((znew2*zold2)+(zold/znew)))-@zpar elseif(@ztype=="multi sum 20") z=@zafn(((znew2*zold2)+(znew/zold)))-@zpar elseif(@ztype=="multi sum 21") z=@zafn(((znew2/zold2)+(zold/znew)))-@zpar elseif(@ztype=="multi difference 1") z=@zafn((znew2-(zold-znew)))-@zpar elseif(@ztype=="multi difference 2") z=@zafn((znew2-(znew+zold)))-@zpar elseif(@ztype=="multi difference 3") z=@zafn((znew2-(znew*zold)))-@zpar elseif(@ztype=="multi difference 4") z=@zafn((znew2-(zold/znew)))-@zpar elseif(@ztype=="multi difference 5") z=@zafn((znew2-(znew/zold)))-@zpar elseif(@ztype=="multi difference 6") z=@zafn((zold2-(znew-zold)))-@zpar elseif(@ztype=="multi difference 7") z=@zafn((zold2-(znew*zold)))-@zpar elseif(@ztype=="multi difference 8") z=@zafn((zold2-(znew/zold)))-@zpar elseif(@ztype=="multi difference 9") z=@zafn((zold2-(zold/znew)))-@zpar elseif(@ztype=="multi difference 10") z=@zafn(((znew2-zold2)-zold))-@zpar elseif(@ztype=="multi difference 11") z=@zafn(((znew2-zold2)-(znew+zold)))-@zpar elseif(@ztype=="multi difference 12") z=@zafn(((znew2-zold2)-(znew*zold)))-@zpar elseif(@ztype=="multi difference 13") z=@zafn(((znew2-zold2)-(znew/zold)))-@zpar elseif(@ztype=="multi difference 14") z=@zafn(((znew2-zold2)-(zold/znew)))-@zpar elseif(@ztype=="multi difference 15") z=@zafn(((zold2-znew2)-znew))-@zpar elseif(@ztype=="multi difference 16") z=@zafn(((zold2-znew2)-(znew*zold)))-@zpar elseif(@ztype=="multi difference 17") z=@zafn(((zold2-znew2)-(znew/zold)))-@zpar elseif(@ztype=="multi difference 18") z=@zafn(((zold2-znew2)-(zold/znew)))-@zpar elseif(@ztype=="multi difference 19") z=@zafn(((znew2+zold2)-(zold-znew)))-@zpar elseif(@ztype=="multi difference 20") z=@zafn(((znew2+zold2)-(znew*zold)))-@zpar elseif(@ztype=="multi difference 21") z=@zafn(((znew2+zold2)-(znew/zold)))-@zpar elseif(@ztype=="multi difference 22") z=@zafn(((znew2+zold2)-(zold/znew)))-@zpar elseif(@ztype=="multi difference 23") z=@zafn(((znew2*zold2)-znew))-@zpar elseif(@ztype=="multi difference 24") z=@zafn(((znew2*zold2)-zold))-@zpar elseif(@ztype=="multi difference 25") z=@zafn(((znew2*zold2)-(znew-zold)))-@zpar elseif(@ztype=="multi difference 26") z=@zafn(((znew2*zold2)-(zold-znew)))-@zpar elseif(@ztype=="multi difference 27") z=@zafn(((znew2*zold2)-(zold+znew)))-@zpar elseif(@ztype=="multi difference 28") z=@zafn(((znew2*zold2)-(znew/zold)))-@zpar elseif(@ztype=="multi difference 29") z=@zafn(((znew2*zold2)-(zold/znew)))-@zpar elseif(@ztype=="multi difference 30") z=@zafn(((znew2/zold2)-znew))-@zpar elseif(@ztype=="multi difference 31") z=@zafn(((znew2/zold2)-zold))-@zpar elseif(@ztype=="multi difference 32") z=@zafn(((znew2/zold2)-(zold-znew)))-@zpar elseif(@ztype=="multi difference 33") z=@zafn(((znew2/zold2)-(znew-zold)))-@zpar elseif(@ztype=="multi difference 34") z=@zafn(((znew2/zold2)-(znew+zold)))-@zpar elseif(@ztype=="multi difference 35") z=@zafn(((znew2/zold2)-(znew*zold)))-@zpar elseif(@ztype=="multi difference 36") z=@zafn(((znew2/zold2)-(zold2/znew2)))-@zpar elseif(@ztype=="multi difference 37") z=@zafn(((zold2/znew2)-znew))-@zpar elseif(@ztype=="multi difference 38") z=@zafn(((zold2/znew2)-zold))-@zpar elseif(@ztype=="multi difference 39") z=@zafn(((zold2/znew2)-(zold-znew)))-@zpar elseif(@ztype=="multi difference 40") z=@zafn(((zold2/znew2)-(znew-zold)))-@zpar elseif(@ztype=="multi difference 41") z=@zafn(((zold2/znew2)-(znew+zold)))-@zpar elseif(@ztype=="multi difference 42") z=@zafn(((zold2/znew2)-(znew*zold)))-@zpar elseif(@ztype=="multi difference 43") z=@zafn(((zold2/znew2)/(znew/zold)))-@zpar elseif(@ztype=="multi product 1") z=@zafn((znew2*(znew-zold)))-@zpar elseif(@ztype=="multi product 2") z=@zafn((znew2*(zold-znew)))-@zpar elseif(@ztype=="multi product 3") z=@zafn((znew2*(zold+znew)))-@zpar elseif(@ztype=="multi product 4") z=@zafn((znew2*(znew/zold)))-@zpar elseif(@ztype=="multi product 5") z=@zafn((zold2*(znew-zold)))-@zpar elseif(@ztype=="multi product 6") z=@zafn((zold2*(zold-znew)))-@zpar elseif(@ztype=="multi product 7") z=@zafn((zold2*(zold+znew)))-@zpar elseif(@ztype=="multi product 8") z=@zafn((zold2*(zold/znew)))-@zpar elseif(@ztype=="multi product 9") z=@zafn(((znew2-zold2)*(zold-znew)))-@zpar elseif(@ztype=="multi product 10") z=@zafn(((znew2-zold2)*(znew*zold)))-@zpar elseif(@ztype=="multi product 11") z=@zafn(((znew2-zold2)*(znew/zold)))-@zpar elseif(@ztype=="multi product 12") z=@zafn(((znew2-zold2)*(zold/znew)))-@zpar elseif(@ztype=="multi product 13") z=@zafn(((zold2-znew2)*zold2))-@zpar elseif(@ztype=="multi product 14") z=@zafn(((zold2-znew2)*(znew-zold)))-@zpar elseif(@ztype=="multi product 15") z=@zafn(((zold2-znew2)*(znew*zold)))-@zpar elseif(@ztype=="multi product 16") z=@zafn(((zold2-znew2)*(znew/zold)))-@zpar elseif(@ztype=="multi product 17") z=@zafn(((znew2+zold2)*(zold/znew)))-@zpar elseif(@ztype=="multi ratio 1") z=@zafn((znew2/(znew-zold)))-@zpar elseif(@ztype=="multi ratio 2") z=@zafn((znew2/(zold-znew)))-@zpar elseif(@ztype=="multi ratio 3") z=@zafn((znew2/(znew+zold)))-@zpar elseif(@ztype=="multi ratio 4") z=@zafn((znew2/(znew*zold)))-@zpar elseif(@ztype=="multi ratio 5") z=@zafn((zold2/(znew-zold)))-@zpar elseif(@ztype=="multi ratio 6") z=@zafn((zold2/(zold-znew)))-@zpar elseif(@ztype=="multi ratio 7") z=@zafn((zold2/(znew+zold)))-@zpar elseif(@ztype=="multi ratio 8") z=@zafn(((znew2-zold2)/znew))-@zpar elseif(@ztype=="multi ratio 9") z=@zafn(((znew2-zold2)/zold))-@zpar elseif(@ztype=="multi ratio 10") z=@zafn(((znew2-zold2)/(znew+zold)))-@zpar elseif(@ztype=="multi ratio 11") z=@zafn(((znew2-zold2)/(znew*zold)))-@zpar elseif(@ztype=="multi ratio 12") z=@zafn(((znew2-zold2)/(znew/zold)))-@zpar elseif(@ztype=="multi ratio 13") z=@zafn(((zold2-znew2)/znew))-@zpar elseif(@ztype=="multi ratio 14") z=@zafn(((zold2-znew2)/zold))-@zpar elseif(@ztype=="multi ratio 15") z=@zafn(((zold2-znew2)/(znew+zold)))-@zpar elseif(@ztype=="multi ratio 16") z=@zafn(((zold2-znew2)/(znew*zold)))-@zpar elseif(@ztype=="multi ratio 17") z=@zafn(((zold2-znew2)/(znew/zold)))-@zpar elseif(@ztype=="multi ratio 18") z=@zafn(((znew2+zold2)/znew))-@zpar elseif(@ztype=="multi ratio 19") z=@zafn(((znew2+zold2)/zold))-@zpar elseif(@ztype=="multi ratio 20") z=@zafn(((znew2+zold2)/(znew-zold)))-@zpar elseif(@ztype=="multi ratio 21") z=@zafn(((znew2+zold2)/(zold-znew)))-@zpar elseif(@ztype=="multi ratio 22") z=@zafn(((znew2+zold2)/(znew*zold)))-@zpar elseif(@ztype=="multi ratio 23") z=@zafn(((znew2+zold2)/(zold/znew)))-@zpar elseif(@ztype=="multi ratio 24") z=@zafn(((znew2*zold2)/(znew-zold)))-@zpar elseif(@ztype=="multi ratio 25") z=@zafn(((znew2*zold2)/(zold-znew)))-@zpar elseif(@ztype=="multi ratio 26") z=@zafn(((znew2*zold2)/(zold+znew)))-@zpar elseif(@ztype=="multi ratio 27") z=@zafn(((znew2*zold2)/(zold/znew)))-@zpar elseif(@ztype=="multi ratio 28") z=@zafn(((znew2/zold2)/zold))-@zpar elseif(@ztype=="multi ratio 29") z=@zafn(((znew2/zold2)/(zold-znew)))-@zpar elseif(@ztype=="multi ratio 30") z=@zafn(((znew2/zold2)/(znew-zold)))-@zpar elseif(@ztype=="multi ratio 31") z=@zafn(((znew2/zold2)/(znew+zold)))-@zpar elseif(@ztype=="multi ratio 32") z=@zafn(((znew2/zold2)/(znew*zold)))-@zpar elseif(@ztype=="multi ratio 33") z=@zafn(((znew2/zold2)/(zold/znew)))-@zpar elseif(@ztype=="multi ratio 34") z=@zafn(((zold2/znew2)/znew))-@zpar elseif(@ztype=="multi ratio 35") z=@zafn(((zold2/znew2)/(zold-znew)))-@zpar elseif(@ztype=="multi ratio 36") z=@zafn(((zold2/znew2)/(znew-zold)))-@zpar elseif(@ztype=="multi ratio 37") z=@zafn(((zold2/znew2)/(znew+zold)))-@zpar elseif(@ztype=="multi ratio 38") z=@zafn(((zold2/znew2)/(znew/zold)))-@zpar elseif(@ztype=="weird") if(@nfunction=="1") z=@zafn(zold2^znew)-@zpar elseif(@nfunction=="2") z=@zafn((-zold2)^znew)-@zpar elseif(@nfunction=="3") z=@zafn((-zold2)^(-znew))-@zpar elseif(@nfunction=="4") z=@zafn(zold2^(-znew))-@zpar elseif(@nfunction=="5") z=@zafn((zold2+znew2)^(zold-znew))-@zpar elseif(@nfunction=="6") z=@zafn((znew2-zold2)^(zold+znew))-@zpar endif endif endif zold=znew bailout: r<@bailout default: title="Alternating Functions +" heading text="Allows you to alternate between several functions every iteration." endheading maxiter=2500 method=multipass ; ;switch parameters ; heading caption = "Switch Parameters" visible=@show endheading param mode2 caption = "Current Switch Mode" enum = "Mandelbrot Mode""Julia Mode" default = 0 enabled = false endparam param SwitchMode caption = "Switch to" enum = "Mandelbrot Mode""Julia Mode" default = 1 enabled = false endparam param @show caption = "Switch Parameters" default = false endparam float param swscale caption = "Scale" default = 1 visible = @show endparam complex param swcenter caption = "Switch Center" default = (0,0) visible = @show endparam float param scale caption = "Scale Reset" default = 1 visible = @show endparam complex param center caption = "Center Reset" default = (0,0) visible = @show endparam ; ; general parameters ; heading caption="General parameters" endheading complex param startseed caption="Julia Seed" default=0 visible=(@mode2=="Julia Mode") endparam param initz_type caption="initial z type" default=1 enum="manual" "pixel" endparam complex param initial_z caption="initial z" default=(0,0) visible=(@initz_type=="manual") endparam float param bailout caption="bailout" default=1000 endparam param ztype caption="z type" default=0 enum="iterate""difference""sum""product""ratio""inverse difference"\ "inverse ratio""multi sum 1""multi sum 2""multi sum 3""multi sum 4"\ "multi sum 5""multi sum 6""multi sum 7""multi sum 8""multi sum 9"\ "multi sum 10""multi sum 11""multi sum 12""multi sum 13""multi sum 14"\ "multi sum 15""multi sum 16""multi sum 17""multi sum 18""multi sum 19"\ "multi sum 20""multi sum 21""multi difference 1""multi difference 2"\ "multi difference 3""multi difference 4""multi difference 5""multi difference 6"\ "multi difference 7""multi difference 8""multi difference 9""multi difference 10"\ "multi difference 11""multi difference 12""multi difference 13""multi difference 14"\ "multi difference 15""multi difference 16""multi difference 17""multi difference 18"\ "multi difference 19""multi difference 20""multi difference 21""multi difference 22"\ "multi difference 23""multi difference 24""multi difference 25""multi difference 26"\ "multi difference 27""multi difference 28""multi difference 29""multi difference 30"\ "multi difference 31""multi difference 32""multi difference 33""multi difference 34"\ "multi difference 35""multi difference 36""multi difference 37""multi difference 38"\ "multi difference 39""multi difference 40""multi difference 41""multi difference 42"\ "multi difference 43""multi product 1""multi product 2""multi product 3"\ "multi product 4""multi product 5""multi product 6""multi product 7"\ "multi product 8""multi product 9""multi product 10""multi product 11"\ "multi product 12""multi product 13""multi product 14""multi product 15"\ "multi product 16""multi product 17""multi ratio 1""multi ratio 2""multi ratio 3"\ "multi ratio 4""multi ratio 5""multi ratio 6""multi ratio 7"\ "multi ratio 8""multi ratio 9""multi ratio 10""multi ratio 11"\ "multi ratio 12""multi ratio 13""multi ratio 14""multi ratio 15"\ "multi ratio 16""multi ratio 17""multi ratio 18""multi ratio 19"\ "multi ratio 20""multi ratio 21""multi ratio 22""multi ratio 23"\ "multi ratio 24""multi ratio 25""multi ratio 26""multi ratio 27"\ "multi ratio 28""multi ratio 29""multi ratio 30""multi ratio 31"\ "multi ratio 32""multi ratio 33""multi ratio 34""multi ratio 35"\ "multi ratio 36""multi ratio 37""multi ratio 38""weird" endparam complex param zpar caption="z type offset" default=0 endparam complex param zparn caption="znew offset" default=0 endparam complex param zparo caption="zold offset" default=0 endparam func zafn caption="z type function" default=ident() endfunc func znfn caption="z new function" default=ident() endfunc func zofn caption="z old function" default=ident() visible=(@ztype!="iterate") endfunc heading text="'ztype variation' needs one or both 'z new'/'z old' functions above not at 'ident'" visible=(@ztype!="iterate") endheading param zflavor caption="z type variation" enum="1""2""3""4""5""6""7" default=0 visible=(@ztype!="iterate") endparam ; ; alternating function defintions ; heading caption="Alternating functions" endheading param nfunction caption="# of functions" default=1 enum="1" "2" "3" "4" "5" "6" endparam param fn1 caption="function 1" default=4 enum=" " "Mandelbrot 1" "Julia 1" "Newton M 1" "Newton J 1" "Popcorn C 1" "Popcorn R 1"\ "Mandelbrot 2" "Julia 2" "Newton M 2" "Newton J 2" "Popcorn C 2" "Popcorn R 2" \ "Z*C 1""Z*C 2""Talis 1""Talis 2""Talis var 1""Talis var 2" endparam param fn2 caption="function 2" default=1 enum=" " "Mandelbrot 1" "Julia 1" "Newton M 1" "Newton J 1" "Popcorn C 1" "Popcorn R 1"\ "Mandelbrot 2" "Julia 2" "Newton M 2" "Newton J 2" "Popcorn C 2" "Popcorn R 2"\ "Z*C 1""Z*C 2""Talis 1""Talis 2""Talis var 1""Talis var 2" visible=(@nfunction>0) endparam param fn3 caption="function 3" default=0 enum=" " "Mandelbrot 1" "Julia 1" "Newton M 1" "Newton J 1" "Popcorn C 1" "Popcorn R 1"\ "Mandelbrot 2" "Julia 2" "Newton M 2" "Newton J 2" "Popcorn C 2" "Popcorn R 2"\ "Z*C 1""Z*C 2""Talis 1""Talis 2""Talis var 1""Talis var 2" visible=(@nfunction>1) endparam param fn4 caption="function 4" default=0 enum=" " "Mandelbrot 1" "Julia 1" "Newton M 1" "Newton J 1" "Popcorn C 1" "Popcorn R 1"\ "Mandelbrot 2" "Julia 2" "Newton M 2" "Newton J 2" "Popcorn C 2" "Popcorn R 2"\ "Z*C 1""Z*C 2""Talis 1""Talis 2""Talis var 1""Talis var 2" visible=(@nfunction>2) endparam param fn5 caption="function 5" default=0 enum=" " "Mandelbrot 1" "Julia 1" "Newton M 1" "Newton J 1" "Popcorn C 1" "Popcorn R 1"\ "Mandelbrot 2" "Julia 2" "Newton M 2" "Newton J 2" "Popcorn C 2" "Popcorn R 2"\ "Z*C 1""Z*C 2""Talis 1""Talis 2""Talis var 1""Talis var 2" visible=(@nfunction>3) endparam param fn6 caption="function 6" default=0 enum=" " "Mandelbrot 1" "Julia 1" "Newton M 1" "Newton J 1" "Popcorn C 1" "Popcorn R 1"\ "Mandelbrot 2" "Julia 2" "Newton M 2" "Newton J 2" "Popcorn C 2" "Popcorn R 2"\ "Z*C 1""Z*C 2""Talis 1""Talis 2""Talis var 1""Talis var 2" visible=(@nfunction>4) endparam ; complex param m1power caption="Mandelbrot 1 power" default=(2,0) visible=((@fn1=="Mandelbrot 1")||(@fn2=="Mandelbrot 1")||(@fn3=="Mandelbrot 1")||\ (@fn4=="Mandelbrot 1")||(@fn5=="Mandelbrot 1")||(@fn6=="Mandelbrot 1")) endparam complex param m1weight caption="Mandelbrot 1 weight" default=1 visible=((@fn1=="Mandelbrot 1")||(@fn2=="Mandelbrot 1")||(@fn3=="Mandelbrot 1")||\ (@fn4=="Mandelbrot 1")||(@fn5=="Mandelbrot 1")||(@fn6=="Mandelbrot 1")) endparam func fnm1 caption="Mandlebrot 1 function" default=ident() visible=((@fn1=="Mandelbrot 1")||(@fn2=="Mandelbrot 1")||(@fn3=="Mandelbrot 1")||\ (@fn4=="Mandelbrot 1")||(@fn5=="Mandelbrot 1")||(@fn6=="Mandelbrot 1")) endfunc func fnm1c caption="Mandlebrot 1 pixel function" default=ident() visible=((@fn1=="Mandelbrot 1")||(@fn2=="Mandelbrot 1")||(@fn3=="Mandelbrot 1")||\ (@fn4=="Mandelbrot 1")||(@fn5=="Mandelbrot 1")||(@fn6=="Mandelbrot 1")) endfunc complex param j1power caption="Julia 1 power" default=(2,0) visible=((@fn1=="Julia 1")||(@fn2=="Julia 1")||(@fn3=="Julia 1")||\ (@fn4=="Julia 1")||(@fn5=="Julia 1")||(@fn6=="Julia 1")) endparam complex param j1param caption="Julia 1 parameter" default=(0,1) visible=((@fn1=="Julia 1")||(@fn2=="Julia 1")||(@fn3=="Julia 1")||\ (@fn4=="Julia 1")||(@fn5=="Julia 1")||(@fn6=="Julia 1")) endparam complex param j1weight caption="Julia 1 weight" default=1 visible=((@fn1=="Julia 1")||(@fn2=="Julia 1")||(@fn3=="Julia 1")||\ (@fn4=="Julia 1")||(@fn5=="Julia 1")||(@fn6=="Julia 1")) endparam func fnj1 caption="Julia 1 function" default=ident() visible=((@fn1=="Julia 1")||(@fn2=="Julia 1")||(@fn3=="Julia 1")||\ (@fn4=="Julia 1")||(@fn5=="Julia 1")||(@fn6=="Julia 1")) endfunc complex param nm1power caption="Newton M 1 power" default=(3,0) visible=((@fn1=="Newton M 1")||(@fn2=="Newton M 1")||(@fn3=="Newton M 1")||\ (@fn4=="Newton M 1")||(@fn5=="Newton M 1")||(@fn6=="Newton M 1")) endparam complex param nm1weight caption="Newton M 1 nova fac" default=1 visible=((@fn1=="Newton M 1")||(@fn2=="Newton M 1")||(@fn3=="Newton M 1")||\ (@fn4=="Newton M 1")||(@fn5=="Newton M 1")||(@fn6=="Newton M 1")) endparam func nm1fn1 caption="Newton function 1" default=ident() visible=((@fn1=="Newton M 1")||(@fn2=="Newton M 1")||(@fn3=="Newton M 1")||\ (@fn4=="Newton M 1")||(@fn5=="Newton M 1")||(@fn6=="Newton M 1")) endfunc func nm1fn2 caption="Newton function 2" default=ident() visible=((@fn1=="Newton M 1")||(@fn2=="Newton M 1")||(@fn3=="Newton M 1")||\ (@fn4=="Newton M 1")||(@fn5=="Newton M 1")||(@fn6=="Newton M 1")) endfunc complex param nj1power caption="Newton J 1 power" default=(4,0) visible=((@fn1=="Newton J 1")||(@fn2=="Newton J 1")||(@fn3=="Newton J 1")||\ (@fn4=="Newton J 1")||(@fn5=="Newton J 1")||(@fn6=="Newton J 1")) endparam complex param nj1param caption="Newton J 1 parameter" default=(1,0) visible=((@fn1=="Newton J 1")||(@fn2=="Newton J 1")||(@fn3=="Newton J 1")||\ (@fn4=="Newton J 1")||(@fn5=="Newton J 1")||(@fn6=="Newton J 1")) endparam complex param nj1weight caption="Newton J 1 nova fac" default=1 visible=((@fn1=="Newton J 1")||(@fn2=="Newton J 1")||(@fn3=="Newton J 1")||\ (@fn4=="Newton J 1")||(@fn5=="Newton J 1")||(@fn6=="Newton J 1")) endparam func nj1fn1 caption="Newton function 1" default=ident() visible=((@fn1=="Newton J 1")||(@fn2=="Newton J 1")||(@fn3=="Newton J 1")||\ (@fn4=="Newton J 1")||(@fn5=="Newton J 1")||(@fn6=="Newton J 1")) endfunc func nj1fn2 caption="Newton function 2" default=ident() visible=((@fn1=="Newton J 1")||(@fn2=="Newton J 1")||(@fn3=="Newton J 1")||\ (@fn4=="Newton J 1")||(@fn5=="Newton J 1")||(@fn6=="Newton J 1")) endfunc complex param pc1h caption="complex step size 1" default=(0.1,0) visible=((@fn1=="Popcorn C 1")||(@fn2=="Popcorn C 1")||(@fn3=="Popcorn C 1")||\ (@fn4=="Popcorn C 1")||(@fn5=="Popcorn C 1")||(@fn6=="Popcorn C 1")) endparam complex param pc1c caption="complex frequency 1" default=(3,0) visible=((@fn1=="Popcorn C 1")||(@fn2=="Popcorn C 1")||(@fn3=="Popcorn C 1")||\ (@fn4=="Popcorn C 1")||(@fn5=="Popcorn C 1")||(@fn6=="Popcorn C 1")) endparam func pc1out caption="complex outer function 1" default=sin() visible=((@fn1=="Popcorn C 1")||(@fn2=="Popcorn C 1")||(@fn3=="Popcorn C 1")||\ (@fn4=="Popcorn C 1")||(@fn5=="Popcorn C 1")||(@fn6=="Popcorn C 1")) endfunc func pc1in caption="complex inner function 1" default=tan() visible=((@fn1=="Popcorn C 1")||(@fn2=="Popcorn C 1")||(@fn3=="Popcorn C 1")||\ (@fn4=="Popcorn C 1")||(@fn5=="Popcorn C 1")||(@fn6=="Popcorn C 1")) endfunc func pc1xfn caption="x function 1" default=ident() visible=((@fn1=="Popcorn C 1")||(@fn2=="Popcorn C 1")||(@fn3=="Popcorn C 1")||\ (@fn4=="Popcorn C 1")||(@fn5=="Popcorn C 1")||(@fn6=="Popcorn C 1")) endfunc func pc1yfn caption="y function 1" default=ident() visible=((@fn1=="Popcorn C 1")||(@fn2=="Popcorn C 1")||(@fn3=="Popcorn C 1")||\ (@fn4=="Popcorn C 1")||(@fn5=="Popcorn C 1")||(@fn6=="Popcorn C 1")) endfunc float param pr1h caption="real step size 1" default=0.1 visible=((@fn1=="Popcorn R 1")||(@fn2=="Popcorn R 1")||(@fn3=="Popcorn R 1")||\ (@fn4=="Popcorn R 1")||(@fn5=="Popcorn R 1")||(@fn6=="Popcorn R 1")) endparam float param pr1c caption="real frequency 1" default=3 visible=((@fn1=="Popcorn R 1")||(@fn2=="Popcorn R 1")||(@fn3=="Popcorn R 1")||\ (@fn4=="Popcorn R 1")||(@fn5=="Popcorn R 1")||(@fn6=="Popcorn R 1")) endparam func pr1out caption="real outer function 1" default=sin() visible=((@fn1=="Popcorn R 1")||(@fn2=="Popcorn R 1")||(@fn3=="Popcorn R 1")||\ (@fn4=="Popcorn R 1")||(@fn5=="Popcorn R 1")||(@fn6=="Popcorn R 1")) endfunc func pr1in caption="real inner function 1" default=tan() visible=((@fn1=="Popcorn R 1")||(@fn2=="Popcorn R 1")||(@fn3=="Popcorn R 1")||\ (@fn4=="Popcorn R 1")||(@fn5=="Popcorn R 1")||(@fn6=="Popcorn R 1")) endfunc func pr1xfn caption="x function 1" default=ident() visible=((@fn1=="Popcorn R 1")||(@fn2=="Popcorn R 1")||(@fn3=="Popcorn R 1")||\ (@fn4=="Popcorn R 1")||(@fn5=="Popcorn R 1")||(@fn6=="Popcorn R 1")) endfunc func pr1yfn caption="y function 1" default=ident() visible=((@fn1=="Popcorn R 1")||(@fn2=="Popcorn R 1")||(@fn3=="Popcorn R 1")||\ (@fn4=="Popcorn R 1")||(@fn5=="Popcorn R 1")||(@fn6=="Popcorn R 1")) endfunc complex param m2power caption="Mandelbrot 2 power" default=(2,0) visible=((@fn1=="Mandelbrot 2")||(@fn2=="Mandelbrot 2")||(@fn3=="Mandelbrot 2")||\ (@fn4=="Mandelbrot 2")||(@fn5=="Mandelbrot 2")||(@fn6=="Mandelbrot 2")) endparam complex param m2weight caption="Mandelbrot 2 weight" default=1 visible=((@fn1=="Mandelbrot 2")||(@fn2=="Mandelbrot 2")||(@fn3=="Mandelbrot 2")||\ (@fn4=="Mandelbrot 2")||(@fn5=="Mandelbrot 2")||(@fn6=="Mandelbrot 2")) endparam func fnm2 caption="Mandlebrot 2 function" default=ident() visible=((@fn2=="Mandelbrot 2")||(@fn2=="Mandelbrot 2")||(@fn3=="Mandelbrot 2")||\ (@fn4=="Mandelbrot 2")||(@fn5=="Mandelbrot 2")||(@fn6=="Mandelbrot 2")) endfunc func fnm2c caption="Mandlebrot 2 pixel function" default=ident() visible=((@fn1=="Mandelbrot 2")||(@fn2=="Mandelbrot 2")||(@fn3=="Mandelbrot 2")||\ (@fn4=="Mandelbrot 2")||(@fn5=="Mandelbrot 2")||(@fn6=="Mandelbrot 2")) endfunc complex param j2power caption="Julia 2 power" default=(2,0) visible=((@fn1=="Julia 2")||(@fn2=="Julia 2")||(@fn3=="Julia 2")||\ (@fn4=="Julia 2")||(@fn5=="Julia 2")||(@fn6=="Julia 2")) endparam complex param j2param caption="Julia 2 parameter" default=(0,1) visible=((@fn1=="Julia 2")||(@fn2=="Julia 2")||(@fn3=="Julia 2")||\ (@fn4=="Julia 2")||(@fn5=="Julia 2")||(@fn6=="Julia 2")) endparam func fnj2 caption="Julia 2 function" default=ident() visible=((@fn1=="Julia 2")||(@fn2=="Julia 2")||(@fn3=="Julia 2")||\ (@fn4=="Julia 2")||(@fn5=="Julia 2")||(@fn6=="Julia 2")) endfunc complex param j2weight caption="Julia 2 weight" default=1 visible=((@fn1=="Julia 2")||(@fn2=="Julia 2")||(@fn3=="Julia 2")||\ (@fn4=="Julia 2")||(@fn5=="Julia 2")||(@fn6=="Julia 2")) endparam complex param nm2power caption="Newton M 2 power" default=(3,0) visible=((@fn1=="Newton M 2")||(@fn2=="Newton M 2")||(@fn3=="Newton M 2")||\ (@fn4=="Newton M 2")||(@fn5=="Newton M 2")||(@fn6=="Newton M 2")) endparam complex param nm2weight caption="Newton M 2 nova fac" default=1 visible=((@fn1=="Newton M 2")||(@fn2=="Newton M 2")||(@fn3=="Newton M 2")||\ (@fn4=="Newton M 2")||(@fn5=="Newton M 2")||(@fn6=="Newton M 2")) endparam func nm2fn1 caption="Newton function 1" default=ident() visible=((@fn1=="Newton M 2")||(@fn2=="Newton M 2")||(@fn3=="Newton M 2")||\ (@fn4=="Newton M 2")||(@fn5=="Newton M 2")||(@fn6=="Newton M 2")) endfunc func nm2fn2 caption="Newton function 2" default=ident() visible=((@fn1=="Newton M 2")||(@fn2=="Newton M 2")||(@fn3=="Newton M 2")||\ (@fn4=="Newton M 2")||(@fn5=="Newton M 2")||(@fn6=="Newton M 2")) endfunc complex param nj2power caption="Newton J 2 power" default=(4,0) visible=((@fn1=="Newton J 2")||(@fn2=="Newton J 2")||(@fn3=="Newton J 2")||\ (@fn4=="Newton J 2")||(@fn5=="Newton J 2")||(@fn6=="Newton J 2")) endparam complex param nj2param caption="Newton J 2 parameter" default=(1,0) visible=((@fn1=="Newton J 2")||(@fn2=="Newton J 2")||(@fn3=="Newton J 2")||\ (@fn4=="Newton J 2")||(@fn5=="Newton J 2")||(@fn6=="Newton J 2")) endparam complex param nj2weight caption="Newton J 2 nova fac" default=(1,0) visible=((@fn1=="Newton J 2")||(@fn2=="Newton J 2")||(@fn3=="Newton J 2")||\ (@fn4=="Newton J 2")||(@fn5=="Newton J 2")||(@fn6=="Newton J 2")) endparam func nj2fn1 caption="Newton function 1" default=ident() visible=((@fn1=="Newton J 2")||(@fn2=="Newton J 2")||(@fn3=="Newton J 2")||\ (@fn4=="Newton J 2")||(@fn5=="Newton J 2")||(@fn6=="Newton J 2")) endfunc func nj2fn2 caption="Newton function 2" default=ident() visible=((@fn1=="Newton J 2")||(@fn2=="Newton J 2")||(@fn3=="Newton J 2")||\ (@fn4=="Newton J 2")||(@fn5=="Newton J 2")||(@fn6=="Newton J 2")) endfunc complex param pc2h caption="complex step size 2" default=(0.1,0) visible=((@fn1=="Popcorn C 2")||(@fn2=="Popcorn C 2")||(@fn3=="Popcorn C 2")||\ (@fn4=="Popcorn C 2")||(@fn5=="Popcorn C 2")||(@fn6=="Popcorn C 2")) endparam complex param pc2c caption="complex frequency 2" default=(3,0) visible=((@fn1=="Popcorn C 2")||(@fn2=="Popcorn C 2")||(@fn3=="Popcorn C 2")||\ (@fn4=="Popcorn C 2")||(@fn5=="Popcorn C 2")||(@fn6=="Popcorn C 2")) endparam func pc2out caption="complex outer function 2" default=sin() visible=((@fn1=="Popcorn C 2")||(@fn2=="Popcorn C 2")||(@fn3=="Popcorn C 2")||\ (@fn4=="Popcorn C 2")||(@fn5=="Popcorn C 2")||(@fn6=="Popcorn C 2")) endfunc func pc2xfn caption="x function 2" default=ident() visible=((@fn1=="Popcorn C 2")||(@fn2=="Popcorn C 2")||(@fn3=="Popcorn C 2")||\ (@fn4=="Popcorn C 2")||(@fn5=="Popcorn C 2")||(@fn6=="Popcorn C 2")) endfunc func pc2yfn caption="y function 2" default=ident() visible=((@fn1=="Popcorn C 2")||(@fn2=="Popcorn C 2")||(@fn3=="Popcorn C 2")||\ (@fn4=="Popcorn C 2")||(@fn5=="Popcorn C 2")||(@fn6=="Popcorn C 2")) endfunc func pc2in caption="complex inner function 2" default=tan() visible=((@fn1=="Popcorn C 2")||(@fn2=="Popcorn C 2")||(@fn3=="Popcorn C 2")||\ (@fn4=="Popcorn C 2")||(@fn5=="Popcorn C 2")||(@fn6=="Popcorn C 2")) endfunc float param pr2h caption="real step size 2" default=0.1 visible=((@fn1=="Popcorn R 2")||(@fn2=="Popcorn R 2")||(@fn3=="Popcorn R 2")||\ (@fn4=="Popcorn R 2")||(@fn5=="Popcorn R 2")||(@fn6=="Popcorn R 2")) endparam float param pr2c caption="real frequency 2" default=3 visible=((@fn1=="Popcorn R 2")||(@fn2=="Popcorn R 2")||(@fn3=="Popcorn R 2")||\ (@fn4=="Popcorn R 2")||(@fn5=="Popcorn R 2")||(@fn6=="Popcorn R 2")) endparam func pr2out caption="real outer function 2" default=sin() visible=((@fn1=="Popcorn R 2")||(@fn2=="Popcorn R 2")||(@fn3=="Popcorn R 2")||\ (@fn4=="Popcorn R 2")||(@fn5=="Popcorn R 2")||(@fn6=="Popcorn R 2")) endfunc func pr2in caption="real inner function 2" default=tan() visible=((@fn1=="Popcorn R 2")||(@fn2=="Popcorn R 2")||(@fn3=="Popcorn R 2")||\ (@fn4=="Popcorn R 2")||(@fn5=="Popcorn R 2")||(@fn6=="Popcorn R 2")) endfunc func pr2xfn caption="x function 2" default=ident() visible=((@fn1=="Popcorn R 2")||(@fn2=="Popcorn R 2")||(@fn3=="Popcorn R 2")||\ (@fn4=="Popcorn R 2")||(@fn5=="Popcorn R 2")||(@fn6=="Popcorn R 2")) endfunc func pr2yfn caption="y function 2" default=ident() visible=((@fn1=="Popcorn R 2")||(@fn2=="Popcorn R 2")||(@fn3=="Popcorn R 2")||\ (@fn4=="Popcorn R 2")||(@fn5=="Popcorn R 2")||(@fn6=="Popcorn R 2")) endfunc complex param zc1power caption="Z*C 1 power" default=(1,0) visible=((@fn1=="Z*C 1")||(@fn2=="Z*C 1")||(@fn3=="Z*C 1")||\ (@fn4=="Z*C 1")||(@fn5=="Z*C 1")||(@fn6=="Z*C 1")) endparam complex param zc1weight caption="Z*C 1 weight" default=1 visible=((@fn1=="Z*C 1")||(@fn2=="Z*C 1")||(@fn3=="Z*C 1")||\ (@fn4=="Z*C 1")||(@fn5=="Z*C 1")||(@fn6=="Z*C 1")) endparam func zc1fn caption="Z*C 1 Z function" default=ident() visible=((@fn1=="Z*C 1")||(@fn2=="Z*C 1")||(@fn3=="Z*C 1")||\ (@fn4=="Z*C 1")||(@fn5=="Z*C 1")||(@fn6=="Z*C 1")) endfunc func zc1fn2 caption="Z*C 1 C function" default=ident() visible=((@fn1=="Z*C 1")||(@fn2=="Z*C 1")||(@fn3=="Z*C 1")||\ (@fn4=="Z*C 1")||(@fn5=="Z*C 1")||(@fn6=="Z*C 1")) endfunc complex param zc2power caption="Z*C 2 power" default=(1,0) visible=((@fn1=="Z*C 2")||(@fn2=="Z*C 2")||(@fn3=="Z*C 2")||\ (@fn4=="Z*C 2")||(@fn5=="Z*C 2")||(@fn6=="Z*C 2")) endparam complex param zc2weight caption="Z*C 2 weight" default=1 visible=((@fn1=="Z*C 2")||(@fn2=="Z*C 2")||(@fn3=="Z*C 2")||\ (@fn4=="Z*C 2")||(@fn5=="Z*C 2")||(@fn6=="Z*C 2")) endparam func zc2fn caption="Z*C 2 Z function" default=ident() visible=((@fn1=="Z*C 2")||(@fn2=="Z*C 2")||(@fn3=="Z*C 2")||\ (@fn4=="Z*C 2")||(@fn5=="Z*C 2")||(@fn6=="Z*C 2")) endfunc func zc2fn2 caption="Z*C 2 C function" default=ident() visible=((@fn1=="Z*C 2")||(@fn2=="Z*C 2")||(@fn3=="Z*C 2")||\ (@fn4=="Z*C 2")||(@fn5=="Z*C 2")||(@fn6=="Z*C 2")) endfunc complex param t1power caption="Talis 1 power" default=(1,0) visible=((@fn1=="Talis 1")||(@fn2=="Talis 1")||(@fn3=="Talis 1")||\ (@fn4=="Talis 1")||(@fn5=="Talis 1")||(@fn6=="Talis 1")) endparam complex param t1weight caption="Talis 1 weight" default=1 visible=((@fn1=="Talis 1")||(@fn2=="Talis 1")||(@fn3=="Talis 1")||\ (@fn4=="Talis 1")||(@fn5=="Talis 1")||(@fn6=="Talis 1")) endparam func t1fn caption="Talis 1 Z function" default=ident() visible=((@fn1=="Talis 1")||(@fn2=="Talis 1")||(@fn3=="Talis 1")||\ (@fn4=="Talis 1")||(@fn5=="Talis 1")||(@fn6=="Talis 1")) endfunc func t1fn2 caption="Talis 1 C function" default=ident() visible=((@fn1=="Talis 1")||(@fn2=="Talis 1")||(@fn3=="Talis 1")||\ (@fn4=="Talis 1")||(@fn5=="Talis 1")||(@fn6=="Talis 1")) endfunc complex param t2power caption="Talis 2 power" default=(1,0) visible=((@fn1=="Talis 2")||(@fn2=="Talis 2")||(@fn3=="Talis 2")||\ (@fn4=="Talis 2")||(@fn5=="Talis 2")||(@fn6=="Talis 2")) endparam complex param t2weight caption="Talis 2 weight" default=1 visible=((@fn1=="Talis 2")||(@fn2=="Talis 2")||(@fn3=="Talis 2")||\ (@fn4=="Talis 2")||(@fn5=="Talis 2")||(@fn6=="Talis 2")) endparam func t2fn caption="Talis 2 Z function" default=ident() visible=((@fn1=="Talis 2")||(@fn2=="Talis 2")||(@fn3=="Talis 2")||\ (@fn4=="Talis 2")||(@fn5=="Talis 2")||(@fn6=="Talis 2")) endfunc func t2fn2 caption="Talis 2 C function" default=ident() visible=((@fn1=="Talis 2")||(@fn2=="Talis 2")||(@fn3=="Talis 2")||\ (@fn4=="Talis 2")||(@fn5=="Talis 2")||(@fn6=="Talis 2")) endfunc complex param tv1power caption="Talis var 1 power" default=(1,0) visible=((@fn1=="Talis var 1")||(@fn2=="Talis var 1")||(@fn3=="Talis var 1")||\ (@fn4=="Talis var 1")||(@fn5=="Talis var 1")||(@fn6=="Talis var 1")) endparam complex param tv1weight caption="Talis var 1 weight" default=1 visible=((@fn1=="Talis var 1")||(@fn2=="Talis var 1")||(@fn3=="Talis var 1")||\ (@fn4=="Talis var 1")||(@fn5=="Talis var 1")||(@fn6=="Talis var 1")) endparam func tv1fn caption="Talis var 1 Z function" default=ident() visible=((@fn1=="Talis var 1")||(@fn2=="Talis var 1")||(@fn3=="Talis var 1")||\ (@fn4=="Talis var 1")||(@fn5=="Talis var 1")||(@fn6=="Talis var 1")) endfunc func tv1fn2 caption="Talis var 1 C function" default=ident() visible=((@fn1=="Talis var 1")||(@fn2=="Talis var 1")||(@fn3=="Talis var 1")||\ (@fn4=="Talis var 1")||(@fn5=="Talis var 1")||(@fn6=="Talis var 1")) endfunc complex param tv2power caption="Talis var 2 power" default=(1,0) visible=((@fn1=="Talis var 2")||(@fn2=="Talis var 2")||(@fn3=="Talis var 2")||\ (@fn4=="Talis var 2")||(@fn5=="Talis var 2")||(@fn6=="Talis var 2")) endparam complex param tv2weight caption="Talis var 2 weight" default=1 visible=((@fn1=="Talis var 2")||(@fn2=="Talis var 2")||(@fn3=="Talis var 2")||\ (@fn4=="Talis var 2")||(@fn5=="Talis var 2")||(@fn6=="Talis var 2")) endparam func tv2fn caption="Talis var 2 Z function" default=ident() visible=((@fn1=="Talis var 2")||(@fn2=="Talis var 2")||(@fn3=="Talis var 2")||\ (@fn4=="Talis var 2")||(@fn5=="Talis var 2")||(@fn6=="Talis var 2")) endfunc func tv2fn2 caption="Talis var 2 C function" default=ident() visible=((@fn1=="Talis var 2")||(@fn2=="Talis var 2")||(@fn3=="Talis var 2")||\ (@fn4=="Talis var 2")||(@fn5=="Talis var 2")||(@fn6=="Talis var 2")) endfunc ; ; oscillator/ramp ; heading caption="Oscillator" visible=(@nfunction!=0) endheading param oscillator_type caption="type" default=0 enum="ramp" "sine" "cosine" "random msb" "random lsb" visible=(@nfunction!=0) endparam int param initial_seed caption="random seed" default=2357 visible=((@oscillator_type=="random msb")||(@oscillator_type=="random lsb")) visible=(@nfunction!=0) endparam ; ;version ; param version caption="Version" default=1.1 visible=false endparam ; switch: type="alternating-functions+switch" fn1=@fn1 fn2=@fn2 fn3=@fn3 fn4=@fn4 fn5=@fn5 fn6=@fn6 initz_type=@initz_type initial_z=@initial_z ztype=@ztype nfunction=@nfunction m1power=@m1power m1weight=@m1weight fnm1=@fnm1 fnm1c=@fnm1c j1power=@j1power j1param=@jiparam j1weight=@j1weight fnj1=@fnj1 nm1power=@nm1power nj1power=@nj1power nj1weight=@nj1weight nj1param=@nj1param pc1h=@pc1h pc1c=@pc1c pc1out=@pc1out pc1in=@pc1in pr1h=@pr1h pr1c=@pr1c pr1out=@pr1out pr1in=@pr1in m2power=@m2power m2weight=@m2weight fnm2=@fnm2 fnm2c=@fnm2c j2power=@j2power j2param=@j2param j2weight=@j2weight fnj2=@fnj2 nm2power=@nm2power nm2weight=@nm2weight nj2power=@nj2power nj2param=@nj2param nj2weight=@nj2weight pc2h=@pc2h pc2c=@pc2c pc2out=@pc2out pc2in=@pc2in pr2h=@pr2h pr2c=@pr2c pr2in=@pr2in pr2out=@pr2out zc1power=@zc1power zc1weight=@zc1weight zc1fn=@zc1fn zc1fn2=@zc1fn2 zc2power=@zc2power zc2weight=@zc2weight zc2fn=@zc2fn zc2fn2=@zc2fn2 t1power=@t1power t1weight=@t1weight t1fn=@t1fn t1fn2=@t1fn2 t2power=@t2power t2weight=@t2weight t2fn=@t2fn t2fn2=@t2fn2 tv1power=@tv1power tv1weight=@tv1weight tv1fn=@tv1fn tv1fn2=@tv1fn2 tv2power=@tv2power tv2weight=@tv2weight tv2fn=@tv2fn tv2fn2=@tv2fn2 zpar=@zpar zparn=@zparn zparo=@zparo zafn=@zafn znfn=@znfn zofn=@zofn nj1fn1=@nj1fn1 nj2fn1=@nj2fn1 nm1fn1=@nm1fn1 nm2fn1=@nm2fn1 nj1fn2=@nj1fn2 nj2fn2=@nj2fn2 nm1fn2=@nm1fn2 nm2fn2=@nm2fn2 pc1xfn=@pc1xfn pc1yfn=@pc1yfn pc2xfn=@pc2xfn pc2yfn=@pc2yfn pr1xfn=@pr1xfn pr1yfn=@pr1yfn pr2xfn=@pr2xfn pr2yfn=@pr2yfn zflavor=@zflavor oscillator_type=@oscillator_type initial_seed=@initial_seed mode2=@switchmode switchmode=@mode2 center=@swcenter scale=@swscale startseed = #pixel } ;*********************************************************************** mandelbrotFantasia2 { ; A reworked version of "Mandelbrot Fantasia" containing a few ; different features, See also the original for other options. ; ; A very liberal port of the 'Curfew' formula in FE. Good for ; exploring Mandelbrot zooms. Midgets can be found using either ; the "Normal" or "Turbo 1" loop and keeping the "Preserve ; Midgets" box checked. If box is unchecked changing the ; "Distort" parameters will give interesting spirals and ; Julias but will the destroy the symmetry in which ; Midgets live." ; 2015.09.25 Toby Marshall v 1.0 init: complex a = z complex c = #pixel complex z = @startSeed IF (@mode == "Mandelbrot") z = @startSeed ENDIF IF @mode == "Julia" z = #pixel c = @startSeed ENDIF loop: if @mandy == true if @type == "Normal" z = (@fn2((z+@param2)^@pwr)+c+@param1)*recip(fn1(((1/c)/(@fn3(z+@param2)+@fn4(c)+@param1)))) elseif @type == "Turbo 1" a = z*@typefn(c) z = (@fn2((a+@param2)^@pwr)+c+@param1)*recip(fn1(((1/c)/(@fn3(a+@param2)+@fn4(c)+@param1)))) elseif @type == "Turbo 2" a = z*@typefn(c) z = (@fn2(((z-a)+@param2)^@pwr)+c+@param1)*recip(fn1(((1/c)/(@fn3(a+@param2)+@fn4(c)+@param1)))) elseif @type == "Turbo 3" a = z*@typefn(c) z = (@fn2((a+@param2)^@pwr)+c+@param1)*recip(fn1(((1/c)/(@fn3(z+@param2)+@fn4(c)+@param1)))) elseif @type == "Turbo 4" a = z*@typefn(c) z = (@fn2(((z-@typefn(c))+@param2)^@pwr)+c+@param1)*recip(fn1(((1/c)/(@fn3(a+@param2)+@fn4(c)+@param1)))) endif else if @type == "Normal" z = (@fn2((z+@param2)^@pwr)+c+@param1)*recip(fn1(((1/c)/(@fn3(z+@param3)+@fn4(c)+@param1)))) elseif @type == "Turbo 1" a = z*@typefn(c) z = (@fn2((a+@param2)^@pwr)+c+@param1)*recip(fn1(((1/c)/(@fn3(a+@param3)+@fn4(c)+@param1)))) elseif @type == "Turbo 2" a = z*@typefn(c) z = (@fn2(((z-a)+@param2)^@pwr)+c+@param1)*recip(fn1(((1/c)/(@fn3(a+@param3)+@fn4(c)+@param1)))) elseif @type == "Turbo 3" a = z*@typefn(c) z = (@fn2((a+@param2)^@pwr)+c+@param1)*recip(fn1(((1/c)/(@fn3(z+@param3)+@fn4(c)+@param1)))) elseif @type == "Turbo 4" a = z*@typefn(c) z = (@fn2(((z-@typefn(c))+@param2)^@pwr)+c+@param1)*recip(fn1(((1/c)/(@fn3(a+@param3)+@fn4(c)+@param1)))) endif endif bailout: |z| <= @bailout default: title = "Mandelbrot Fantasia 2" center = (-0.5, 0) maxiter = 5000 param mode caption = "Current mode" default = 0 enum = "Mandelbrot" "Julia" enabled = false hint = "Shows the current mode for the formula." endparam param type caption = "Loop" enum = "Normal""Turbo 1""Turbo 2""Turbo 3""Turbo 4" default = 0 endparam param switchMode caption = "Switch to" default = 1 enum = "Mandelbrot" "Julia" hint = "Sets the mode to switch to using the switch function." visible = false endparam complex param startSeed caption = "Start/Seed" default = (0,0) hint = "Perturbation for the Mandelbrot, seed for the Julia." endparam complex param pwr caption = "Power" default = (1,0) endparam complex param param1 caption = "Offset" default = 0 endparam complex param param2 caption = "Distort" default = 0 endparam complex param param3 caption = "Distort 2" default = 0 visible = (@mandy == false) endparam bool param @mandy caption = "Preserve Midgets (Normal or Turbo 1 Loop)" default = true hint = "If checked using the 'Distort' function will not destroy midgets \ in the Mandelbrot mode. If unchecked, 'Distort' params will destroy \ possibilities to find midgets in that mode. Midgets are found only in \ 'Normal' and 'Turbo 1' loops." endparam float param bailout caption = "Bailout value" default = 22 min = 1.0 endparam func fn1 caption = "Function 1" default = ident() endfunc func fn2 caption = "Z Function 1" default = ident() endfunc func fn3 caption = "Z Function 2" default = ident() endfunc func fn4 caption = "C Function" default = ident() endfunc func typefn caption = "Turbo Fn" default = conj() visible = @type != 0 endfunc float param version caption = "Version" default = 1.0 visible = false endparam switch: type = "mandelbrotFantasia2" startSeed = #pixel bailout = @bailout fn1 = @fn1 fn2 = @fn2 fn3 = @fn3 fn4 = @fn4 typefn = @typefn type = @type mode = switchMode switchMode = mode center = @swcenter scale = @swscale param1 = @param1 param2 = @param2 param3 = @param3 pwr = @pwr mandy = @mandy version = @version }