class Array
def to_int
self.object_id
end
CallWndProc = Win32API.new('user32.dll', 'CallWindowProc', 'PLLLL', 'L')
CodeSeed = [85,137,229,139,77,8,3,77,12,187,1,0,0,0,139,69,16,247,227,
3,69,20,137,195,193,232,16,37,255,127,0,0,226,236,137,216,201,
194,16,0].pack('C*')
@@seed = CallWndProc.call(CodeSeed, rand(41), 10, 214013, 2531011)
CodeShuffle = [85,137,229,139,93,8,139,76,27,8,131,249,1,118,55,139,116,27,
16,73,141,60,142,139,93,12,139,69,16,247,227,3,69,20,137,195,193,232,16,
37,255,127,0,0,49,210,65,247,241,73,193,226,2,1,242,255,50,255,55,143,2,
143,7,131,239,4,226,214,137,216,201,194,16,0].pack('C*')
def shuffle!
@@seed = CallWndProc.call(CodeShuffle, self, @@seed, 214013, 2531011)
self
end
def shuffle
(self + []).shuffle!
end
def sample
self[rand(self.size)]
end
CodeSamples = [85,137,229,139,69,8,139,92,0,8,139,68,0,16,137,69,8,141,116,
152,252,139,69,12,139,76,0,8,81,139,68,0,16,141,124,136,252,184,253,67,3,
0,247,101,20,5,160,51,130,1,137,69,20,193,232,16,37,255,127,0,0,49,210,
247,243,75,193,226,2,3,85,8,255,50,255,54,143,2,143,6,137,23,131,239,4,
131,238,4,226,203,89,131,198,4,139,6,131,199,4,139,23,137,7,255,50,255,
54,143,2,143,6,226,234,139,69,20,201,194,16,0].pack('C*')
def samples(n)
len = self.size
return self[rand(len), 1] if n < 2
n = len if n > len
return self.shuffle if n == len
result = Array.new(n)
@@seed = CallWndProc.call(CodeSamples, self, result, 0, @@seed)
result
end
end
class Array
def to_int
self.object_id
end
CallWndProc = Win32API.new('user32.dll', 'CallWindowProc', 'PLLLL', 'L')
CodeSeed = [85,137,229,139,77,8,3,77,12,187,1,0,0,0,139,69,16,247,227,
3,69,20,137,195,193,232,16,37,255,127,0,0,226,236,137,216,201,
194,16,0].pack('C*')
@@seed = CallWndProc.call(CodeSeed, rand(41), 10, 214013, 2531011)
CodeShuffle = [85,137,229,139,93,8,139,76,27,8,131,249,1,118,55,139,116,27,
16,73,141,60,142,139,93,12,139,69,16,247,227,3,69,20,137,195,193,232,16,
37,255,127,0,0,49,210,65,247,241,73,193,226,2,1,242,255,50,255,55,143,2,
143,7,131,239,4,226,214,137,216,201,194,16,0].pack('C*')
def shuffle!
@@seed = CallWndProc.call(CodeShuffle, self, @@seed, 214013, 2531011)
self
end
def shuffle
(self + []).shuffle!
end
def sample
self[rand(self.size)]
end
CodeSamples = [85,137,229,139,69,8,139,92,0,8,139,68,0,16,137,69,8,141,116,
152,252,139,69,12,139,76,0,8,81,139,68,0,16,141,124,136,252,184,253,67,3,
0,247,101,20,5,160,51,130,1,137,69,20,193,232,16,37,255,127,0,0,49,210,
247,243,75,193,226,2,3,85,8,255,50,255,54,143,2,143,6,137,23,131,239,4,
131,238,4,226,203,89,131,198,4,139,6,131,199,4,139,23,137,7,255,50,255,
54,143,2,143,6,226,234,139,69,20,201,194,16,0].pack('C*')
def samples(n)
len = self.size
return self[rand(len), 1] if n < 2
n = len if n > len
return self.shuffle if n == len
result = Array.new(n)
@@seed = CallWndProc.call(CodeSamples, self, result, 0, @@seed)
result
end
end