aboutsummaryrefslogtreecommitdiffstats
path: root/ManyFunctions.sol
diff options
context:
space:
mode:
Diffstat (limited to 'ManyFunctions.sol')
-rw-r--r--ManyFunctions.sol1513
1 files changed, 1513 insertions, 0 deletions
diff --git a/ManyFunctions.sol b/ManyFunctions.sol
new file mode 100644
index 00000000..691d98f4
--- /dev/null
+++ b/ManyFunctions.sol
@@ -0,0 +1,1513 @@
+
+// Based on input param calls ~100 functions from ~200, random algorithm is really bad.
+contract ManyFunctions {
+
+ function start(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**78)
+ return left1(r);
+ return right1(r);
+ }
+
+ function finish(uint seed) returns (uint) {
+ return seed;
+ }
+
+ function nextRand(uint seed) returns (uint) {
+ var a = 39948330534945941795786356397633709378407037920056054402537049186942880579585;
+ return a * seed + 1;
+ }
+
+ function right100(uint seed) returns (uint) {
+ return finish(seed);
+ }
+
+ function left100(uint seed) returns (uint) {
+ return finish(nextRand(seed));
+ }
+
+ function right1(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**79)
+ return right2(r);
+ return left2(r);
+ }
+
+ function left1(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**79)
+ return left2(r);
+ return right2(r);
+ }
+
+
+ function right2(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**80)
+ return right3(r);
+ return left3(r);
+ }
+
+ function left2(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**80)
+ return left3(r);
+ return right3(r);
+ }
+
+
+ function right3(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**81)
+ return right4(r);
+ return left4(r);
+ }
+
+ function left3(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**81)
+ return left4(r);
+ return right4(r);
+ }
+
+
+ function right4(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**82)
+ return right5(r);
+ return left5(r);
+ }
+
+ function left4(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**82)
+ return left5(r);
+ return right5(r);
+ }
+
+
+ function right5(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**83)
+ return right6(r);
+ return left6(r);
+ }
+
+ function left5(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**83)
+ return left6(r);
+ return right6(r);
+ }
+
+
+ function right6(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**84)
+ return right7(r);
+ return left7(r);
+ }
+
+ function left6(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**84)
+ return left7(r);
+ return right7(r);
+ }
+
+
+ function right7(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**85)
+ return right8(r);
+ return left8(r);
+ }
+
+ function left7(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**85)
+ return left8(r);
+ return right8(r);
+ }
+
+
+ function right8(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**86)
+ return right9(r);
+ return left9(r);
+ }
+
+ function left8(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**86)
+ return left9(r);
+ return right9(r);
+ }
+
+
+ function right9(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**87)
+ return right10(r);
+ return left10(r);
+ }
+
+ function left9(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**87)
+ return left10(r);
+ return right10(r);
+ }
+
+
+ function right10(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**88)
+ return right11(r);
+ return left11(r);
+ }
+
+ function left10(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**88)
+ return left11(r);
+ return right11(r);
+ }
+
+
+ function right11(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**89)
+ return right12(r);
+ return left12(r);
+ }
+
+ function left11(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**89)
+ return left12(r);
+ return right12(r);
+ }
+
+
+ function right12(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**90)
+ return right13(r);
+ return left13(r);
+ }
+
+ function left12(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**90)
+ return left13(r);
+ return right13(r);
+ }
+
+
+ function right13(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**91)
+ return right14(r);
+ return left14(r);
+ }
+
+ function left13(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**91)
+ return left14(r);
+ return right14(r);
+ }
+
+
+ function right14(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**92)
+ return right15(r);
+ return left15(r);
+ }
+
+ function left14(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**92)
+ return left15(r);
+ return right15(r);
+ }
+
+
+ function right15(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**93)
+ return right16(r);
+ return left16(r);
+ }
+
+ function left15(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**93)
+ return left16(r);
+ return right16(r);
+ }
+
+
+ function right16(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**94)
+ return right17(r);
+ return left17(r);
+ }
+
+ function left16(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**94)
+ return left17(r);
+ return right17(r);
+ }
+
+
+ function right17(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**95)
+ return right18(r);
+ return left18(r);
+ }
+
+ function left17(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**95)
+ return left18(r);
+ return right18(r);
+ }
+
+
+ function right18(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**96)
+ return right19(r);
+ return left19(r);
+ }
+
+ function left18(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**96)
+ return left19(r);
+ return right19(r);
+ }
+
+
+ function right19(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**97)
+ return right20(r);
+ return left20(r);
+ }
+
+ function left19(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**97)
+ return left20(r);
+ return right20(r);
+ }
+
+
+ function right20(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**98)
+ return right21(r);
+ return left21(r);
+ }
+
+ function left20(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**98)
+ return left21(r);
+ return right21(r);
+ }
+
+
+ function right21(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**99)
+ return right22(r);
+ return left22(r);
+ }
+
+ function left21(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**99)
+ return left22(r);
+ return right22(r);
+ }
+
+
+ function right22(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**100)
+ return right23(r);
+ return left23(r);
+ }
+
+ function left22(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**100)
+ return left23(r);
+ return right23(r);
+ }
+
+
+ function right23(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**101)
+ return right24(r);
+ return left24(r);
+ }
+
+ function left23(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**101)
+ return left24(r);
+ return right24(r);
+ }
+
+
+ function right24(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**102)
+ return right25(r);
+ return left25(r);
+ }
+
+ function left24(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**102)
+ return left25(r);
+ return right25(r);
+ }
+
+
+ function right25(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**103)
+ return right26(r);
+ return left26(r);
+ }
+
+ function left25(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**103)
+ return left26(r);
+ return right26(r);
+ }
+
+
+ function right26(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**104)
+ return right27(r);
+ return left27(r);
+ }
+
+ function left26(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**104)
+ return left27(r);
+ return right27(r);
+ }
+
+
+ function right27(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**105)
+ return right28(r);
+ return left28(r);
+ }
+
+ function left27(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**105)
+ return left28(r);
+ return right28(r);
+ }
+
+
+ function right28(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**106)
+ return right29(r);
+ return left29(r);
+ }
+
+ function left28(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**106)
+ return left29(r);
+ return right29(r);
+ }
+
+
+ function right29(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**107)
+ return right30(r);
+ return left30(r);
+ }
+
+ function left29(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**107)
+ return left30(r);
+ return right30(r);
+ }
+
+
+ function right30(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**108)
+ return right31(r);
+ return left31(r);
+ }
+
+ function left30(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**108)
+ return left31(r);
+ return right31(r);
+ }
+
+
+ function right31(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**109)
+ return right32(r);
+ return left32(r);
+ }
+
+ function left31(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**109)
+ return left32(r);
+ return right32(r);
+ }
+
+
+ function right32(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**110)
+ return right33(r);
+ return left33(r);
+ }
+
+ function left32(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**110)
+ return left33(r);
+ return right33(r);
+ }
+
+
+ function right33(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**111)
+ return right34(r);
+ return left34(r);
+ }
+
+ function left33(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**111)
+ return left34(r);
+ return right34(r);
+ }
+
+
+ function right34(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**112)
+ return right35(r);
+ return left35(r);
+ }
+
+ function left34(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**112)
+ return left35(r);
+ return right35(r);
+ }
+
+
+ function right35(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**113)
+ return right36(r);
+ return left36(r);
+ }
+
+ function left35(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**113)
+ return left36(r);
+ return right36(r);
+ }
+
+
+ function right36(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**114)
+ return right37(r);
+ return left37(r);
+ }
+
+ function left36(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**114)
+ return left37(r);
+ return right37(r);
+ }
+
+
+ function right37(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**115)
+ return right38(r);
+ return left38(r);
+ }
+
+ function left37(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**115)
+ return left38(r);
+ return right38(r);
+ }
+
+
+ function right38(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**116)
+ return right39(r);
+ return left39(r);
+ }
+
+ function left38(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**116)
+ return left39(r);
+ return right39(r);
+ }
+
+
+ function right39(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**117)
+ return right40(r);
+ return left40(r);
+ }
+
+ function left39(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**117)
+ return left40(r);
+ return right40(r);
+ }
+
+
+ function right40(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**118)
+ return right41(r);
+ return left41(r);
+ }
+
+ function left40(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**118)
+ return left41(r);
+ return right41(r);
+ }
+
+
+ function right41(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**119)
+ return right42(r);
+ return left42(r);
+ }
+
+ function left41(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**119)
+ return left42(r);
+ return right42(r);
+ }
+
+
+ function right42(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**120)
+ return right43(r);
+ return left43(r);
+ }
+
+ function left42(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**120)
+ return left43(r);
+ return right43(r);
+ }
+
+
+ function right43(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**121)
+ return right44(r);
+ return left44(r);
+ }
+
+ function left43(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**121)
+ return left44(r);
+ return right44(r);
+ }
+
+
+ function right44(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**122)
+ return right45(r);
+ return left45(r);
+ }
+
+ function left44(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**122)
+ return left45(r);
+ return right45(r);
+ }
+
+
+ function right45(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**123)
+ return right46(r);
+ return left46(r);
+ }
+
+ function left45(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**123)
+ return left46(r);
+ return right46(r);
+ }
+
+
+ function right46(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**124)
+ return right47(r);
+ return left47(r);
+ }
+
+ function left46(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**124)
+ return left47(r);
+ return right47(r);
+ }
+
+
+ function right47(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**125)
+ return right48(r);
+ return left48(r);
+ }
+
+ function left47(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**125)
+ return left48(r);
+ return right48(r);
+ }
+
+
+ function right48(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**126)
+ return right49(r);
+ return left49(r);
+ }
+
+ function left48(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**126)
+ return left49(r);
+ return right49(r);
+ }
+
+
+ function right49(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**127)
+ return right50(r);
+ return left50(r);
+ }
+
+ function left49(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**127)
+ return left50(r);
+ return right50(r);
+ }
+
+
+ function right50(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**128)
+ return right51(r);
+ return left51(r);
+ }
+
+ function left50(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**128)
+ return left51(r);
+ return right51(r);
+ }
+
+
+ function right51(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**129)
+ return right52(r);
+ return left52(r);
+ }
+
+ function left51(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**129)
+ return left52(r);
+ return right52(r);
+ }
+
+
+ function right52(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**130)
+ return right53(r);
+ return left53(r);
+ }
+
+ function left52(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**130)
+ return left53(r);
+ return right53(r);
+ }
+
+
+ function right53(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**131)
+ return right54(r);
+ return left54(r);
+ }
+
+ function left53(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**131)
+ return left54(r);
+ return right54(r);
+ }
+
+
+ function right54(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**132)
+ return right55(r);
+ return left55(r);
+ }
+
+ function left54(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**132)
+ return left55(r);
+ return right55(r);
+ }
+
+
+ function right55(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**133)
+ return right56(r);
+ return left56(r);
+ }
+
+ function left55(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**133)
+ return left56(r);
+ return right56(r);
+ }
+
+
+ function right56(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**134)
+ return right57(r);
+ return left57(r);
+ }
+
+ function left56(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**134)
+ return left57(r);
+ return right57(r);
+ }
+
+
+ function right57(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**135)
+ return right58(r);
+ return left58(r);
+ }
+
+ function left57(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**135)
+ return left58(r);
+ return right58(r);
+ }
+
+
+ function right58(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**136)
+ return right59(r);
+ return left59(r);
+ }
+
+ function left58(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**136)
+ return left59(r);
+ return right59(r);
+ }
+
+
+ function right59(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**137)
+ return right60(r);
+ return left60(r);
+ }
+
+ function left59(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**137)
+ return left60(r);
+ return right60(r);
+ }
+
+
+ function right60(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**138)
+ return right61(r);
+ return left61(r);
+ }
+
+ function left60(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**138)
+ return left61(r);
+ return right61(r);
+ }
+
+
+ function right61(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**139)
+ return right62(r);
+ return left62(r);
+ }
+
+ function left61(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**139)
+ return left62(r);
+ return right62(r);
+ }
+
+
+ function right62(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**140)
+ return right63(r);
+ return left63(r);
+ }
+
+ function left62(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**140)
+ return left63(r);
+ return right63(r);
+ }
+
+
+ function right63(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**141)
+ return right64(r);
+ return left64(r);
+ }
+
+ function left63(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**141)
+ return left64(r);
+ return right64(r);
+ }
+
+
+ function right64(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**142)
+ return right65(r);
+ return left65(r);
+ }
+
+ function left64(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**142)
+ return left65(r);
+ return right65(r);
+ }
+
+
+ function right65(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**143)
+ return right66(r);
+ return left66(r);
+ }
+
+ function left65(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**143)
+ return left66(r);
+ return right66(r);
+ }
+
+
+ function right66(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**144)
+ return right67(r);
+ return left67(r);
+ }
+
+ function left66(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**144)
+ return left67(r);
+ return right67(r);
+ }
+
+
+ function right67(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**145)
+ return right68(r);
+ return left68(r);
+ }
+
+ function left67(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**145)
+ return left68(r);
+ return right68(r);
+ }
+
+
+ function right68(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**146)
+ return right69(r);
+ return left69(r);
+ }
+
+ function left68(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**146)
+ return left69(r);
+ return right69(r);
+ }
+
+
+ function right69(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**147)
+ return right70(r);
+ return left70(r);
+ }
+
+ function left69(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**147)
+ return left70(r);
+ return right70(r);
+ }
+
+
+ function right70(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**148)
+ return right71(r);
+ return left71(r);
+ }
+
+ function left70(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**148)
+ return left71(r);
+ return right71(r);
+ }
+
+
+ function right71(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**149)
+ return right72(r);
+ return left72(r);
+ }
+
+ function left71(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**149)
+ return left72(r);
+ return right72(r);
+ }
+
+
+ function right72(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**150)
+ return right73(r);
+ return left73(r);
+ }
+
+ function left72(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**150)
+ return left73(r);
+ return right73(r);
+ }
+
+
+ function right73(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**151)
+ return right74(r);
+ return left74(r);
+ }
+
+ function left73(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**151)
+ return left74(r);
+ return right74(r);
+ }
+
+
+ function right74(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**152)
+ return right75(r);
+ return left75(r);
+ }
+
+ function left74(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**152)
+ return left75(r);
+ return right75(r);
+ }
+
+
+ function right75(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**153)
+ return right76(r);
+ return left76(r);
+ }
+
+ function left75(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**153)
+ return left76(r);
+ return right76(r);
+ }
+
+
+ function right76(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**154)
+ return right77(r);
+ return left77(r);
+ }
+
+ function left76(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**154)
+ return left77(r);
+ return right77(r);
+ }
+
+
+ function right77(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**155)
+ return right78(r);
+ return left78(r);
+ }
+
+ function left77(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**155)
+ return left78(r);
+ return right78(r);
+ }
+
+
+ function right78(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**156)
+ return right79(r);
+ return left79(r);
+ }
+
+ function left78(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**156)
+ return left79(r);
+ return right79(r);
+ }
+
+
+ function right79(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**157)
+ return right80(r);
+ return left80(r);
+ }
+
+ function left79(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**157)
+ return left80(r);
+ return right80(r);
+ }
+
+
+ function right80(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**158)
+ return right81(r);
+ return left81(r);
+ }
+
+ function left80(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**158)
+ return left81(r);
+ return right81(r);
+ }
+
+
+ function right81(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**159)
+ return right82(r);
+ return left82(r);
+ }
+
+ function left81(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**159)
+ return left82(r);
+ return right82(r);
+ }
+
+
+ function right82(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**160)
+ return right83(r);
+ return left83(r);
+ }
+
+ function left82(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**160)
+ return left83(r);
+ return right83(r);
+ }
+
+
+ function right83(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**161)
+ return right84(r);
+ return left84(r);
+ }
+
+ function left83(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**161)
+ return left84(r);
+ return right84(r);
+ }
+
+
+ function right84(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**162)
+ return right85(r);
+ return left85(r);
+ }
+
+ function left84(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**162)
+ return left85(r);
+ return right85(r);
+ }
+
+
+ function right85(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**163)
+ return right86(r);
+ return left86(r);
+ }
+
+ function left85(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**163)
+ return left86(r);
+ return right86(r);
+ }
+
+
+ function right86(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**164)
+ return right87(r);
+ return left87(r);
+ }
+
+ function left86(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**164)
+ return left87(r);
+ return right87(r);
+ }
+
+
+ function right87(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**165)
+ return right88(r);
+ return left88(r);
+ }
+
+ function left87(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**165)
+ return left88(r);
+ return right88(r);
+ }
+
+
+ function right88(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**166)
+ return right89(r);
+ return left89(r);
+ }
+
+ function left88(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**166)
+ return left89(r);
+ return right89(r);
+ }
+
+
+ function right89(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**167)
+ return right90(r);
+ return left90(r);
+ }
+
+ function left89(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**167)
+ return left90(r);
+ return right90(r);
+ }
+
+
+ function right90(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**168)
+ return right91(r);
+ return left91(r);
+ }
+
+ function left90(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**168)
+ return left91(r);
+ return right91(r);
+ }
+
+
+ function right91(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**169)
+ return right92(r);
+ return left92(r);
+ }
+
+ function left91(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**169)
+ return left92(r);
+ return right92(r);
+ }
+
+
+ function right92(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**170)
+ return right93(r);
+ return left93(r);
+ }
+
+ function left92(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**170)
+ return left93(r);
+ return right93(r);
+ }
+
+
+ function right93(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**171)
+ return right94(r);
+ return left94(r);
+ }
+
+ function left93(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**171)
+ return left94(r);
+ return right94(r);
+ }
+
+
+ function right94(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**172)
+ return right95(r);
+ return left95(r);
+ }
+
+ function left94(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**172)
+ return left95(r);
+ return right95(r);
+ }
+
+
+ function right95(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**173)
+ return right96(r);
+ return left96(r);
+ }
+
+ function left95(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**173)
+ return left96(r);
+ return right96(r);
+ }
+
+
+ function right96(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**174)
+ return right97(r);
+ return left97(r);
+ }
+
+ function left96(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**174)
+ return left97(r);
+ return right97(r);
+ }
+
+
+ function right97(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**175)
+ return right98(r);
+ return left98(r);
+ }
+
+ function left97(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**175)
+ return left98(r);
+ return right98(r);
+ }
+
+
+ function right98(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**176)
+ return right99(r);
+ return left99(r);
+ }
+
+ function left98(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**176)
+ return left99(r);
+ return right99(r);
+ }
+
+
+ function right99(uint seed) returns (uint) {
+ var r = nextRand(seed);
+ if (r >= 2**177)
+ return right100(r);
+ return left100(r);
+ }
+
+ function left99(uint seed) returns (uint) {
+ var r = nextRand(nextRand(seed));
+ if (r >= 2**177)
+ return left100(r);
+ return right100(r);
+ }
+
+} \ No newline at end of file