/Languages/IronPython/Tests/test_slice.py
Python | 3157 lines | 3076 code | 57 blank | 24 comment | 3 complexity | 43d174209dba8f42ba1ff29bf1c5ac1c MD5 | raw file
Possible License(s): CPL-1.0, BSD-3-Clause, ISC, GPL-2.0, MPL-2.0-no-copyleft-exception
- #####################################################################################
- #
- # Copyright (c) Microsoft Corporation. All rights reserved.
- #
- # This source code is subject to terms and conditions of the Apache License, Version 2.0. A
- # copy of the license can be found in the License.html file at the root of this distribution. If
- # you cannot locate the Apache License, Version 2.0, please send an email to
- # ironpy@microsoft.com. By using this source code in any fashion, you are agreeing to be bound
- # by the terms of the Apache License, Version 2.0.
- #
- # You must not remove this notice, or any other, from this software.
- #
- #
- #####################################################################################
- from iptest.assert_util import *
- x="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
- def test_string():
- Assert( x[10] == 'k')
- Assert( x[20] == 'u')
- Assert( x[30] == 'E')
- Assert( x[-10] == 'Q')
- Assert(x[-3] == 'X')
- Assert(x[14:20] == 'opqrst')
- Assert(x[20:14] == '')
- Assert(x[-30:-5] == 'wxyzABCDEFGHIJKLMNOPQRSTU')
- Assert(x[-5:-30] == '')
- Assert(x[3:40:2] == 'dfhjlnprtvxzBDFHJLN')
- Assert(x[40:3:2] == '')
- Assert(x[3:40:-2] == '')
- Assert(x[40:3:-2] == 'OMKIGECAywusqomkige')
- Assert(x[-40:-4:-2] == '')
- Assert(x[-4:-40:-2] == 'WUSQOMKIGECAywusqo')
- Assert(x[-40:-4:2] == 'moqsuwyACEGIKMOQSU')
- Assert(x[-4:-40:2] == '')
- Assert(x[-40:-5:-2] == '')
- Assert(x[-5:-40:-2] == 'VTRPNLJHFDBzxvtrpn')
- Assert(x[-40:-5:2] == 'moqsuwyACEGIKMOQSU')
- Assert(x[-5:-40:2] == '')
- Assert(x[-40:-6:-2] == '')
- Assert(x[-6:-40:-2] == 'USQOMKIGECAywusqo')
- Assert(x[-40:-6:2] == 'moqsuwyACEGIKMOQS')
- Assert(x[-6:-40:2] == '')
- Assert(x[-49:-5:-3] == '')
- Assert(x[-5:-49:-3] == 'VSPMJGDAxurolif')
- Assert(x[-49:-5:3] == 'dgjmpsvyBEHKNQT')
- Assert(x[-5:-49:3] == '')
- Assert(x[-50:-5:-3] == '')
- Assert(x[-5:-50:-3] == 'VSPMJGDAxurolif')
- Assert(x[-50:-5:3] == 'cfiloruxADGJMPS')
- Assert(x[-5:-50:3] == '')
- Assert(x[-51:-5:-3] == '')
- Assert(x[-5:-51:-3] == 'VSPMJGDAxurolifc')
- Assert(x[-51:-5:3] == 'behknqtwzCFILORU')
- Assert(x[-5:-51:3] == '')
- def test_list_tuple():
- # check for good behaviour of slices on lists in general
- l=list(x)
- Assert( l[10] == 'k')
- Assert( l[20] == 'u')
- Assert( l[30] == 'E')
- Assert( l[-10] == 'Q')
- Assert(l[-3] == 'X')
- Assert(l[14:20] == list('opqrst'))
- Assert(l[20:14] == [])
- Assert(l[-51:-5:-3] == [])
- Assert(l[-5:-51:3] == [])
- Assert((1, 2, 3, 4, 5)[1:-1][::-1] == (4, 3, 2))
- Assert([1, 2, 3, 4, 5][1:-1][::-1] == [4, 3, 2])
- Assert((9, 7, 5, 3) == (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)[1:-1][::-2])
- Assert([9, 7, 5, 3] == [1, 2, 3, 4, 5, 6, 7, 8, 9, 0][1:-1][::-2])
- Assert((2, 4, 6, 8) == (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)[1:-1][::2])
- Assert([2, 4, 6, 8] == [1, 2, 3, 4, 5, 6, 7, 8, 9, 0][1:-1][::2])
- Assert((2, 5, 8) == (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)[1:-1][::3])
- Assert([2, 5, 8] == [1, 2, 3, 4, 5, 6, 7, 8, 9, 0][1:-1][::3])
-
- def test_assign():
- l = list(x)
- l[2:50] = "10"
- Assert(l == list("ab10YZ"))
- l = list(x)
- l[2:50:2] = "~!@#$%^&*()-=_+[]{}|;:/?"
- Assert(l == list("ab~d!f@h#j$l%n^p&r*t(v)x-z=B_D+F[H]J{L}N|P;R:T/V?XYZ"))
- def test_negative():
- l = range(10)
- def f1(): l[::3] = [1]
- def f2(): l[::3] = range(5)
- def f3(): l[::3] = (1,)
- def f4(): l[::3] = (1, 2, 3, 4, 5, 6)
-
- for f in (f1, f2, f3, f4):
- AssertError(ValueError, f)
- def test__new__():
- AreEqual(slice(3) == slice(0, 3, 1), False)
- AreEqual(slice(3) == slice(None, 3, None), True)
- AreEqual(slice(3) == 3, False)
- AreEqual(range(10)[slice(None,None,2)], [0,2,4,6,8])
- def test_coverage():
- # ToString
- AreEqual(str(slice(1,2,3)), 'slice(1, 2, 3)')
-
- # ...
- #***** Copying from 'IndiceTest' *****
- def t(i,j,k,l,r) :
- rr = slice(i,j,k).indices(l)
- Assert(rr == r, "slice(" + str(i) + "," + str(j) + "," + str(k) + ").indices(" + str(l) + ") != " + str(r) + ": " + str(rr))
- def a():
- t(None,None,-5,-100,(-101, -1, -5))
- t(None,None,-5,-15,(-16, -1, -5))
- t(None,None,-5,-3,(-4, -1, -5))
- t(None,None,-5,0,(-1, -1, -5))
- t(None,None,-5,1,(0, -1, -5))
- t(None,None,-5,5,(4, -1, -5))
- t(None,None,-5,10,(9, -1, -5))
- t(None,None,-5,100,(99, -1, -5))
- t(None,None,-3,-100,(-101, -1, -3))
- t(None,None,-3,-15,(-16, -1, -3))
- t(None,None,-3,-3,(-4, -1, -3))
- t(None,None,-3,0,(-1, -1, -3))
- t(None,None,-3,1,(0, -1, -3))
- t(None,None,-3,5,(4, -1, -3))
- t(None,None,-3,10,(9, -1, -3))
- t(None,None,-3,100,(99, -1, -3))
- t(None,None,-1,-100,(-101, -1, -1))
- t(None,None,-1,-15,(-16, -1, -1))
- t(None,None,-1,-3,(-4, -1, -1))
- t(None,None,-1,0,(-1, -1, -1))
- t(None,None,-1,1,(0, -1, -1))
- t(None,None,-1,5,(4, -1, -1))
- t(None,None,-1,10,(9, -1, -1))
- t(None,None,-1,100,(99, -1, -1))
- t(None,None,1,-100,(0, -100, 1))
- t(None,None,1,-15,(0, -15, 1))
- t(None,None,1,-3,(0, -3, 1))
- t(None,None,1,0,(0, 0, 1))
- t(None,None,1,1,(0, 1, 1))
- t(None,None,1,5,(0, 5, 1))
- t(None,None,1,10,(0, 10, 1))
- t(None,None,1,100,(0, 100, 1))
- t(None,None,5,-100,(0, -100, 5))
- t(None,None,5,-15,(0, -15, 5))
- t(None,None,5,-3,(0, -3, 5))
- t(None,None,5,0,(0, 0, 5))
- t(None,None,5,1,(0, 1, 5))
- t(None,None,5,5,(0, 5, 5))
- t(None,None,5,10,(0, 10, 5))
- t(None,None,5,100,(0, 100, 5))
- t(None,None,20,-100,(0, -100, 20))
- t(None,None,20,-15,(0, -15, 20))
- t(None,None,20,-3,(0, -3, 20))
- t(None,None,20,0,(0, 0, 20))
- t(None,None,20,1,(0, 1, 20))
- t(None,None,20,5,(0, 5, 20))
- t(None,None,20,10,(0, 10, 20))
- t(None,None,20,100,(0, 100, 20))
- t(None,-7,-5,-100,(-101, -101, -5))
- t(None,-7,-5,-15,(-16, -16, -5))
- t(None,-7,-5,-3,(-4, -4, -5))
- t(None,-7,-5,0,(-1, -1, -5))
- t(None,-7,-5,1,(0, -1, -5))
- t(None,-7,-5,5,(4, -1, -5))
- t(None,-7,-5,10,(9, 3, -5))
- t(None,-7,-5,100,(99, 93, -5))
- t(None,-7,-3,-100,(-101, -101, -3))
- t(None,-7,-3,-15,(-16, -16, -3))
- t(None,-7,-3,-3,(-4, -4, -3))
- t(None,-7,-3,0,(-1, -1, -3))
- t(None,-7,-3,1,(0, -1, -3))
- t(None,-7,-3,5,(4, -1, -3))
- t(None,-7,-3,10,(9, 3, -3))
- t(None,-7,-3,100,(99, 93, -3))
- t(None,-7,-1,-100,(-101, -101, -1))
- t(None,-7,-1,-15,(-16, -16, -1))
- t(None,-7,-1,-3,(-4, -4, -1))
- t(None,-7,-1,0,(-1, -1, -1))
- t(None,-7,-1,1,(0, -1, -1))
- t(None,-7,-1,5,(4, -1, -1))
- t(None,-7,-1,10,(9, 3, -1))
- t(None,-7,-1,100,(99, 93, -1))
- t(None,-7,1,-100,(0, -100, 1))
- t(None,-7,1,-15,(0, -15, 1))
- t(None,-7,1,-3,(0, -3, 1))
- t(None,-7,1,0,(0, 0, 1))
- t(None,-7,1,1,(0, 0, 1))
- t(None,-7,1,5,(0, 0, 1))
- t(None,-7,1,10,(0, 3, 1))
- t(None,-7,1,100,(0, 93, 1))
- t(None,-7,5,-100,(0, -100, 5))
- t(None,-7,5,-15,(0, -15, 5))
- t(None,-7,5,-3,(0, -3, 5))
- t(None,-7,5,0,(0, 0, 5))
- t(None,-7,5,1,(0, 0, 5))
- t(None,-7,5,5,(0, 0, 5))
- t(None,-7,5,10,(0, 3, 5))
- t(None,-7,5,100,(0, 93, 5))
- t(None,-7,20,-100,(0, -100, 20))
- t(None,-7,20,-15,(0, -15, 20))
- t(None,-7,20,-3,(0, -3, 20))
- t(None,-7,20,0,(0, 0, 20))
- t(None,-7,20,1,(0, 0, 20))
- t(None,-7,20,5,(0, 0, 20))
- t(None,-7,20,10,(0, 3, 20))
- t(None,-7,20,100,(0, 93, 20))
- t(None,-2,-5,-100,(-101, -101, -5))
- t(None,-2,-5,-15,(-16, -16, -5))
- t(None,-2,-5,-3,(-4, -4, -5))
- t(None,-2,-5,0,(-1, -1, -5))
- t(None,-2,-5,1,(0, -1, -5))
- t(None,-2,-5,5,(4, 3, -5))
- t(None,-2,-5,10,(9, 8, -5))
- t(None,-2,-5,100,(99, 98, -5))
- t(None,-2,-3,-100,(-101, -101, -3))
- t(None,-2,-3,-15,(-16, -16, -3))
- t(None,-2,-3,-3,(-4, -4, -3))
- t(None,-2,-3,0,(-1, -1, -3))
- t(None,-2,-3,1,(0, -1, -3))
- t(None,-2,-3,5,(4, 3, -3))
- t(None,-2,-3,10,(9, 8, -3))
- t(None,-2,-3,100,(99, 98, -3))
- t(None,-2,-1,-100,(-101, -101, -1))
- t(None,-2,-1,-15,(-16, -16, -1))
- t(None,-2,-1,-3,(-4, -4, -1))
- t(None,-2,-1,0,(-1, -1, -1))
- t(None,-2,-1,1,(0, -1, -1))
- t(None,-2,-1,5,(4, 3, -1))
- t(None,-2,-1,10,(9, 8, -1))
- t(None,-2,-1,100,(99, 98, -1))
- t(None,-2,1,-100,(0, -100, 1))
- t(None,-2,1,-15,(0, -15, 1))
- t(None,-2,1,-3,(0, -3, 1))
- t(None,-2,1,0,(0, 0, 1))
- t(None,-2,1,1,(0, 0, 1))
- t(None,-2,1,5,(0, 3, 1))
- t(None,-2,1,10,(0, 8, 1))
- t(None,-2,1,100,(0, 98, 1))
- t(None,-2,5,-100,(0, -100, 5))
- t(None,-2,5,-15,(0, -15, 5))
- t(None,-2,5,-3,(0, -3, 5))
- t(None,-2,5,0,(0, 0, 5))
- t(None,-2,5,1,(0, 0, 5))
- t(None,-2,5,5,(0, 3, 5))
- t(None,-2,5,10,(0, 8, 5))
- t(None,-2,5,100,(0, 98, 5))
- t(None,-2,20,-100,(0, -100, 20))
- t(None,-2,20,-15,(0, -15, 20))
- t(None,-2,20,-3,(0, -3, 20))
- t(None,-2,20,0,(0, 0, 20))
- t(None,-2,20,1,(0, 0, 20))
- t(None,-2,20,5,(0, 3, 20))
- t(None,-2,20,10,(0, 8, 20))
- t(None,-2,20,100,(0, 98, 20))
- t(None,0,-5,-100,(-101, -101, -5))
- t(None,0,-5,-15,(-16, -16, -5))
- t(None,0,-5,-3,(-4, -4, -5))
- t(None,0,-5,0,(-1, -1, -5))
- t(None,0,-5,1,(0, 0, -5))
- t(None,0,-5,5,(4, 0, -5))
- t(None,0,-5,10,(9, 0, -5))
- t(None,0,-5,100,(99, 0, -5))
- t(None,0,-3,-100,(-101, -101, -3))
- t(None,0,-3,-15,(-16, -16, -3))
- t(None,0,-3,-3,(-4, -4, -3))
- t(None,0,-3,0,(-1, -1, -3))
- t(None,0,-3,1,(0, 0, -3))
- t(None,0,-3,5,(4, 0, -3))
- t(None,0,-3,10,(9, 0, -3))
- t(None,0,-3,100,(99, 0, -3))
- t(None,0,-1,-100,(-101, -101, -1))
- t(None,0,-1,-15,(-16, -16, -1))
- t(None,0,-1,-3,(-4, -4, -1))
- t(None,0,-1,0,(-1, -1, -1))
- t(None,0,-1,1,(0, 0, -1))
- t(None,0,-1,5,(4, 0, -1))
- t(None,0,-1,10,(9, 0, -1))
- t(None,0,-1,100,(99, 0, -1))
- t(None,0,1,-100,(0, -100, 1))
- t(None,0,1,-15,(0, -15, 1))
- t(None,0,1,-3,(0, -3, 1))
- t(None,0,1,0,(0, 0, 1))
- t(None,0,1,1,(0, 0, 1))
- t(None,0,1,5,(0, 0, 1))
- t(None,0,1,10,(0, 0, 1))
- t(None,0,1,100,(0, 0, 1))
- t(None,0,5,-100,(0, -100, 5))
- t(None,0,5,-15,(0, -15, 5))
- t(None,0,5,-3,(0, -3, 5))
- t(None,0,5,0,(0, 0, 5))
- t(None,0,5,1,(0, 0, 5))
- t(None,0,5,5,(0, 0, 5))
- t(None,0,5,10,(0, 0, 5))
- t(None,0,5,100,(0, 0, 5))
- t(None,0,20,-100,(0, -100, 20))
- t(None,0,20,-15,(0, -15, 20))
- t(None,0,20,-3,(0, -3, 20))
- t(None,0,20,0,(0, 0, 20))
- t(None,0,20,1,(0, 0, 20))
- t(None,0,20,5,(0, 0, 20))
- t(None,0,20,10,(0, 0, 20))
- t(None,0,20,100,(0, 0, 20))
- t(None,1,-5,-100,(-101, -101, -5))
- t(None,1,-5,-15,(-16, -16, -5))
- t(None,1,-5,-3,(-4, -4, -5))
- t(None,1,-5,0,(-1, -1, -5))
- t(None,1,-5,1,(0, 0, -5))
- t(None,1,-5,5,(4, 1, -5))
- t(None,1,-5,10,(9, 1, -5))
- t(None,1,-5,100,(99, 1, -5))
- t(None,1,-3,-100,(-101, -101, -3))
- t(None,1,-3,-15,(-16, -16, -3))
- t(None,1,-3,-3,(-4, -4, -3))
- t(None,1,-3,0,(-1, -1, -3))
- t(None,1,-3,1,(0, 0, -3))
- t(None,1,-3,5,(4, 1, -3))
- t(None,1,-3,10,(9, 1, -3))
- t(None,1,-3,100,(99, 1, -3))
- t(None,1,-1,-100,(-101, -101, -1))
- t(None,1,-1,-15,(-16, -16, -1))
- t(None,1,-1,-3,(-4, -4, -1))
- t(None,1,-1,0,(-1, -1, -1))
- t(None,1,-1,1,(0, 0, -1))
- t(None,1,-1,5,(4, 1, -1))
- t(None,1,-1,10,(9, 1, -1))
- t(None,1,-1,100,(99, 1, -1))
- t(None,1,1,-100,(0, -100, 1))
- t(None,1,1,-15,(0, -15, 1))
- t(None,1,1,-3,(0, -3, 1))
- t(None,1,1,0,(0, 0, 1))
- t(None,1,1,1,(0, 1, 1))
- t(None,1,1,5,(0, 1, 1))
- t(None,1,1,10,(0, 1, 1))
- t(None,1,1,100,(0, 1, 1))
- t(None,1,5,-100,(0, -100, 5))
- t(None,1,5,-15,(0, -15, 5))
- t(None,1,5,-3,(0, -3, 5))
- t(None,1,5,0,(0, 0, 5))
- t(None,1,5,1,(0, 1, 5))
- t(None,1,5,5,(0, 1, 5))
- t(None,1,5,10,(0, 1, 5))
- t(None,1,5,100,(0, 1, 5))
- t(None,1,20,-100,(0, -100, 20))
- t(None,1,20,-15,(0, -15, 20))
- t(None,1,20,-3,(0, -3, 20))
- t(None,1,20,0,(0, 0, 20))
- t(None,1,20,1,(0, 1, 20))
- t(None,1,20,5,(0, 1, 20))
- t(None,1,20,10,(0, 1, 20))
- t(None,1,20,100,(0, 1, 20))
- t(None,6,-5,-100,(-101, -101, -5))
- t(None,6,-5,-15,(-16, -16, -5))
- t(None,6,-5,-3,(-4, -4, -5))
- t(None,6,-5,0,(-1, -1, -5))
- t(None,6,-5,1,(0, 0, -5))
- t(None,6,-5,5,(4, 4, -5))
- t(None,6,-5,10,(9, 6, -5))
- t(None,6,-5,100,(99, 6, -5))
- t(None,6,-3,-100,(-101, -101, -3))
- t(None,6,-3,-15,(-16, -16, -3))
- t(None,6,-3,-3,(-4, -4, -3))
- t(None,6,-3,0,(-1, -1, -3))
- t(None,6,-3,1,(0, 0, -3))
- t(None,6,-3,5,(4, 4, -3))
- t(None,6,-3,10,(9, 6, -3))
- t(None,6,-3,100,(99, 6, -3))
- t(None,6,-1,-100,(-101, -101, -1))
- t(None,6,-1,-15,(-16, -16, -1))
- t(None,6,-1,-3,(-4, -4, -1))
- t(None,6,-1,0,(-1, -1, -1))
- t(None,6,-1,1,(0, 0, -1))
- t(None,6,-1,5,(4, 4, -1))
- t(None,6,-1,10,(9, 6, -1))
- t(None,6,-1,100,(99, 6, -1))
- t(None,6,1,-100,(0, -100, 1))
- t(None,6,1,-15,(0, -15, 1))
- t(None,6,1,-3,(0, -3, 1))
- t(None,6,1,0,(0, 0, 1))
- t(None,6,1,1,(0, 1, 1))
- t(None,6,1,5,(0, 5, 1))
- t(None,6,1,10,(0, 6, 1))
- t(None,6,1,100,(0, 6, 1))
- t(None,6,5,-100,(0, -100, 5))
- t(None,6,5,-15,(0, -15, 5))
- t(None,6,5,-3,(0, -3, 5))
- t(None,6,5,0,(0, 0, 5))
- t(None,6,5,1,(0, 1, 5))
- t(None,6,5,5,(0, 5, 5))
- t(None,6,5,10,(0, 6, 5))
- t(None,6,5,100,(0, 6, 5))
- t(None,6,20,-100,(0, -100, 20))
- t(None,6,20,-15,(0, -15, 20))
- t(None,6,20,-3,(0, -3, 20))
- t(None,6,20,0,(0, 0, 20))
- t(None,6,20,1,(0, 1, 20))
- t(None,6,20,5,(0, 5, 20))
- t(None,6,20,10,(0, 6, 20))
- t(None,6,20,100,(0, 6, 20))
- t(None,10,-5,-100,(-101, -101, -5))
- t(None,10,-5,-15,(-16, -16, -5))
- t(None,10,-5,-3,(-4, -4, -5))
- t(None,10,-5,0,(-1, -1, -5))
- t(None,10,-5,1,(0, 0, -5))
- t(None,10,-5,5,(4, 4, -5))
- t(None,10,-5,10,(9, 9, -5))
- t(None,10,-5,100,(99, 10, -5))
- t(None,10,-3,-100,(-101, -101, -3))
- t(None,10,-3,-15,(-16, -16, -3))
- t(None,10,-3,-3,(-4, -4, -3))
- t(None,10,-3,0,(-1, -1, -3))
- t(None,10,-3,1,(0, 0, -3))
- t(None,10,-3,5,(4, 4, -3))
- t(None,10,-3,10,(9, 9, -3))
- t(None,10,-3,100,(99, 10, -3))
- t(None,10,-1,-100,(-101, -101, -1))
- t(None,10,-1,-15,(-16, -16, -1))
- t(None,10,-1,-3,(-4, -4, -1))
- t(None,10,-1,0,(-1, -1, -1))
- t(None,10,-1,1,(0, 0, -1))
- t(None,10,-1,5,(4, 4, -1))
- t(None,10,-1,10,(9, 9, -1))
- t(None,10,-1,100,(99, 10, -1))
- t(None,10,1,-100,(0, -100, 1))
- t(None,10,1,-15,(0, -15, 1))
- t(None,10,1,-3,(0, -3, 1))
- t(None,10,1,0,(0, 0, 1))
- t(None,10,1,1,(0, 1, 1))
- t(None,10,1,5,(0, 5, 1))
- t(None,10,1,10,(0, 10, 1))
- t(None,10,1,100,(0, 10, 1))
- t(None,10,5,-100,(0, -100, 5))
- t(None,10,5,-15,(0, -15, 5))
- t(None,10,5,-3,(0, -3, 5))
- t(None,10,5,0,(0, 0, 5))
- t(None,10,5,1,(0, 1, 5))
- t(None,10,5,5,(0, 5, 5))
- t(None,10,5,10,(0, 10, 5))
- t(None,10,5,100,(0, 10, 5))
- t(None,10,20,-100,(0, -100, 20))
- t(None,10,20,-15,(0, -15, 20))
- t(None,10,20,-3,(0, -3, 20))
- t(None,10,20,0,(0, 0, 20))
- t(None,10,20,1,(0, 1, 20))
- t(None,10,20,5,(0, 5, 20))
- t(None,10,20,10,(0, 10, 20))
- t(None,10,20,100,(0, 10, 20))
- t(-7,None,-5,-100,(-101, -1, -5))
- t(-7,None,-5,-15,(-16, -1, -5))
- t(-7,None,-5,-3,(-4, -1, -5))
- t(-7,None,-5,0,(-1, -1, -5))
- t(-7,None,-5,1,(-1, -1, -5))
- t(-7,None,-5,5,(-1, -1, -5))
- t(-7,None,-5,10,(3, -1, -5))
- t(-7,None,-5,100,(93, -1, -5))
- t(-7,None,-3,-100,(-101, -1, -3))
- t(-7,None,-3,-15,(-16, -1, -3))
- t(-7,None,-3,-3,(-4, -1, -3))
- t(-7,None,-3,0,(-1, -1, -3))
- t(-7,None,-3,1,(-1, -1, -3))
- t(-7,None,-3,5,(-1, -1, -3))
- t(-7,None,-3,10,(3, -1, -3))
- t(-7,None,-3,100,(93, -1, -3))
- t(-7,None,-1,-100,(-101, -1, -1))
- t(-7,None,-1,-15,(-16, -1, -1))
- t(-7,None,-1,-3,(-4, -1, -1))
- t(-7,None,-1,0,(-1, -1, -1))
- t(-7,None,-1,1,(-1, -1, -1))
- t(-7,None,-1,5,(-1, -1, -1))
- t(-7,None,-1,10,(3, -1, -1))
- t(-7,None,-1,100,(93, -1, -1))
- t(-7,None,1,-100,(-100, -100, 1))
- t(-7,None,1,-15,(-15, -15, 1))
- t(-7,None,1,-3,(-3, -3, 1))
- t(-7,None,1,0,(0, 0, 1))
- t(-7,None,1,1,(0, 1, 1))
- t(-7,None,1,5,(0, 5, 1))
- t(-7,None,1,10,(3, 10, 1))
- t(-7,None,1,100,(93, 100, 1))
- t(-7,None,5,-100,(-100, -100, 5))
- t(-7,None,5,-15,(-15, -15, 5))
- t(-7,None,5,-3,(-3, -3, 5))
- t(-7,None,5,0,(0, 0, 5))
- t(-7,None,5,1,(0, 1, 5))
- t(-7,None,5,5,(0, 5, 5))
- t(-7,None,5,10,(3, 10, 5))
- t(-7,None,5,100,(93, 100, 5))
- t(-7,None,20,-100,(-100, -100, 20))
- t(-7,None,20,-15,(-15, -15, 20))
- t(-7,None,20,-3,(-3, -3, 20))
- t(-7,None,20,0,(0, 0, 20))
- t(-7,None,20,1,(0, 1, 20))
- t(-7,None,20,5,(0, 5, 20))
- t(-7,None,20,10,(3, 10, 20))
- t(-7,None,20,100,(93, 100, 20))
- t(-7,-7,-5,-100,(-101, -101, -5))
- t(-7,-7,-5,-15,(-16, -16, -5))
- t(-7,-7,-5,-3,(-4, -4, -5))
- t(-7,-7,-5,0,(-1, -1, -5))
- t(-7,-7,-5,1,(-1, -1, -5))
- t(-7,-7,-5,5,(-1, -1, -5))
- t(-7,-7,-5,10,(3, 3, -5))
- t(-7,-7,-5,100,(93, 93, -5))
- t(-7,-7,-3,-100,(-101, -101, -3))
- t(-7,-7,-3,-15,(-16, -16, -3))
- t(-7,-7,-3,-3,(-4, -4, -3))
- t(-7,-7,-3,0,(-1, -1, -3))
- t(-7,-7,-3,1,(-1, -1, -3))
- t(-7,-7,-3,5,(-1, -1, -3))
- t(-7,-7,-3,10,(3, 3, -3))
- t(-7,-7,-3,100,(93, 93, -3))
- t(-7,-7,-1,-100,(-101, -101, -1))
- t(-7,-7,-1,-15,(-16, -16, -1))
- t(-7,-7,-1,-3,(-4, -4, -1))
- t(-7,-7,-1,0,(-1, -1, -1))
- t(-7,-7,-1,1,(-1, -1, -1))
- t(-7,-7,-1,5,(-1, -1, -1))
- t(-7,-7,-1,10,(3, 3, -1))
- t(-7,-7,-1,100,(93, 93, -1))
- t(-7,-7,1,-100,(-100, -100, 1))
- t(-7,-7,1,-15,(-15, -15, 1))
- t(-7,-7,1,-3,(-3, -3, 1))
- t(-7,-7,1,0,(0, 0, 1))
- t(-7,-7,1,1,(0, 0, 1))
- t(-7,-7,1,5,(0, 0, 1))
- t(-7,-7,1,10,(3, 3, 1))
- t(-7,-7,1,100,(93, 93, 1))
- t(-7,-7,5,-100,(-100, -100, 5))
- t(-7,-7,5,-15,(-15, -15, 5))
- t(-7,-7,5,-3,(-3, -3, 5))
- t(-7,-7,5,0,(0, 0, 5))
- t(-7,-7,5,1,(0, 0, 5))
- t(-7,-7,5,5,(0, 0, 5))
- t(-7,-7,5,10,(3, 3, 5))
- t(-7,-7,5,100,(93, 93, 5))
- t(-7,-7,20,-100,(-100, -100, 20))
- t(-7,-7,20,-15,(-15, -15, 20))
- t(-7,-7,20,-3,(-3, -3, 20))
- t(-7,-7,20,0,(0, 0, 20))
- t(-7,-7,20,1,(0, 0, 20))
- t(-7,-7,20,5,(0, 0, 20))
- t(-7,-7,20,10,(3, 3, 20))
- t(-7,-7,20,100,(93, 93, 20))
- t(-7,-2,-5,-100,(-101, -101, -5))
- t(-7,-2,-5,-15,(-16, -16, -5))
- t(-7,-2,-5,-3,(-4, -4, -5))
- t(-7,-2,-5,0,(-1, -1, -5))
- t(-7,-2,-5,1,(-1, -1, -5))
- t(-7,-2,-5,5,(-1, 3, -5))
- t(-7,-2,-5,10,(3, 8, -5))
- t(-7,-2,-5,100,(93, 98, -5))
- t(-7,-2,-3,-100,(-101, -101, -3))
- t(-7,-2,-3,-15,(-16, -16, -3))
- t(-7,-2,-3,-3,(-4, -4, -3))
- t(-7,-2,-3,0,(-1, -1, -3))
- t(-7,-2,-3,1,(-1, -1, -3))
- t(-7,-2,-3,5,(-1, 3, -3))
- t(-7,-2,-3,10,(3, 8, -3))
- t(-7,-2,-3,100,(93, 98, -3))
- t(-7,-2,-1,-100,(-101, -101, -1))
- t(-7,-2,-1,-15,(-16, -16, -1))
- t(-7,-2,-1,-3,(-4, -4, -1))
- t(-7,-2,-1,0,(-1, -1, -1))
- t(-7,-2,-1,1,(-1, -1, -1))
- t(-7,-2,-1,5,(-1, 3, -1))
- t(-7,-2,-1,10,(3, 8, -1))
- t(-7,-2,-1,100,(93, 98, -1))
- t(-7,-2,1,-100,(-100, -100, 1))
- t(-7,-2,1,-15,(-15, -15, 1))
- t(-7,-2,1,-3,(-3, -3, 1))
- t(-7,-2,1,0,(0, 0, 1))
- t(-7,-2,1,1,(0, 0, 1))
- t(-7,-2,1,5,(0, 3, 1))
- t(-7,-2,1,10,(3, 8, 1))
- t(-7,-2,1,100,(93, 98, 1))
- t(-7,-2,5,-100,(-100, -100, 5))
- t(-7,-2,5,-15,(-15, -15, 5))
- t(-7,-2,5,-3,(-3, -3, 5))
- t(-7,-2,5,0,(0, 0, 5))
- t(-7,-2,5,1,(0, 0, 5))
- t(-7,-2,5,5,(0, 3, 5))
- t(-7,-2,5,10,(3, 8, 5))
- t(-7,-2,5,100,(93, 98, 5))
- t(-7,-2,20,-100,(-100, -100, 20))
- t(-7,-2,20,-15,(-15, -15, 20))
- t(-7,-2,20,-3,(-3, -3, 20))
- t(-7,-2,20,0,(0, 0, 20))
- t(-7,-2,20,1,(0, 0, 20))
- t(-7,-2,20,5,(0, 3, 20))
- t(-7,-2,20,10,(3, 8, 20))
- t(-7,-2,20,100,(93, 98, 20))
- t(-7,0,-5,-100,(-101, -101, -5))
- t(-7,0,-5,-15,(-16, -16, -5))
- t(-7,0,-5,-3,(-4, -4, -5))
- t(-7,0,-5,0,(-1, -1, -5))
- t(-7,0,-5,1,(-1, 0, -5))
- t(-7,0,-5,5,(-1, 0, -5))
- t(-7,0,-5,10,(3, 0, -5))
- t(-7,0,-5,100,(93, 0, -5))
- t(-7,0,-3,-100,(-101, -101, -3))
- t(-7,0,-3,-15,(-16, -16, -3))
- t(-7,0,-3,-3,(-4, -4, -3))
- t(-7,0,-3,0,(-1, -1, -3))
- t(-7,0,-3,1,(-1, 0, -3))
- t(-7,0,-3,5,(-1, 0, -3))
- t(-7,0,-3,10,(3, 0, -3))
- t(-7,0,-3,100,(93, 0, -3))
- t(-7,0,-1,-100,(-101, -101, -1))
- t(-7,0,-1,-15,(-16, -16, -1))
- t(-7,0,-1,-3,(-4, -4, -1))
- t(-7,0,-1,0,(-1, -1, -1))
- t(-7,0,-1,1,(-1, 0, -1))
- t(-7,0,-1,5,(-1, 0, -1))
- t(-7,0,-1,10,(3, 0, -1))
- t(-7,0,-1,100,(93, 0, -1))
- t(-7,0,1,-100,(-100, -100, 1))
- t(-7,0,1,-15,(-15, -15, 1))
- t(-7,0,1,-3,(-3, -3, 1))
- t(-7,0,1,0,(0, 0, 1))
- t(-7,0,1,1,(0, 0, 1))
- t(-7,0,1,5,(0, 0, 1))
- t(-7,0,1,10,(3, 0, 1))
- t(-7,0,1,100,(93, 0, 1))
- t(-7,0,5,-100,(-100, -100, 5))
- t(-7,0,5,-15,(-15, -15, 5))
- t(-7,0,5,-3,(-3, -3, 5))
- t(-7,0,5,0,(0, 0, 5))
- t(-7,0,5,1,(0, 0, 5))
- t(-7,0,5,5,(0, 0, 5))
- t(-7,0,5,10,(3, 0, 5))
- t(-7,0,5,100,(93, 0, 5))
- t(-7,0,20,-100,(-100, -100, 20))
- t(-7,0,20,-15,(-15, -15, 20))
- t(-7,0,20,-3,(-3, -3, 20))
- t(-7,0,20,0,(0, 0, 20))
- t(-7,0,20,1,(0, 0, 20))
- t(-7,0,20,5,(0, 0, 20))
- t(-7,0,20,10,(3, 0, 20))
- t(-7,0,20,100,(93, 0, 20))
- t(-7,1,-5,-100,(-101, -101, -5))
- t(-7,1,-5,-15,(-16, -16, -5))
- t(-7,1,-5,-3,(-4, -4, -5))
- t(-7,1,-5,0,(-1, -1, -5))
- t(-7,1,-5,1,(-1, 0, -5))
- t(-7,1,-5,5,(-1, 1, -5))
- t(-7,1,-5,10,(3, 1, -5))
- t(-7,1,-5,100,(93, 1, -5))
- t(-7,1,-3,-100,(-101, -101, -3))
- t(-7,1,-3,-15,(-16, -16, -3))
- t(-7,1,-3,-3,(-4, -4, -3))
- t(-7,1,-3,0,(-1, -1, -3))
- t(-7,1,-3,1,(-1, 0, -3))
- t(-7,1,-3,5,(-1, 1, -3))
- t(-7,1,-3,10,(3, 1, -3))
- t(-7,1,-3,100,(93, 1, -3))
- t(-7,1,-1,-100,(-101, -101, -1))
- t(-7,1,-1,-15,(-16, -16, -1))
- t(-7,1,-1,-3,(-4, -4, -1))
- t(-7,1,-1,0,(-1, -1, -1))
- t(-7,1,-1,1,(-1, 0, -1))
- t(-7,1,-1,5,(-1, 1, -1))
- t(-7,1,-1,10,(3, 1, -1))
- t(-7,1,-1,100,(93, 1, -1))
- t(-7,1,1,-100,(-100, -100, 1))
- t(-7,1,1,-15,(-15, -15, 1))
- t(-7,1,1,-3,(-3, -3, 1))
- t(-7,1,1,0,(0, 0, 1))
- t(-7,1,1,1,(0, 1, 1))
- t(-7,1,1,5,(0, 1, 1))
- t(-7,1,1,10,(3, 1, 1))
- t(-7,1,1,100,(93, 1, 1))
- t(-7,1,5,-100,(-100, -100, 5))
- t(-7,1,5,-15,(-15, -15, 5))
- t(-7,1,5,-3,(-3, -3, 5))
- t(-7,1,5,0,(0, 0, 5))
- t(-7,1,5,1,(0, 1, 5))
- t(-7,1,5,5,(0, 1, 5))
- t(-7,1,5,10,(3, 1, 5))
- t(-7,1,5,100,(93, 1, 5))
- t(-7,1,20,-100,(-100, -100, 20))
- t(-7,1,20,-15,(-15, -15, 20))
- t(-7,1,20,-3,(-3, -3, 20))
- t(-7,1,20,0,(0, 0, 20))
- t(-7,1,20,1,(0, 1, 20))
- t(-7,1,20,5,(0, 1, 20))
- t(-7,1,20,10,(3, 1, 20))
- t(-7,1,20,100,(93, 1, 20))
- t(-7,6,-5,-100,(-101, -101, -5))
- t(-7,6,-5,-15,(-16, -16, -5))
- t(-7,6,-5,-3,(-4, -4, -5))
- t(-7,6,-5,0,(-1, -1, -5))
- t(-7,6,-5,1,(-1, 0, -5))
- t(-7,6,-5,5,(-1, 4, -5))
- t(-7,6,-5,10,(3, 6, -5))
- t(-7,6,-5,100,(93, 6, -5))
- t(-7,6,-3,-100,(-101, -101, -3))
- t(-7,6,-3,-15,(-16, -16, -3))
- t(-7,6,-3,-3,(-4, -4, -3))
- t(-7,6,-3,0,(-1, -1, -3))
- t(-7,6,-3,1,(-1, 0, -3))
- t(-7,6,-3,5,(-1, 4, -3))
- t(-7,6,-3,10,(3, 6, -3))
- t(-7,6,-3,100,(93, 6, -3))
- t(-7,6,-1,-100,(-101, -101, -1))
- t(-7,6,-1,-15,(-16, -16, -1))
- t(-7,6,-1,-3,(-4, -4, -1))
- t(-7,6,-1,0,(-1, -1, -1))
- t(-7,6,-1,1,(-1, 0, -1))
- t(-7,6,-1,5,(-1, 4, -1))
- t(-7,6,-1,10,(3, 6, -1))
- t(-7,6,-1,100,(93, 6, -1))
- t(-7,6,1,-100,(-100, -100, 1))
- t(-7,6,1,-15,(-15, -15, 1))
- t(-7,6,1,-3,(-3, -3, 1))
- t(-7,6,1,0,(0, 0, 1))
- t(-7,6,1,1,(0, 1, 1))
- t(-7,6,1,5,(0, 5, 1))
- t(-7,6,1,10,(3, 6, 1))
- t(-7,6,1,100,(93, 6, 1))
- t(-7,6,5,-100,(-100, -100, 5))
- t(-7,6,5,-15,(-15, -15, 5))
- t(-7,6,5,-3,(-3, -3, 5))
- t(-7,6,5,0,(0, 0, 5))
- t(-7,6,5,1,(0, 1, 5))
- t(-7,6,5,5,(0, 5, 5))
- t(-7,6,5,10,(3, 6, 5))
- t(-7,6,5,100,(93, 6, 5))
- t(-7,6,20,-100,(-100, -100, 20))
- t(-7,6,20,-15,(-15, -15, 20))
- t(-7,6,20,-3,(-3, -3, 20))
- t(-7,6,20,0,(0, 0, 20))
- t(-7,6,20,1,(0, 1, 20))
- t(-7,6,20,5,(0, 5, 20))
- t(-7,6,20,10,(3, 6, 20))
- t(-7,6,20,100,(93, 6, 20))
- t(-7,10,-5,-100,(-101, -101, -5))
- t(-7,10,-5,-15,(-16, -16, -5))
- t(-7,10,-5,-3,(-4, -4, -5))
- t(-7,10,-5,0,(-1, -1, -5))
- t(-7,10,-5,1,(-1, 0, -5))
- t(-7,10,-5,5,(-1, 4, -5))
- t(-7,10,-5,10,(3, 9, -5))
- t(-7,10,-5,100,(93, 10, -5))
- t(-7,10,-3,-100,(-101, -101, -3))
- t(-7,10,-3,-15,(-16, -16, -3))
- t(-7,10,-3,-3,(-4, -4, -3))
- t(-7,10,-3,0,(-1, -1, -3))
- t(-7,10,-3,1,(-1, 0, -3))
- t(-7,10,-3,5,(-1, 4, -3))
- t(-7,10,-3,10,(3, 9, -3))
- t(-7,10,-3,100,(93, 10, -3))
- t(-7,10,-1,-100,(-101, -101, -1))
- t(-7,10,-1,-15,(-16, -16, -1))
- t(-7,10,-1,-3,(-4, -4, -1))
- t(-7,10,-1,0,(-1, -1, -1))
- t(-7,10,-1,1,(-1, 0, -1))
- t(-7,10,-1,5,(-1, 4, -1))
- t(-7,10,-1,10,(3, 9, -1))
- t(-7,10,-1,100,(93, 10, -1))
- t(-7,10,1,-100,(-100, -100, 1))
- t(-7,10,1,-15,(-15, -15, 1))
- t(-7,10,1,-3,(-3, -3, 1))
- t(-7,10,1,0,(0, 0, 1))
- t(-7,10,1,1,(0, 1, 1))
- t(-7,10,1,5,(0, 5, 1))
- t(-7,10,1,10,(3, 10, 1))
- t(-7,10,1,100,(93, 10, 1))
- t(-7,10,5,-100,(-100, -100, 5))
- t(-7,10,5,-15,(-15, -15, 5))
- t(-7,10,5,-3,(-3, -3, 5))
- t(-7,10,5,0,(0, 0, 5))
- t(-7,10,5,1,(0, 1, 5))
- t(-7,10,5,5,(0, 5, 5))
- t(-7,10,5,10,(3, 10, 5))
- t(-7,10,5,100,(93, 10, 5))
- t(-7,10,20,-100,(-100, -100, 20))
- t(-7,10,20,-15,(-15, -15, 20))
- t(-7,10,20,-3,(-3, -3, 20))
- t(-7,10,20,0,(0, 0, 20))
- t(-7,10,20,1,(0, 1, 20))
- t(-7,10,20,5,(0, 5, 20))
- t(-7,10,20,10,(3, 10, 20))
- t(-7,10,20,100,(93, 10, 20))
- t(-2,None,-5,-100,(-101, -1, -5))
- t(-2,None,-5,-15,(-16, -1, -5))
- t(-2,None,-5,-3,(-4, -1, -5))
- t(-2,None,-5,0,(-1, -1, -5))
- t(-2,None,-5,1,(-1, -1, -5))
- t(-2,None,-5,5,(3, -1, -5))
- t(-2,None,-5,10,(8, -1, -5))
- t(-2,None,-5,100,(98, -1, -5))
- t(-2,None,-3,-100,(-101, -1, -3))
- t(-2,None,-3,-15,(-16, -1, -3))
- t(-2,None,-3,-3,(-4, -1, -3))
- t(-2,None,-3,0,(-1, -1, -3))
- t(-2,None,-3,1,(-1, -1, -3))
- t(-2,None,-3,5,(3, -1, -3))
- t(-2,None,-3,10,(8, -1, -3))
- t(-2,None,-3,100,(98, -1, -3))
- t(-2,None,-1,-100,(-101, -1, -1))
- t(-2,None,-1,-15,(-16, -1, -1))
- t(-2,None,-1,-3,(-4, -1, -1))
- t(-2,None,-1,0,(-1, -1, -1))
- t(-2,None,-1,1,(-1, -1, -1))
- t(-2,None,-1,5,(3, -1, -1))
- t(-2,None,-1,10,(8, -1, -1))
- t(-2,None,-1,100,(98, -1, -1))
- t(-2,None,1,-100,(-100, -100, 1))
- t(-2,None,1,-15,(-15, -15, 1))
- t(-2,None,1,-3,(-3, -3, 1))
- t(-2,None,1,0,(0, 0, 1))
- t(-2,None,1,1,(0, 1, 1))
- t(-2,None,1,5,(3, 5, 1))
- t(-2,None,1,10,(8, 10, 1))
- t(-2,None,1,100,(98, 100, 1))
- t(-2,None,5,-100,(-100, -100, 5))
- t(-2,None,5,-15,(-15, -15, 5))
- t(-2,None,5,-3,(-3, -3, 5))
- t(-2,None,5,0,(0, 0, 5))
- t(-2,None,5,1,(0, 1, 5))
- t(-2,None,5,5,(3, 5, 5))
- t(-2,None,5,10,(8, 10, 5))
- t(-2,None,5,100,(98, 100, 5))
- t(-2,None,20,-100,(-100, -100, 20))
- t(-2,None,20,-15,(-15, -15, 20))
- t(-2,None,20,-3,(-3, -3, 20))
- t(-2,None,20,0,(0, 0, 20))
- t(-2,None,20,1,(0, 1, 20))
- t(-2,None,20,5,(3, 5, 20))
- t(-2,None,20,10,(8, 10, 20))
- t(-2,None,20,100,(98, 100, 20))
- t(-2,-7,-5,-100,(-101, -101, -5))
- t(-2,-7,-5,-15,(-16, -16, -5))
- t(-2,-7,-5,-3,(-4, -4, -5))
- t(-2,-7,-5,0,(-1, -1, -5))
- t(-2,-7,-5,1,(-1, -1, -5))
- t(-2,-7,-5,5,(3, -1, -5))
- t(-2,-7,-5,10,(8, 3, -5))
- t(-2,-7,-5,100,(98, 93, -5))
- t(-2,-7,-3,-100,(-101, -101, -3))
- t(-2,-7,-3,-15,(-16, -16, -3))
- t(-2,-7,-3,-3,(-4, -4, -3))
- t(-2,-7,-3,0,(-1, -1, -3))
- t(-2,-7,-3,1,(-1, -1, -3))
- t(-2,-7,-3,5,(3, -1, -3))
- t(-2,-7,-3,10,(8, 3, -3))
- t(-2,-7,-3,100,(98, 93, -3))
- t(-2,-7,-1,-100,(-101, -101, -1))
- t(-2,-7,-1,-15,(-16, -16, -1))
- t(-2,-7,-1,-3,(-4, -4, -1))
- t(-2,-7,-1,0,(-1, -1, -1))
- t(-2,-7,-1,1,(-1, -1, -1))
- t(-2,-7,-1,5,(3, -1, -1))
- t(-2,-7,-1,10,(8, 3, -1))
- t(-2,-7,-1,100,(98, 93, -1))
- t(-2,-7,1,-100,(-100, -100, 1))
- t(-2,-7,1,-15,(-15, -15, 1))
- t(-2,-7,1,-3,(-3, -3, 1))
- t(-2,-7,1,0,(0, 0, 1))
- t(-2,-7,1,1,(0, 0, 1))
- t(-2,-7,1,5,(3, 0, 1))
- t(-2,-7,1,10,(8, 3, 1))
- t(-2,-7,1,100,(98, 93, 1))
- t(-2,-7,5,-100,(-100, -100, 5))
- t(-2,-7,5,-15,(-15, -15, 5))
- t(-2,-7,5,-3,(-3, -3, 5))
- t(-2,-7,5,0,(0, 0, 5))
- t(-2,-7,5,1,(0, 0, 5))
- t(-2,-7,5,5,(3, 0, 5))
- t(-2,-7,5,10,(8, 3, 5))
- t(-2,-7,5,100,(98, 93, 5))
- t(-2,-7,20,-100,(-100, -100, 20))
- t(-2,-7,20,-15,(-15, -15, 20))
- t(-2,-7,20,-3,(-3, -3, 20))
- t(-2,-7,20,0,(0, 0, 20))
- t(-2,-7,20,1,(0, 0, 20))
- t(-2,-7,20,5,(3, 0, 20))
- t(-2,-7,20,10,(8, 3, 20))
- t(-2,-7,20,100,(98, 93, 20))
- t(-2,-2,-5,-100,(-101, -101, -5))
- t(-2,-2,-5,-15,(-16, -16, -5))
- t(-2,-2,-5,-3,(-4, -4, -5))
- t(-2,-2,-5,0,(-1, -1, -5))
- t(-2,-2,-5,1,(-1, -1, -5))
- t(-2,-2,-5,5,(3, 3, -5))
- t(-2,-2,-5,10,(8, 8, -5))
- t(-2,-2,-5,100,(98, 98, -5))
- t(-2,-2,-3,-100,(-101, -101, -3))
- t(-2,-2,-3,-15,(-16, -16, -3))
- t(-2,-2,-3,-3,(-4, -4, -3))
- t(-2,-2,-3,0,(-1, -1, -3))
- t(-2,-2,-3,1,(-1, -1, -3))
- def b():
- t(-2,-2,-3,5,(3, 3, -3))
- t(-2,-2,-3,10,(8, 8, -3))
- t(-2,-2,-3,100,(98, 98, -3))
- t(-2,-2,-1,-100,(-101, -101, -1))
- t(-2,-2,-1,-15,(-16, -16, -1))
- t(-2,-2,-1,-3,(-4, -4, -1))
- t(-2,-2,-1,0,(-1, -1, -1))
- t(-2,-2,-1,1,(-1, -1, -1))
- t(-2,-2,-1,5,(3, 3, -1))
- t(-2,-2,-1,10,(8, 8, -1))
- t(-2,-2,-1,100,(98, 98, -1))
- t(-2,-2,1,-100,(-100, -100, 1))
- t(-2,-2,1,-15,(-15, -15, 1))
- t(-2,-2,1,-3,(-3, -3, 1))
- t(-2,-2,1,0,(0, 0, 1))
- t(-2,-2,1,1,(0, 0, 1))
- t(-2,-2,1,5,(3, 3, 1))
- t(-2,-2,1,10,(8, 8, 1))
- t(-2,-2,1,100,(98, 98, 1))
- t(-2,-2,5,-100,(-100, -100, 5))
- t(-2,-2,5,-15,(-15, -15, 5))
- t(-2,-2,5,-3,(-3, -3, 5))
- t(-2,-2,5,0,(0, 0, 5))
- t(-2,-2,5,1,(0, 0, 5))
- t(-2,-2,5,5,(3, 3, 5))
- t(-2,-2,5,10,(8, 8, 5))
- t(-2,-2,5,100,(98, 98, 5))
- t(-2,-2,20,-100,(-100, -100, 20))
- t(-2,-2,20,-15,(-15, -15, 20))
- t(-2,-2,20,-3,(-3, -3, 20))
- t(-2,-2,20,0,(0, 0, 20))
- t(-2,-2,20,1,(0, 0, 20))
- t(-2,-2,20,5,(3, 3, 20))
- t(-2,-2,20,10,(8, 8, 20))
- t(-2,-2,20,100,(98, 98, 20))
- t(-2,0,-5,-100,(-101, -101, -5))
- t(-2,0,-5,-15,(-16, -16, -5))
- t(-2,0,-5,-3,(-4, -4, -5))
- t(-2,0,-5,0,(-1, -1, -5))
- t(-2,0,-5,1,(-1, 0, -5))
- t(-2,0,-5,5,(3, 0, -5))
- t(-2,0,-5,10,(8, 0, -5))
- t(-2,0,-5,100,(98, 0, -5))
- t(-2,0,-3,-100,(-101, -101, -3))
- t(-2,0,-3,-15,(-16, -16, -3))
- t(-2,0,-3,-3,(-4, -4, -3))
- t(-2,0,-3,0,(-1, -1, -3))
- t(-2,0,-3,1,(-1, 0, -3))
- t(-2,0,-3,5,(3, 0, -3))
- t(-2,0,-3,10,(8, 0, -3))
- t(-2,0,-3,100,(98, 0, -3))
- t(-2,0,-1,-100,(-101, -101, -1))
- t(-2,0,-1,-15,(-16, -16, -1))
- t(-2,0,-1,-3,(-4, -4, -1))
- t(-2,0,-1,0,(-1, -1, -1))
- t(-2,0,-1,1,(-1, 0, -1))
- t(-2,0,-1,5,(3, 0, -1))
- t(-2,0,-1,10,(8, 0, -1))
- t(-2,0,-1,100,(98, 0, -1))
- t(-2,0,1,-100,(-100, -100, 1))
- t(-2,0,1,-15,(-15, -15, 1))
- t(-2,0,1,-3,(-3, -3, 1))
- t(-2,0,1,0,(0, 0, 1))
- t(-2,0,1,1,(0, 0, 1))
- t(-2,0,1,5,(3, 0, 1))
- t(-2,0,1,10,(8, 0, 1))
- t(-2,0,1,100,(98, 0, 1))
- t(-2,0,5,-100,(-100, -100, 5))
- t(-2,0,5,-15,(-15, -15, 5))
- t(-2,0,5,-3,(-3, -3, 5))
- t(-2,0,5,0,(0, 0, 5))
- t(-2,0,5,1,(0, 0, 5))
- t(-2,0,5,5,(3, 0, 5))
- t(-2,0,5,10,(8, 0, 5))
- t(-2,0,5,100,(98, 0, 5))
- t(-2,0,20,-100,(-100, -100, 20))
- t(-2,0,20,-15,(-15, -15, 20))
- t(-2,0,20,-3,(-3, -3, 20))
- t(-2,0,20,0,(0, 0, 20))
- t(-2,0,20,1,(0, 0, 20))
- t(-2,0,20,5,(3, 0, 20))
- t(-2,0,20,10,(8, 0, 20))
- t(-2,0,20,100,(98, 0, 20))
- t(-2,1,-5,-100,(-101, -101, -5))
- t(-2,1,-5,-15,(-16, -16, -5))
- t(-2,1,-5,-3,(-4, -4, -5))
- t(-2,1,-5,0,(-1, -1, -5))
- t(-2,1,-5,1,(-1, 0, -5))
- t(-2,1,-5,5,(3, 1, -5))
- t(-2,1,-5,10,(8, 1, -5))
- t(-2,1,-5,100,(98, 1, -5))
- t(-2,1,-3,-100,(-101, -101, -3))
- t(-2,1,-3,-15,(-16, -16, -3))
- t(-2,1,-3,-3,(-4, -4, -3))
- t(-2,1,-3,0,(-1, -1, -3))
- t(-2,1,-3,1,(-1, 0, -3))
- t(-2,1,-3,5,(3, 1, -3))
- t(-2,1,-3,10,(8, 1, -3))
- t(-2,1,-3,100,(98, 1, -3))
- t(-2,1,-1,-100,(-101, -101, -1))
- t(-2,1,-1,-15,(-16, -16, -1))
- t(-2,1,-1,-3,(-4, -4, -1))
- t(-2,1,-1,0,(-1, -1, -1))
- t(-2,1,-1,1,(-1, 0, -1))
- t(-2,1,-1,5,(3, 1, -1))
- t(-2,1,-1,10,(8, 1, -1))
- t(-2,1,-1,100,(98, 1, -1))
- t(-2,1,1,-100,(-100, -100, 1))
- t(-2,1,1,-15,(-15, -15, 1))
- t(-2,1,1,-3,(-3, -3, 1))
- t(-2,1,1,0,(0, 0, 1))
- t(-2,1,1,1,(0, 1, 1))
- t(-2,1,1,5,(3, 1, 1))
- t(-2,1,1,10,(8, 1, 1))
- t(-2,1,1,100,(98, 1, 1))
- t(-2,1,5,-100,(-100, -100, 5))
- t(-2,1,5,-15,(-15, -15, 5))
- t(-2,1,5,-3,(-3, -3, 5))
- t(-2,1,5,0,(0, 0, 5))
- t(-2,1,5,1,(0, 1, 5))
- t(-2,1,5,5,(3, 1, 5))
- t(-2,1,5,10,(8, 1, 5))
- t(-2,1,5,100,(98, 1, 5))
- t(-2,1,20,-100,(-100, -100, 20))
- t(-2,1,20,-15,(-15, -15, 20))
- t(-2,1,20,-3,(-3, -3, 20))
- t(-2,1,20,0,(0, 0, 20))
- t(-2,1,20,1,(0, 1, 20))
- t(-2,1,20,5,(3, 1, 20))
- t(-2,1,20,10,(8, 1, 20))
- t(-2,1,20,100,(98, 1, 20))
- t(-2,6,-5,-100,(-101, -101, -5))
- t(-2,6,-5,-15,(-16, -16, -5))
- t(-2,6,-5,-3,(-4, -4, -5))
- t(-2,6,-5,0,(-1, -1, -5))
- t(-2,6,-5,1,(-1, 0, -5))
- t(-2,6,-5,5,(3, 4, -5))
- t(-2,6,-5,10,(8, 6, -5))
- t(-2,6,-5,100,(98, 6, -5))
- t(-2,6,-3,-100,(-101, -101, -3))
- t(-2,6,-3,-15,(-16, -16, -3))
- t(-2,6,-3,-3,(-4, -4, -3))
- t(-2,6,-3,0,(-1, -1, -3))
- t(-2,6,-3,1,(-1, 0, -3))
- t(-2,6,-3,5,(3, 4, -3))
- t(-2,6,-3,10,(8, 6, -3))
- t(-2,6,-3,100,(98, 6, -3))
- t(-2,6,-1,-100,(-101, -101, -1))
- t(-2,6,-1,-15,(-16, -16, -1))
- t(-2,6,-1,-3,(-4, -4, -1))
- t(-2,6,-1,0,(-1, -1, -1))
- t(-2,6,-1,1,(-1, 0, -1))
- t(-2,6,-1,5,(3, 4, -1))
- t(-2,6,-1,10,(8, 6, -1))
- t(-2,6,-1,100,(98, 6, -1))
- t(-2,6,1,-100,(-100, -100, 1))
- t(-2,6,1,-15,(-15, -15, 1))
- t(-2,6,1,-3,(-3, -3, 1))
- t(-2,6,1,0,(0, 0, 1))
- t(-2,6,1,1,(0, 1, 1))
- t(-2,6,1,5,(3, 5, 1))
- t(-2,6,1,10,(8, 6, 1))
- t(-2,6,1,100,(98, 6, 1))
- t(-2,6,5,-100,(-100, -100, 5))
- t(-2,6,5,-15,(-15, -15, 5))
- t(-2,6,5,-3,(-3, -3, 5))
- t(-2,6,5,0,(0, 0, 5))
- t(-2,6,5,1,(0, 1, 5))
- t(-2,6,5,5,(3, 5, 5))
- t(-2,6,5,10,(8, 6, 5))
- t(-2,6,5,100,(98, 6, 5))
- t(-2,6,20,-100,(-100, -100, 20))
- t(-2,6,20,-15,(-15, -15, 20))
- t(-2,6,20,-3,(-3, -3, 20))
- t(-2,6,20,0,(0, 0, 20))
- t(-2,6,20,1,(0, 1, 20))
- t(-2,6,20,5,(3, 5, 20))
- t(-2,6,20,10,(8, 6, 20))
- t(-2,6,20,100,(98, 6, 20))
- t(-2,10,-5,-100,(-101, -101, -5))
- t(-2,10,-5,-15,(-16, -16, -5))
- t(-2,10,-5,-3,(-4, -4, -5))
- t(-2,10,-5,0,(-1, -1, -5))
- t(-2,10,-5,1,(-1, 0, -5))
- t(-2,10,-5,5,(3, 4, -5))
- t(-2,10,-5,10,(8, 9, -5))
- t(-2,10,-5,100,(98, 10, -5))
- t(-2,10,-3,-100,(-101, -101, -3))
- t(-2,10,-3,-15,(-16, -16, -3))
- t(-2,10,-3,-3,(-4, -4, -3))
- t(-2,10,-3,0,(-1, -1, -3))
- t(-2,10,-3,1,(-1, 0, -3))
- t(-2,10,-3,5,(3, 4, -3))
- t(-2,10,-3,10,(8, 9, -3))
- t(-2,10,-3,100,(98, 10, -3))
- t(-2,10,-1,-100,(-101, -101, -1))
- t(-2,10,-1,-15,(-16, -16, -1))
- t(-2,10,-1,-3,(-4, -4, -1))
- t(-2,10,-1,0,(-1, -1, -1))
- t(-2,10,-1,1,(-1, 0, -1))
- t(-2,10,-1,5,(3, 4, -1))
- t(-2,10,-1,10,(8, 9, -1))
- t(-2,10,-1,100,(98, 10, -1))
- t(-2,10,1,-100,(-100, -100, 1))
- t(-2,10,1,-15,(-15, -15, 1))
- t(-2,10,1,-3,(-3, -3, 1))
- t(-2,10,1,0,(0, 0, 1))
- t(-2,10,1,1,(0, 1, 1))
- t(-2,10,1,5,(3, 5, 1))
- t(-2,10,1,10,(8, 10, 1))
- t(-2,10,1,100,(98, 10, 1))
- t(-2,10,5,-100,(-100, -100, 5))
- t(-2,10,5,-15,(-15, -15, 5))
- t(-2,10,5,-3,(-3, -3, 5))
- t(-2,10,5,0,(0, 0, 5))
- t(-2,10,5,1,(0, 1, 5))
- t(-2,10,5,5,(3, 5, 5))
- t(-2,10,5,10,(8, 10, 5))
- t(-2,10,5,100,(98, 10, 5))
- t(-2,10,20,-100,(-100, -100, 20))
- t(-2,10,20,-15,(-15, -15, 20))
- t(-2,10,20,-3,(-3, -3, 20))
- t(-2,10,20,0,(0, 0, 20))
- t(-2,10,20,1,(0, 1, 20))
- t(-2,10,20,5,(3, 5, 20))
- t(-2,10,20,10,(8, 10, 20))
- t(-2,10,20,100,(98, 10, 20))
- t(0,None,-5,-100,(-101, -1, -5))
- t(0,None,-5,-15,(-16, -1, -5))
- t(0,None,-5,-3,(-4, -1, -5))
- t(0,None,-5,0,(-1, -1, -5))
- t(0,None,-5,1,(0, -1, -5))
- t(0,None,-5,5,(0, -1, -5))
- t(0,None,-5,10,(0, -1, -5))
- t(0,None,-5,100,(0, -1, -5))
- t(0,None,-3,-100,(-101, -1, -3))
- t(0,None,-3,-15,(-16, -1, -3))
- t(0,None,-3,-3,(-4, -1, -3))
- t(0,None,-3,0,(-1, -1, -3))
- t(0,None,-3,1,(0, -1, -3))
- t(0,None,-3,5,(0, -1, -3))
- t(0,None,-3,10,(0, -1, -3))
- t(0,None,-3,100,(0, -1, -3))
- t(0,None,-1,-100,(-101, -1, -1))
- t(0,None,-1,-15,(-16, -1, -1))
- t(0,None,-1,-3,(-4, -1, -1))
- t(0,None,-1,0,(-1, -1, -1))
- t(0,None,-1,1,(0, -1, -1))
- t(0,None,-1,5,(0, -1, -1))
- t(0,None,-1,10,(0, -1, -1))
- t(0,None,-1,100,(0, -1, -1))
- t(0,None,1,-100,(-100, -100, 1))
- t(0,None,1,-15,(-15, -15, 1))
- t(0,None,1,-3,(-3, -3, 1))
- t(0,None,1,0,(0, 0, 1))
- t(0,None,1,1,(0, 1, 1))
- t(0,None,1,5,(0, 5, 1))
- t(0,None,1,10,(0, 10, 1))
- t(0,None,1,100,(0, 100, 1))
- t(0,None,5,-100,(-100, -100, 5))
- t(0,None,5,-15,(-15, -15, 5))
- t(0,None,5,-3,(-3, -3, 5))
- t(0,None,5,0,(0, 0, 5))
- t(0,None,5,1,(0, 1, 5))
- t(0,None,5,5,(0, 5, 5))
- t(0,None,5,10,(0, 10, 5))
- t(0,None,5,100,(0, 100, 5))
- t(0,None,20,-100,(-100, -100, 20))
- t(0,None,20,-15,(-15, -15, 20))
- t(0,None,20,-3,(-3, -3, 20))
- t(0,None,20,0,(0, 0, 20))
- t(0,None,20,1,(0, 1, 20))
- t(0,None,20,5,(0, 5, 20))
- t(0,None,20,10,(0, 10, 20))
- t(0,None,20,100,(0, 100, 20))
- t(0,-7,-5,-100,(-101, -101, -5))
- t(0,-7,-5,-15,(-16, -16, -5))
- t(0,-7,-5,-3,(-4, -4, -5))
- t(0,-7,-5,0,(-1, -1, -5))
- t(0,-7,-5,1,(0, -1, -5))
- t(0,-7,-5,5,(0, -1, -5))
- t(0,-7,-5,10,(0, 3, -5))
- t(0,-7,-5,100,(0, 93, -5))
- t(0,-7,-3,-100,(-101, -101, -3))
- t(0,-7,-3,-15,(-16, -16, -3))
- t(0,-7,-3,-3,(-4, -4, -3))
- t(0,-7,-3,0,(-1, -1, -3))
- t(0,-7,-3,1,(0, -1, -3))
- t(0,-7,-3,5,(0, -1, -3))
- t(0,-7,-3,10,(0, 3, -3))
- t(0,-7,-3,100,(0, 93, -3))
- t(0,-7,-1,-100,(-101, -101, -1))
- t(0,-7,-1,-15,(-16, -16, -1))
- t(0,-7,-1,-3,(-4, -4, -1))
- t(0,-7,-1,0,(-1, -1, -1))
- t(0,-7,-1,1,(0, -1, -1))
- t(0,-7,-1,5,(0, -1, -1))
- t(0,-7,-1,10,(0, 3, -1))
- t(0,-7,-1,100,(0, 93, -1))
- t(0,-7,1,-100,(-100, -100, 1))
- t(0,-7,1,-15,(-15, -15, 1))
- t(0,-7,1,-3,(-3, -3, 1))
- t(0,-7,1,0,(0, 0, 1))
- t(0,-7,1,1,(0, 0, 1))
- t(0,-7,1,5,(0, 0, 1))
- t(0,-7,1,10,(0, 3, 1))
- t(0,-7,1,100,(0, 93, 1))
- t(0,-7,5,-100,(-100, -100, 5))
- t(0,-7,5,-15,(-15, -15, 5))
- t(0,-7,5,-3,(-3, -3, 5))
- t(0,-7,5,0,(0, 0, 5))
- t(0,-7,5,1,(0, 0, 5))
- t(0,-7,5,5,(0, 0, 5))
- t(0,-7,5,10,(0, 3, 5))
- t(0,-7,5,100,(0, 93, 5))
- t(0,-7,20,-100,(-100, -100, 20))
- t(0,-7,20,-15,(-15, -15, 20))
- t(0,-7,20,-3,(-3, -3, 20))
- t(0,-7,20,0,(0, 0, 20))
- t(0,-7,20,1,(0, 0, 20))
- t(0,-7,20,5,(0, 0, 20))
- t(0,-7,20,10,(0, 3, 20))
- t(0,-7,20,100,(0, 93, 20))
- t(0,-2,-5,-100,(-101, -101, -5))
- t(0,-2,-5,-15,(-16, -16, -5))
- t(0,-2,-5,-3,(-4, -4, -5))
- t(0,-2,-5,0,(-1, -1, -5))
- t(0,-2,-5,1,(0, -1, -5))
- t(0,-2,-5,5,(0, 3, -5))
- t(0,-2,-5,10,(0, 8, -5))
- t(0,-2,-5,100,(0, 98, -5))
- t(0,-2,-3,-100,(-101, -101, -3))
- t(0,-2,-3,-15,(-16, -16, -3))
- t(0,-2,-3,-3,(-4, -4, -3))
- t(0,-2,-3,0,(-1, -1, -3))
- t(0,-2,-3,1,(0, -1, -3))
- t(0,-2,-3,5,(0, 3, -3))
- t(0,-2,-3,10,(0, 8, -3))
- t(0,-2,-3,100,(0, 98, -3))
- t(0,-2,-1,-100,(-101, -101, -1))
- t(0,-2,-1,-15,(-16, -16, -1))
- t(0,-2,-1,-3,(-4, -4, -1))
- t(0,-2,-1,0,(-1, -1, -1))
- t(0,-2,-1,1,(0, -1, -1))
- t(0,-2,-1,5,(0, 3, -1))
- t(0,-2,-1,10,(0, 8, -1))
- t(0,-2,-1,100,(0, 98, -1))
- t(0,-2,1,-100,(-100, -100, 1))
- t(0,-2,1,-15,(-15, -15, 1))
- t(0,-2,1,-3,(-3, -3, 1))
- t(0,-2,1,0,(0, 0, 1))
- t(0,-2,1,1,(0, 0, 1))
- t(0,-2,1,5,(0, 3, 1))
- t(0,-2,1,10,(0, 8, 1))
- t(0,-2,1,100,(0, 98, 1))
- t(0,-2,5,-100,(-100, -100, 5))
- t(0,-2,5,-15,(-15, -15, 5))
- t(0,-2,5,-3,(-3, -3, 5))
- t(0,-2,5,0,(0, 0, 5))
- t(0,-2,5,1,(0, 0, 5))
- t(0,-2,5,5,(0, 3, 5))
- t(0,-2,5,10,(0, 8, 5))
- t(0,-2,5,100,(0, 98, 5))
- t(0,-2,20,-100,(-100, -100, 20))
- t(0,-2,20,-15,(-15, -15, 20))
- t(0,-2,20,-3,(-3, -3, 20))
- t(0,-2,20,0,(0, 0, 20))
- t(0,-2,20,1,(0, 0, 20))
- t(0,-2,20,5,(0, 3, 20))
- t(0,-2,20,10,(0, 8, 20))
- t(0,-2,20,100,(0, 98, 20))
- t(0,0,-5,-100,(-101, -101, -5))
- t(0,0,-5,-15,(-16, -16, -5))
- t(0,0,-5,-3,(-4, -4, -5))
- t(0,0,-5,0,(-1, -1, -5))
- t(0,0,-5,1,(0, 0, -5))
- t(0,0,-5,5,(0, 0, -5))
- t(0,0,-5,10,(0, 0, -5))
- t(0,0,-5,100,(0, 0, -5))
- t(0,0,-3,-100,(-101, -101, -3))
- t(0,0,-3,-15,(-16, -16, -3))
- t(0,0,-3,-3,(-4, -4, -3))
- t(0,0,-3,0,(-1, -1, -3))
- t(0,0,-3,1,(0, 0, -3))
- t(0,0,-3,5,(0, 0, -3))
- t(0,0,-3,10,(0, 0, -3))
- t(0,0,-3,100,(0, 0, -3))
- t(0,0,-1,-100,(-101, -101, -1))
- t(0,0,-1,-15,(-16, -16, -1))
- t(0,0,-1,-3,(-4, -4, -1))
- t(0,0,-1,0,(-1, -1, -1))
- t(0,0,-1,1,(0, 0, -1))
- t(0,0,-1,5,(0, 0, -1))
- t(0,0,-1,10,(0, 0, -1))
- t(0,0,-1,100,(0, 0, -1))
- t(0,0,1,-100,(-100, -100, 1))
- t(0,0,1,-15,(-15, -15, 1))
- t(0,0,1,-3,(-3, -3, 1))
- t(0,0,1,0,(0, 0, 1))
- t(0,0,1,1,(0, 0, 1))
- t(0,0,1,5,(0, 0, 1))
- t(0,0,1,10,(0, 0, 1))
- t(0,0,1,100,(0, 0, 1))
- t(0,0,5,-100,(-100, -100, 5))
- t(0,0,5,-15,(-15, -15, 5))
- t(0,0,5,-3,(-3, -3, 5))
- t(0,0,5,0,(0, 0, 5))
- t(0,0,5,1,(0, 0, 5))
- t(0,0,5,5,(0, 0, 5))
- t(0,0,5,10,(0, 0, 5))
- t(0,0,5,100,(0, 0, 5))
- t(0,0,20,-100,(-100, -100, 20))
- t(0,0,20,-15,(-15, -15, 20))
- t(0,0,20,-3,(-3, -3, 20))
- t(0,0,20,0,(0, 0, 20))
- t(0,0,20,1,(0, 0, 20))
- t(0,0,20,5,(0, 0, 20))
- t(0,0,20,10,(0, 0, 20))
- t(0,0,20,100,(0, 0, 20))
- t(0,1,-5,-100,(-101, -101, -5))
- t(0,1,-5,-15,(-16, -16, -5))
- t(0,1,-5,-3,(-4, -4, -5))
- t(0,1,-5,0,(-1, -1, -5))
- t(0,1,-5,1,(0, 0, -5))
- t(0,1,-5,5,(0, 1, -5))
- t(0,1,-5,10,(0, 1, -5))
- t(0,1,-5,100,(0, 1, -5))
- t(0,1,-3,-100,(-101, -101, -3))
- t(0,1,-3,-15,(-16, -16, -3))
- t(0,1,-3,-3,(-4, -4, -3))
- t(0,1,-3,0,(-1, -1, -3))
- t(0,1,-3,1,(0, 0, -3))
- t(0,1,-3,5,(0, 1, -3))
- t(0,1,-3,10,(0, 1, -3))
- t(0,1,-3,100,(0, 1, -3))
- t(0,1,-1,-100,(-101, -101, -1))
- t(0,1,-1,-15,(-16, -16, -1))
- t(0,1,-1,-3,(-4, -4, -1))
- t(0,1,-1,0,(-1, -1, -1))
- t(0,1,-1,1,(0, 0, -1))
- t(0,1,-1,5,(0, 1, -1))
- t(0,1,-1,10,(0, 1, -1))
- t(0,1,-1,100,(0, 1, -1))
- t(0,1,1,-100,(-100, -100, 1))
- t(0,1,1,-15,(-15, -15, 1))
- t(0,1,1,-3,(-3, -3, 1))
- t(0,1,1,0,(0, 0, 1))
- t(0,1,1,1,(0, 1, 1))
- t(0,1,1,5,(0, 1, 1))
- t(0,1,1,10,(0, 1, 1))
- t(0,1,1,100,(0, 1, 1))
- t(0,1,5,-100,(-100, -100, 5))
- t(0,1,5,-15,(-15, -15, 5))
- t(0,1,5,-3,(-3, -3, 5))
- t(0,1,5,0,(0, 0, 5))
- t(0,1,5,1,(0, 1, 5))
- t(0,1,5,5,(0, 1, 5))
- t(0,1,5,10,(0, 1, 5))
- t(0,1,5,100,(0, 1, 5))
- t(0,1,20,-100,(-100, -100, 20))
- t(0,1,20,-15,(-15, -15, 20))
- t(0,1,20,-3,(-3, -3, 20))
- t(0,1,20,0,(0, 0, 20))
- t(0,1,20,1,(0, 1, 20))
- t(0,1,20,5,(0, 1, 20))
- t(0,1,20,10,(0, 1, 20))
- t(0,1,20,100,(0, 1, 20))
- t(0,6,-5,-100,(-101, -101, -5))
- t(0,6,-5,-15,(-16, -16, -5))
- t(0,6,-5,-3,(-4, -4, -5))
- t(0,6,-5,0,(-1, -1, -5))
- t(0,6,-5,1,(0, 0, -5))
- t(0,6,-5,5,(0, 4, -5))
- t(0,6,-5,10,(0, 6, -5))
- t(0,6,-5,100,(0, 6, -5))
- t(0,6,-3,-100,(-101, -101, -3))
- t(0,6,-3,-15,(-16, -16, -3))
- t(0,6,-3,-3,(-4, -4, -3))
- t(0,6,-3,0,(-1, -1, -3))
- t(0,6,-3,1,(0, 0, -3))
- t(0,6,-3,5,(0, 4, -3))
- t(0,6,-3,10,(0, 6, -3))
- t(0,6,-3,100,(0, 6, -3))
- t(0,6,-1,-100,(-101, -101, -1))
- t(0,6,-1,-15,(-16, -16, -1))
- t(0,6,-1,-3,(-4, -4, -1))
- t(0,6,-1,0,(-1, -1, -1))
- t(0,6,-1,1,(0, 0, -1))
- t(0,6,-1,5,(0, 4, -1))
- t(0,6,-1,10,(0, 6, -1))
- t(0,6,-1,100,(0, 6, -1))
- t(0,6,1,-100,(-100, -100, 1))
- t(0,6,1,-15,(-15, -15, 1))
- t(0,6,1,-3,(-3, -3, 1))
- t(0,6,1,0,(0, 0, 1))
- t(0,6,1,1,(0, 1, 1))
- t(0,6,1,5,(0, 5, 1))
- t(0,6,1,10,(0, 6, 1))
- t(0,6,1,100,(0, 6, 1))
- t(0,6,5,-100,(-100, -100, 5))
- t(0,6,5,-15,(-15, -15, 5))
- t(0,6,5,-3,(-3, -3, 5))
- t(0,6,5,0,(0, 0, 5))
- t(0,6,5,1,(0, 1, 5))
- t(0,6,5,5,(0, 5, 5))
- t(0,6,5,10,(0, 6, 5))
- t(0,6,5,100,(0, 6, 5))
- t(0,6,20,-100,(-100, -100, 20))
- t(0,6,20,-15,(-15, -15, 20))
- t(0,6,20,-3,(-3, -3, 20))
- t(0,6,20,0,(0, 0, 20))
- t(0,6,20,1,(0, 1, 20))
- t(0,6,20,5,(0, 5, 20))
- t(0,6,20,10,(0, 6, 20))
- t(0,6,20,100,(0, 6, 20))
- t(0,10,-5,-100,(-101, -101, -5))
- t(0,10,-5,-15,(-16, -16, -5))
- t(0,10,-5,-3,(-4, -4, -5))
- t(0,10,-5,0,(-1, -1, -5))
- t(0,10,-5,1,(0, 0, -5))
- t(0,10,-5,5,(0, 4, -5))
- t(0,10,-5,10,(0, 9, -5))
- t(0,10,-5,100,(0, 10, -5))
- t(0,10,-3,-100,(-101, -101, -3))
- t(0,10,-3,-15,(-16, -16, -3))
- t(0,10,-3,-3,(-4, -4, -3))
- t(0,10,-3,0,(-1, -1, -3))
- t(0,10,-3,1,(0, 0, -3))
- t(0,10,-3,5,(0, 4, -3))
- t(0,10,-3,10,(0, 9, -3))
- t(0,10,-3,100,(0, 10, -3))
- t(0,10,-1,-100,(-101, -101, -1))
- t(0,10,-1,-15,(-16, -16, -1))
- t(0,10,-1,-3,(-4, -4, -1))
- t(0,10,-1,0,(-1, -1, -1))
- t(0,10,-1,1,(0, 0, -1))
- t(0,10,-1,5,(0, 4, -1))
- t(0,10,-1,10,(0, 9, -1))
- t(0,10,-1,100,(0, 10, -1))
- t(0,10,1,-100,(-100, -100, 1))
- t(0,10,1,-15,(-15, -15, 1))
- t(0,10,1,-3,(-3, -3, 1))
- t(0,10,1,0,(0, 0, 1))
- t(0,10,1,1,(0, 1, 1))
- t(0,10,1,5,(0, 5, 1))
- t(0,10,1,10,(0, 10, 1))
- t(0,10,1,100,(0, 10, 1))
- t(0,10,5,-100,(-100, -100, 5))
- t(0,10,5,-15,(-15, -15, 5))
- t(0,10,5,-3,(-3, -3, 5))
- t(0,10,5,0,(0, 0, 5))
- t(0,10,5,1,(0, 1, 5))
- t(0,10,5,5,(0, 5, 5))
- t(0,10,5,10,(0, 10, 5))
- t(0,10,5,100,(0, 10, 5))
- t(0,10,20,-100,(-100, -100, 20))
- t(0,10,20,-15,(-15, -15, 20))
- t(0,10,20,-3,(-3, -3, 20))
- t(0,10,20,0,(0, 0, 20))
- t(0,10,20,1,(0, 1, 20))
- t(0,10,20,5,(0, 5, 20))
- t(0,10,20,10,(0, 10, 20))
- t(0,10,20,100,(0, 10, 20))
- t(1,None,-5,-100,(-101, -1, -5))
- t(1,None,-5,-15,(-16, -1, -5))
- t(1,None,-5,-3,(-4, -1, -5))
- t(1,None,-5,0,(-1, -1, -5))
- t(1,None,-5,1,(0, -1, -5))
- t(1,None,-5,5,(1, -1, -5))
- t(1,None,-5,10,(1, -1, -5))
- t(1,None,-5,100,(1, -1, -5))
- t(1,None,-3,-100,(-101, -1, -3))
- t(1,None,-3,-15,(-16, -1, -3))
- t(1,None,-3,-3,(-4, -1, -3))
- t(1,None,-3,0,(-1, -1, -3))
- t(1,None,-3,1,(0, -1, -3))
- t(1,None,-3,5,(1, -1, -3))
- t(1,None,-3,10,(1, -1, -3))
- t(1,None,-3,100,(1, -1, -3))
- t(1,None,-1,-100,(-101, -1, -1))
- t(1,None,-1,-15,(-16, -1, -1))
- t(1,None,-1,-3,(-4, -1, -1))
- t(1,None,-1,0,(-1, -1, -1))
- t(1,None,-1,1,(0, -1, -1))
- t(1,None,-1,5,(1, -1, -1))
- t(1,None,-1,10,(1, -1, -1))
- t(1,None,-1,100,(1, -1, -1))
- t(1,None,1,-100,(-100, -100, 1))
- t(1,None,1,-15,(-15, -15, 1))
- t(1,None,1,-3,(-3, -3, 1))
- t(1,None,1,0,(0, 0, 1))
- t(1,None,1,1,(1, 1, 1))
- t(1,None,1,5,(1, 5, 1))
- t(1,None,1,10,(1, 10, 1))
- t(1,None,1,100,(1, 100, 1))
- t(1,None,5,-100,(-100, -100, 5))
- t(1,None,5,-15,(-15, -15, 5))
- t(1,None,5,-3,(-3, -3, 5))
- t(1,None,5,0,(0, 0, 5))
- t(1,None,5,1,(1, 1, 5))
- t(1,None,5,5,(1, 5, 5))
- t(1,None,5,10,(1, 10, 5))
- t(1,None,5,100,(1, 100, 5))
- t(1,None,20,-100,(-100, -100, 20))
- t(1,None,20,-15,(-15, -15, 20))
- t(1,None,20,-3,(-3, -3, 20))
- t(1,None,20,0,(0, 0, 20))
- t(1,None,20,1,(1, 1, 20))
- t(1,None,20,5,(1, 5, 20))
- t(1,None,20,10,(1, 10, 20))
- t(1,None,20,100,(1, 100, 20))
- t(1,-7,-5,-100,(-101, -101, -5))
- t(1,-7,-5,-15,(-16, -16, -5))
- t(1,-7,-5,-3,(-4, -4, -5))
- t(1,-7,-5,0,(-1, -1, -5))
- t(1,-7,-5,1,(0, -1, -5))
- t(1,-7,-5,5,(1, -1, -5))
- t(1,-7,-5,10,(1, 3, -5))
- t(1,-7,-5,100,(1, 93, -5))
- t(1,-7,-3,-100,(-101, -101, -3))
- t(1,-7,-3,-15,(-16, -16, -3))
- t(1,-7,-3,-3,(-4, -4, -3))
- t(1,-7,-3,0,(-1, -1, -3))
- t(1,-7,-3,1,(0, -1, -3))
- t(1,-7,-3,5,(1, -1, -3))
- t(1,-7,-3,10,(1, 3, -3))
- t(1,-7,-3,100,(1, 93, -3))
- t(1,-7,-1,-100,(-101, -101, -1))
- t(1,-7,-1,-15,(-16, -16, -1))
- t(1,-7,-1,-3,(-4, -4, -1))
- t(1,-7,-1,0,(-1, -1, -1))
- t(1,-7,-1,1,(0, -1, -1))
- t(1,-7,-1,5,(1, -1, -1))
- t(1,-7,-1,10,(1, 3, -1))
- t(1,-7,-1,100,(1, 93, -1))
- t(1,-7,1,-100,(-100, -100, 1))
- t(1,-7,1,-15,(-15, -15, 1))
- t(1,-7,1,-3,(-3, -3, 1))
- t(1,-7,1,0,(0, 0, 1))
- t(1,-7,1,1,(1, 0, 1))
- t(1,-7,1,5,(1, 0, 1))
- t(1,-7,1,10,(1, 3, 1))
- t(1,-7,1,100,(1, 93, 1))
- t(1,-7,5,-100,(-100, -100, 5))
- t(1,-7,5,-15,(-15, -15, 5))
- t(1,-7,5,-3,(-3, -3, 5))
- t(1,-7,5,0,(0, 0, 5))
- t(1,-7,5,1,(1, 0, 5))
- t(1,-7,5,5,(1, 0, 5))
- t(1,-7,5,10,(1, 3, 5))
- t(1,-7,5,100,(1, 93, 5))
- t(1,-7,20,-100,(-100, -100, 20))
- t(1,-7,20,-15,(-15, -15, 20))
- t(1,-7,20,-3,(-3, -3, 20))
- t(1,-7,20,0,(0, 0, 20))
- t(1,-7,20,1,(1, 0, 20))
- t(1,-7,20,5,(1, 0, 20))
- t(1,-7,20,10,(1, 3, 20))
- t(1,-7,20,100,(1, 93, 20))
- t(1,-2,-5,-100,(-101, -101, -5))
- t(1,-2,-5,-15,(-16, -16, -5))
- t(1,-2,-5,-3,(-4, -4, -5))
- t(1,-2,-5,0,(-1, -1, -5))
- t(1,-2,-5,1,(0, -1, -5))
- t(1,-2,-5,5,(1, 3, -5))
- t(1,-2,-5,10,(1, 8, -5))
- t(1,-2,-5,100,(1, 98, -5))
- t(1,-2,-3,-100,(-101, -101, -3))
- t(1,-2,-3,-15,(-16, -16, -3))
- t(1,-2,-3,-3,(-4, -4, -3))
- t(1,-2,-3,0,(-1, -1, -3))
- t(1,-2,-3,1,(0, -1, -3))
- t(1,-2,-3,5,(1, 3, -3))
- t(1,-2,-3,10,(1, 8, -3))
- t(1,-2,-3,100,(1, 98, -3))
- t(1,-2,-1,-100,(-101, -101, -1))
- t(1,-2,-1,-15,(-16, -16, -1))
- t(1,-2,-1,-3,(-4, -4, -1))
- t(1,-2,-1,0,(-1, -1, -1))
- t(1,-2,-1,1,(0, -1, -1))
- t(1,-2,-1,5,(1, 3, -1))
- t(1,-2,-1,10,(1, 8, -1))
- t(1,-2,-1,100,(1, 98, -1))
- t(1,-2,1,-100,(-100, -100, 1))
- t(1,-2,1,-15,(-15, -15, 1))
- t(1,-2,1,-3,(-3, -3, 1))
- t(1,-2,1,0,(0, 0, 1))
- t(1,-2,1,1,(1, 0, 1))
- t(1,-2,1,5,(1, 3, 1))
- t(1,-2,1,10,(1, 8, 1))
- t(1,-2,1,100,(1, 98, 1))
- t(1,-2,5,-100,(-100, -100, 5))
- t(1,-2,5,-15,(-15, -15, 5))
- t(1,-2,5,-3,(-3, -3, 5))
- t(1,-2,5,0,(0, 0, 5))
- t(1,-2,5,1,(1, 0, 5))
- t(1,-2,5,5,(1, 3, 5))
- t(1,-2,5,10,(1, 8, 5))
- t(1,-2,5,100,(1, 98, 5))
- t(1,-2,20,-100,(-100, -100, 20))
- t(1,-2,20,-15,(-15, -15, 20))
- t(1,-2,20,-3,(-3, -3, 20))
- t(1,-2,20,0,(0, 0, 20))
- t(1,-2,20,1,(1, 0, 20))
- t(1,-2,20,5,(1, 3, 20))
- t(1,-2,20,10,(1, 8, 20))
- t(1,-2,20,100,(1, 98, 20))
- t(1,0,-5,-100,(-101, -101, -5))
- t(1,0,-5,-15,(-16, -16, -5))
- t(1,0,-5,-3,(-4, -4, -5))
- t(1,0,-5,0,(-1, -1, -5))
- t(1,0,-5,1,(0, 0, -5))
- t(1,0,-5,5,(1, 0, -5))
- t(1,0,-5,10,(1, 0, -5))
- t(1,0,-5,100,(1, 0, -5))
- t(1,0,-3,-100,(-101, -101, -3))
- t(1,0,-3,-15,(-16, -16, -3))
- t(1,0,-3,-3,(-4, -4, -3))
- t(1,0,-3,0,(-1, -1, -3))
- t(1,0,-3,1,(0, 0, -3))
- t(1,0,-3,5,(1, 0, -3))
- t(1,0,-3,10,(1, 0, -3))
- t(1,0,-3,100,(1, 0, -3))
- t(1,0,-1,-100,(-101, -101, -1))
- t(1,0,-1,-15,(-16, -16, -1))
- t(1,0,-1,-3,(-4, -4, -1))
- t(1,0,-1,0,(-1, -1, -1))
- t(1,0,-1,1,(0, 0, -1))
- t(1,0,-1,5,(1, 0, -1))
- t(1,0,-1,10,(1, 0, -1))
- t(1,0,-1,100,(1, 0, -1))
- t(1,0,1,-100,(-100, -100, 1))
- t(1,0,1,-15,(-15, -15, 1))
- t(1,0,1,-3,(-3, -3, 1))
- t(1,0,1,0,(0, 0, 1))
- t(1,0,1,1,(1, 0, 1))
- t(1,0,1,5,(1, 0, 1))
- t(1,0,1,10,(1, 0, 1))
- t(1,0,1,100,(1, 0, 1))
- t(1,0,5,-100,(-100, -100, 5))
- t(1,0,5,-15,(-15, -15, 5))
- t(1,0,5,-3,(-3, -3, 5))
- t(1,0,5,0,(0, 0, 5))
- t(1,0,5,1,(1, 0, 5))
- t(1,0,5,5,(1, 0, 5))
- t(1,0,5,10,(1, 0, 5))
- t(1,0,5,100,(1, 0, 5))
- t(1,0,20,-100,(-100, -100, 20))
- t(1,0,20,-15,(-15, -15, 20))
- t(1,0,20,-3,(-3, -3, 20))
- t(1,0,20,0,(0, 0, 20))
- t(1,0,20,1,(1, 0, 20))
- t(1,0,20,5,(1, 0, 20))
- t(1,0,20,10,(1, 0, 20))
- t(1,0,20,100,(1, 0, 20))
- t(1,1,-5,-100,(-101, -101, -5))
- t(1,1,-5,-15,(-16, -16, -5))
- t(1,1,-5,-3,(-4, -4, -5))
- t(1,1,-5,0,(-1, -1, -5))
- t(1,1,-5,1,(0, 0, -5))
- t(1,1,-5,5,(1, 1, -5))
- t(1,1,-5,10,(1, 1, -5))
- t(1,1,-5,100,(1, 1, -5))
- t(1,1,-3,-100,(-101, -101, -3))
- t(1,1,-3,-15,(-16, -16, -3))
- t(1,1,-3,-3,(-4, -4, -3))
- t(1,1,-3,0,(-1, -1, -3))
- t(1,1,-3,1,(0, 0, -3))
- t(1,1,-3,5,(1, 1, -3))
- t(1,1,-3,10,(1, 1, -3))
- t(1,1,-3,100,(1, 1, -3))
- t(1,1,-1,-100,(-101, -101, -1))
- t(1,1,-1,-15,(-16, -16, -1))
- t(1,1,-1,-3,(-4, -4, -1))
- t(1,1,-1,0,(-1, -1, -1))
- t(1,1,-1,1,(0, 0, -1))
- t(1,1,-1,5,(1, 1, -1))
- t(1,1,-1,10,(1, 1, -1))
- t(1,1,-1,100,(1, 1, -1))
- t(1,1,1,-100,(-100, -100, 1))
- t(1,1,1,-15,(-15, -15, 1))
- t(1,1,1,-3,(-3, -3, 1))
- t(1,1,1,0,(0, 0, 1))
- t(1,1,1,1,(1, 1, 1))
- t(1,1,1,5,(1, 1, 1))
- t(1,1,1,10,(1, 1, 1))
- t(1,1,1,100,(1, 1, 1))
- t(1,1,5,-100,(-100, -100, 5))
- t(1,1,5,-15,(-15, -15, 5))
- t(1,1,5,-3,(-3, -3, 5))
- t(1,1,5,0,(0, 0, 5))
- t(1,1,5,1,(1, 1, 5))
- t(1,1,5,5,(1, 1, 5))
- t(1,1,5,10,(1, 1, 5))
- t(1,1,5,100,(1, 1, 5))
- t(1,1,20,-100,(-100, -100, 20))
- t(1,1,20,-15,(-15, -15, 20))
- t(1,1,20,-3,(-3, -3, 20))
- t(1,1,20,0,(0, 0, 20))
- t(1,1,20,1,(1, 1, 20))
- t(1,1,20,5,(1, 1, 20))
- t(1,1,20,10,(1, 1, 20))
- t(1,1,20,100,(1, 1, 20))
- t(1,6,-5,-100,(-101, -101, -5))
- t(1,6,-5,-15,(-16, -16, -5))
- t(1,6,-5,-3,(-4, -4, -5))
- t(1,6,-5,0,(-1, -1, -5))
- t(1,6,-5,1,(0, 0, -5))
- t(1,6,-5,5,(1, 4, -5))
- t(1,6,-5,10,(1, 6, -5))
- t(1,6,-5,100,(1, 6, -5))
- t(1,6,-3,-100,(-101, -101, -3))
- t(1,6,-3,-15,(-16, -16, -3))
- t(1,6,-3,-3,(-4, -4, -3))
- t(1,6,-3,0,(-1, -1, -3))
- t(1,6,-3,1,(0, 0, -3))
- t(1,6,-3,5,(1, 4, -3))
- t(1,6,-3,10,(1, 6, -3))
- t(1,6,-3,100,(1, 6, -3))
- t(1,6,-1,-100,(-101, -101, -1))
- t(1,6,-1,-15,(-16, -16, -1))
- t(1,6,-1,-3,(-4, -4, -1))
- t(1,6,-1,0,(-1, -1, -1))
- t(1,6,-1,1,(0, 0, -1))
- t(1,6,-1,5,(1, 4, -1))
- t(1,6,-1,10,(1, 6, -1))
- t(1,6,-1,100,(1, 6, -1))
- t(1,6,1,-100,(-100, -100, 1))
- t(1,6,1,-15,(-15, -15, 1))
- t(1,6,1,-3,(-3, -3, 1))
- t(1,6,1,0,(0, 0, 1))
- t(1,6,1,1,(1, 1, 1))
- t(1,6,1,5,(1, 5, 1))
- t(1,6,1,10,(1, 6, 1))
- t(1,6,1,100,(1, 6, 1))
- t(1,6,5,-100,(-100, -100, 5))
- t(1,6,5,-15,(-15, -15, 5))
- t(1,6,5,-3,(-3, -3, 5))
- t(1,6,5,0,(0, 0, 5))
- t(1,6,5,1,(1, 1, 5))
- t(1,6,5,5,(1, 5, 5))
- t(1,6,5,10,(1, 6, 5))
- t(1,6,5,100,(1, 6, 5))
- t(1,6,20,-100,(-100, -100, 20))
- t(1,6,20,-15,(-15, -15, 20))
- t(1,6,20,-3,(-3, -3, 20))
- t(1,6,20,0,(0, 0, 20))
- t(1,6,20,1,(1, 1, 20))
- t(1,6,20,5,(1, 5, 20))
- t(1,6,20,10,(1, 6, 20))
- t(1,6,20,100,(1, 6, 20))
- t(1,10,-5,-100,(-101, -101, -5))
- t(1,10,-5,-15,(-16, -16, -5))
- t(1,10,-5,-3,(-4, -4, -5))
- t(1,10,-5,0,(-1, -1, -5))
- t(1,10,-5,1,(0, 0, -5))
- t(1,10,-5,5,(1, 4, -5))
- t(1,10,-5,10,(1, 9, -5))
- t(1,10,-5,100,(1, 10, -5))
- t(1,10,-3,-100,(-101, -101, -3))
- t(1,10,-3,-15,(-16, -16, -3))
- t(1,10,-3,-3,(-4, -4, -3))
- t(1,10,-3,0,(-1, -1, -3))
- t(1,10,-3,1,(0, 0, -3))
- t(1,10,-3,5,(1, 4, -3))
- t(1,10,-3,10,(1, 9, -3))
- t(1,10,-3,100,(1, 10, -3))
- t(1,10,-1,-100,(-101, -101, -1))
- t(1,10,-1,-15,(-16, -16, -1))
- t(1,10,-1,-3,(-4, -4, -1))
- t(1,10,-1,0,(-1, -1, -1))
- t(1,10,-1,1,(0, 0, -1))
- t(1,10,-1,5,(1, 4, -1))
- t(1,10,-1,10,(1, 9, -1))
- t(1,10,-1,100,(1, 10, -1))
- t(1,10,1,-100,(-100, -100, 1))
- t(1,10,1,-15,(-15, -15, 1))
- t(1,10,1,-3,(-3, -3, 1))
- t(1,10,1,0,(0, 0, 1))
- t(1,10,1,1,(1, 1, 1))
- t(1,10,1,5,(1, 5, 1))
- t(1,10,1,10,(1, 10, 1))
- t(1,10,1,100,(1, 10, 1))
- t(1,10,5,-100,(-100, -100, 5))
- t(1,10,5,-15,(-15, -15, 5))
- t(1,10,5,-3,(-3, -3, 5))
- t(1,10,5,0,(0, 0, 5))
- t(1,10,5,1,(1, 1, 5))
- t(1,10,5,5,(1, 5, 5))
- t(1,10,5,10,(1, 10, 5))
- t(1,10,5,100,(1, 10, 5))
- t(1,10,20,-100,(-100, -100, 20))
- t(1,10,20,-15,(-15, -15, 20))
- t(1,10,20,-3,(-3, -3, 20))
- t(1,10,20,0,(0, 0, 20))
- t(1,10,20,1,(1, 1, 20))
- t(1,10,20,5,(1, 5, 20))
- t(1,10,20,10,(1, 10, 20))
- t(1,10,20,100,(1, 10, 20))
- t(6,None,-5,-100,(-101, -1, -5))
- t(6,None,-5,-15,(-16, -1, -5))
- t(6,None,-5,-3,(-4, -1, -5))
- t(6,None,-5,0,(-1, -1, -5))
- t(6,None,-5,1,(0, -1, -5))
- t(6,None,-5,5,(4, -1, -5))
- t(6,None,-5,10,(6, -1, -5))
- t(6,None,-5,100,(6, -1, -5))
- t(6,None,-3,-100,(-101, -1, -3))
- t(6,None,-3,-15,(-16, -1, -3))
- t(6,None,-3,-3,(-4, -1, -3))
- t(6,None,-3,0,(-1, -1, -3))
- t(6,None,-3,1,(0, -1, -3))
- t(6,None,-3,5,(4, -1, -3))
- t(6,None,-3,10,(6, -1, -3))
- t(6,None,-3,100,(6, -1, -3))
- t(6,None,-1,-100,(-101, -1, -1))
- t(6,None,-1,-15,(-16, -1, -1))
- t(6,None,-1,-3,(-4, -1, -1))
- t(6,None,-1,0,(-1, -1, -1))
- t(6,None,-1,1,(0, -1, -1))
- t(6,None,-1,5,(4, -1, -1))
- t(6,None,-1,10,(6, -1, -1))
- t(6,None,-1,100,(6, -1, -1))
- t(6,None,1,-100,(-100, -100, 1))
- t(6,None,1,-15,(-15, -15, 1))
- t(6,None,1,-3,(-3, -3, 1))
- t(6,None,1,0,(0, 0, 1))
- t(6,None,1,1,(1, 1, 1))
- t(6,None,1,5,(5, 5, 1))
- t(6,None,1,10,(6, 10, 1))
- t(6,None,1,100,(6, 100, 1))
- t(6,None,5,-100,(-100, -100, 5))
- t(6,None,5,-15,(-15, -15, 5))
- t(6,None,5,-3,(-3, -3, 5))
- t(6,None,5,0,(0, 0, 5))
- t(6,None,5,1,(1, 1, 5))
- t(6,None,5,5,(5, 5, 5))
- t(6,None,5,10,(6, 10, 5))
- t(6,None,5,100,(6, 100, 5))
- t(6,None,20,-100,(-100, -100, 20))
- t(6,None,20,-15,(-15, -15, 20))
- t(6,None,20,-3,(-3, -3, 20))
- t(6,None,20,0,(0, 0, 20))
- t(6,None,20,1,(1, 1, 20))
- t(6,None,20,5,(5, 5, 20))
- t(6,None,20,10,(6, 10, 20))
- t(6,None,20,100,(6, 100, 20))
- t(6,-7,-5,-100,(-101, -101, -5))
- t(6,-7,-5,-15,(-16, -16, -5))
- t(6,-7,-5,-3,(-4, -4, -5))
- t(6,-7,-5,0,(-1, -1, -5))
- t(6,-7,-5,1,(0, -1, -5))
- t(6,-7,-5,5,(4, -1, -5))
- t(6,-7,-5,10,(6, 3, -5))
- t(6,-7,-5,100,(6, 93, -5))
- t(6,-7,-3,-100,(-101, -101, -3))
- t(6,-7,-3,-15,(-16, -16, -3))
- t(6,-7,-3,-3,(-4, -4, -3))
- t(6,-7,-3,0,(-1, -1, -3))
- t(6,-7,-3,1,(0, -1, -3))
- t(6,-7,-3,5,(4, -1, -3))
- t(6,-7,-3,10,(6, 3, -3))
- t(6,-7,-3,100,(6, 93, -3))
- t(6,-7,-1,-100,(-101, -101, -1))
- t(6,-7,-1,-15,(-16, -16, -1))
- t(6,-7,-1,-3,(-4, -4, -1))
- t(6,-7,-1,0,(-1, -1, -1))
- t(6,-7,-1,1,(0, -1, -1))
- t(6,-7,-1,5,(4, -1, -1))
- t(6,-7,-1,10,(6, 3, -1))
- t(6,-7,-1,100,(6, 93, -1))
- t(6,-7,1,-100,(-100, -100, 1))
- t(6,-7,1,-15,(-15, -15, 1))
- t(6,-7,1,-3,(-3, -3, 1))
- t(6,-7,1,0,(0, 0, 1))
- t(6,-7,1,1,(1, 0, 1))
- t(6,-7,1,5,(5, 0, 1))
- t(6,-7,1,10,(6, 3, 1))
- t(6,-7,1,100,(6, 93, 1))
- t(6,-7,5,-100,(-100, -100, 5))
- t(6,-7,5,-15,(-15, -15, 5))
- t(6,-7,5,-3,(-3, -3, 5))
- t(6,-7,5,0,(0, 0, 5))
- t(6,-7,5,1,(1, 0, 5))
- t(6,-7,5,5,(5, 0, 5))
- t(6,-7,5,10,(6, 3, 5))
- t(6,-7,5,100,(6, 93, 5))
- t(6,-7,20,-100,(-100, -100, 20))
- t(6,-7,20,-15,(-15, -15, 20))
- t(6,-7,20,-3,(-3, -3, 20))
- t(6,-7,20,0,(0, 0, 20))
- t(6,-7,20,1,(1, 0, 20))
- t(6,-7,20,5,(5, 0, 20))
- t(6,-7,20,10,(6, 3, 20))
- t(6,-7,20,100,(6, 93, 20))
- t(6,-2,-5,-100,(-101, -101, -5))
- t(6,-2,-5,-15,(-16, -16, -5))
- t(6,-2,-5,-3,(-4, -4, -5))
- t(6,-2,-5,0,(-1, -1, -5))
- t(6,-2,-5,1,(0, -1, -5))
- t(6,-2,-5,5,(4, 3, -5))
- t(6,-2,-5,10,(6, 8, -5))
- t(6,-2,-5,100,(6, 98, -5))
- t(6,-2,-3,-100,(-101, -101, -3))
- t(6,-2,-3,-15,(-16, -16, -3))
- t(6,-2,-3,-3,(-4, -4, -3))
- t(6,-2,-3,0,(-1, -1, -3))
- t(6,-2,-3,1,(0, -1, -3))
- t(6,-2,-3,5,(4, 3, -3))
- t(6,-2,-3,10,(6, 8, -3))
- t(6,-2,-3,100,(6, 98, -3))
- t(6,-2,-1,-100,(-101, -101, -1))
- t(6,-2,-1,-15,(-16, -16, -1))
- t(6,-2,-1,-3,(-4, -4, -1))
- t(6,-2,-1,0,(-1, -1, -1))
- t(6,-2,-1,1,(0, -1, -1))
- t(6,-2,-1,5,(4, 3, -1))
- t(6,-2,-1,10,(6, 8, -1))
- t(6,-2,-1,100,(6, 98, -1))
- t(6,-2,1,-100,(-100, -100, 1))
- t(6,-2,1,-15,(-15, -15, 1))
- t(6,-2,1,-3,(-3, -3, 1))
- t(6,-2,1,0,(0, 0, 1))
- t(6,-2,1,1,(1, 0, 1))
- t(6,-2,1,5,(5, 3, 1))
- t(6,-2,1,10,(6, 8, 1))
- t(6,-2,1,100,(6, 98, 1))
- t(6,-2,5,-100,(-100, -100, 5))
- t(6,-2,5,-15,(-15, -15, 5))
- t(6,-2,5,-3,(-3, -3, 5))
- t(6,-2,5,0,(0, 0, 5))
- t(6,-2,5,1,(1, 0, 5))
- t(6,-2,5,5,(5, 3, 5))
- t(6,-2,5,10,(6, 8, 5))
- t(6,-2,5,100,(6, 98, 5))
- t(6,-2,20,-100,(-100, -100, 20))
- t(6,-2,20,-15,(-15, -15, 20))
- t(6,-2,20,-3,(-3, -3, 20))
- t(6,-2,20,0,(0, 0, 20))
- t(6,-2,20,1,(1, 0, 20))
- t(6,-2,20,5,(5, 3, 20))
- t(6,-2,20,10,(6, 8, 20))
- t(6,-2,20,100,(6, 98, 20))
- t(6,0,-5,-100,(-101, -101, -5))
- t(6,0,-5,-15,(-16, -16, -5))
- t(6,0,-5,-3,(-4, -4, -5))
- t(6,0,-5,0,(-1, -1, -5))
- t(6,0,-5,1,(0, 0, -5))
- t(6,0,-5,5,(4, 0, -5))
- t(6,0,-5,10,(6, 0, -5))
- t(6,0,-5,100,(6, 0, -5))
- t(6,0,-3,-100,(-101, -101, -3))
- t(6,0,-3,-15,(-16, -16, -3))
- t(6,0,-3,-3,(-4, -4, -3))
- t(6,0,-3,0,(-1, -1, -3))
- t(6,0,-3,1,(0, 0, -3))
- t(6,0,-3,5,(4, 0, -3))
- t(6,0,-3,10,(6, 0, -3))
- t(6,0,-3,100,(6, 0, -3))
- t(6,0,-1,-100,(-101, -101, -1))
- t(6,0,-1,-15,(-16, -16, -1))
- t(6,0,-1,-3,(-4, -4, -1))
- t(6,0,-1,0,(-1, -1, -1))
- t(6,0,-1,1,(0, 0, -1))
- t(6,0,-1,5,(4, 0, -1))
- t(6,0,-1,10,(6, 0, -1))
- t(6,0,-1,100,(6, 0, -1))
- t(6,0,1,-100,(-100, -100, 1))
- t(6,0,1,-15,(-15, -15, 1))
- t(6,0,1,-3,(-3, -3, 1))
- t(6,0,1,0,(0, 0, 1))
- t(6,0,1,1,(1, 0, 1))
- t(6,0,1,5,(5, 0, 1))
- t(6,0,1,10,(6, 0, 1))
- t(6,0,1,100,(6, 0, 1))
- t(6,0,5,-100,(-100, -100, 5))
- t(6,0,5,-15,(-15, -15, 5))
- t(6,0,5,-3,(-3, -3, 5))
- t(6,0,5,0,(0, 0, 5))
- t(6,0,5,1,(1, 0, 5))
- t(6,0,5,5,(5, 0, 5))
- t(6,0,5,10,(6, 0, 5))
- t(6,0,5,100,(6, 0, 5))
- t(6,0,20,-100,(-100, -100, 20))
- t(6,0,20,-15,(-15, -15, 20))
- t(6,0,20,-3,(-3, -3, 20))
- t(6,0,20,0,(0, 0, 20))
- t(6,0,20,1,(1, 0, 20))
- t(6,0,20,5,(5, 0, 20))
- t(6,0,20,10,(6, 0, 20))
- t(6,0,20,100,(6, 0, 20))
- t(6,1,-5,-100,(-101, -101, -5))
- t(6,1,-5,-15,(-16, -16, -5))
- t(6,1,-5,-3,(-4, -4, -5))
- t(6,1,-5,0,(-1, -1, -5))
- t(6,1,-5,1,(0, 0, -5))
- t(6,1,-5,5,(4, 1, -5))
- t(6,1,-5,10,(6, 1, -5))
- t(6,1,-5,100,(6, 1, -5))
- t(6,1,-3,-100,(-101, -101, -3))
- t(6,1,-3,-15,(-16, -16, -3))
- t(6,1,-3,-3,(-4, -4, -3))
- t(6,1,-3,0,(-1, -1, -3))
- t(6,1,-3,1,(0, 0, -3))
- t(6,1,-3,5,(4, 1, -3))
- t(6,1,-3,10,(6, 1, -3))
- t(6,1,-3,100,(6, 1, -3))
- t(6,1,-1,-100,(-101, -101, -1))
- t(6,1,-1,-15,(-16, -16, -1))
- t(6,1,-1,-3,(-4, -4, -1))
- t(6,1,-1,0,(-1, -1, -1))
- t(6,1,-1,1,(0, 0, -1))
- t(6,1,-1,5,(4, 1, -1))
- t(6,1,-1,10,(6, 1, -1))
- t(6,1,-1,100,(6, 1, -1))
- t(6,1,1,-100,(-100, -100, 1))
- t(6,1,1,-15,(-15, -15, 1))
- t(6,1,1,-3,(-3, -3, 1))
- t(6,1,1,0,(0, 0, 1))
- t(6,1,1,1,(1, 1, 1))
- t(6,1,1,5,(5, 1, 1))
- t(6,1,1,10,(6, 1, 1))
- t(6,1,1,100,(6, 1, 1))
- t(6,1,5,-100,(-100, -100, 5))
- t(6,1,5,-15,(-15, -15, 5))
- t(6,1,5,-3,(-3, -3, 5))
- t(6,1,5,0,(0, 0, 5))
- t(6,1,5,1,(1, 1, 5))
- t(6,1,5,5,(5, 1, 5))
- t(6,1,5,10,(6, 1, 5))
- t(6,1,5,100,(6, 1, 5))
- t(6,1,20,-100,(-100, -100, 20))
- t(6,1,20,-15,(-15, -15, 20))
- t(6,1,20,-3,(-3, -3, 20))
- t(6,1,20,0,(0, 0, 20))
- t(6,1,20,1,(1, 1, 20))
- t(6,1,20,5,(5, 1, 20))
- t(6,1,20,10,(6, 1, 20))
- t(6,1,20,100,(6, 1, 20))
- t(6,6,-5,-100,(-101, -101, -5))
- t(6,6,-5,-15,(-16, -16, -5))
- t(6,6,-5,-3,(-4, -4, -5))
- t(6,6,-5,0,(-1, -1, -5))
- t(6,6,-5,1,(0, 0, -5))
- t(6,6,-5,5,(4, 4, -5))
- t(6,6,-5,10,(6, 6, -5))
- t(6,6,-5,100,(6, 6, -5))
- t(6,6,-3,-100,(-101, -101, -3))
- t(6,6,-3,-15,(-16, -16, -3))
- t(6,6,-3,-3,(-4, -4, -3))
- t(6,6,-3,0,(-1, -1, -3))
- t(6,6,-3,1,(0, 0, -3))
- t(6,6,-3,5,(4, 4, -3))
- t(6,6,-3,10,(6, 6, -3))
- t(6,6,-3,100,(6, 6, -3))
- t(6,6,-1,-100,(-101, -101, -1))
- t(6,6,-1,-15,(-16, -16, -1))
- t(6,6,-1,-3,(-4, -4, -1))
- t(6,6,-1,0,(-1, -1, -1))
- t(6,6,-1,1,(0, 0, -1))
- t(6,6,-1,5,(4, 4, -1))
- t(6,6,-1,10,(6, 6, -1))
- t(6,6,-1,100,(6, 6, -1))
- t(6,6,1,-100,(-100, -100, 1))
- t(6,6,1,-15,(-15, -15, 1))
- t(6,6,1,-3,(-3, -3, 1))
- t(6,6,1,0,(0, 0, 1))
- t(6,6,1,1,(1, 1, 1))
- t(6,6,1,5,(5, 5, 1))
- t(6,6,1,10,(6, 6, 1))
- t(6,6,1,100,(6, 6, 1))
- t(6,6,5,-100,(-100, -100, 5))
- t(6,6,5,-15,(-15, -15, 5))
- t(6,6,5,-3,(-3, -3, 5))
- t(6,6,5,0,(0, 0, 5))
- t(6,6,5,1,(1, 1, 5))
- t(6,6,5,5,(5, 5, 5))
- t(6,6,5,10,(6, 6, 5))
- t(6,6,5,100,(6, 6, 5))
- t(6,6,20,-100,(-100, -100, 20))
- t(6,6,20,-15,(-15, -15, 20))
- t(6,6,20,-3,(-3, -3, 20))
- t(6,6,20,0,(0, 0, 20))
- t(6,6,20,1,(1, 1, 20))
- t(6,6,20,5,(5, 5, 20))
- t(6,6,20,10,(6, 6, 20))
- t(6,6,20,100,(6, 6, 20))
- t(6,10,-5,-100,(-101, -101, -5))
- t(6,10,-5,-15,(-16, -16, -5))
- t(6,10,-5,-3,(-4, -4, -5))
- t(6,10,-5,0,(-1, -1, -5))
- t(6,10,-5,1,(0, 0, -5))
- t(6,10,-5,5,(4, 4, -5))
- t(6,10,-5,10,(6, 9, -5))
- t(6,10,-5,100,(6, 10, -5))
- t(6,10,-3,-100,(-101, -101, -3))
- t(6,10,-3,-15,(-16, -16, -3))
- t(6,10,-3,-3,(-4, -4, -3))
- t(6,10,-3,0,(-1, -1, -3))
- t(6,10,-3,1,(0, 0, -3))
- t(6,10,-3,5,(4, 4, -3))
- t(6,10,-3,10,(6, 9, -3))
- t(6,10,-3,100,(6, 10, -3))
- t(6,10,-1,-100,(-101, -101, -1))
- t(6,10,-1,-15,(-16, -16, -1))
- t(6,10,-1,-3,(-4, -4, -1))
- t(6,10,-1,0,(-1, -1, -1))
- t(6,10,-1,1,(0, 0, -1))
- t(6,10,-1,5,(4, 4, -1))
- t(6,10,-1,10,(6, 9, -1))
- t(6,10,-1,100,(6, 10, -1))
- t(6,10,1,-100,(-100, -100, 1))
- t(6,10,1,-15,(-15, -15, 1))
- t(6,10,1,-3,(-3, -3, 1))
- t(6,10,1,0,(0, 0, 1))
- t(6,10,1,1,(1, 1, 1))
- t(6,10,1,5,(5, 5, 1))
- t(6,10,1,10,(6, 10, 1))
- t(6,10,1,100,(6, 10, 1))
- def c():
- t(6,10,5,-100,(-100, -100, 5))
- t(6,10,5,-15,(-15, -15, 5))
- t(6,10,5,-3,(-3, -3, 5))
- t(6,10,5,0,(0, 0, 5))
- t(6,10,5,1,(1, 1, 5))
- t(6,10,5,5,(5, 5, 5))
- t(6,10,5,10,(6, 10, 5))
- t(6,10,5,100,(6, 10, 5))
- t(6,10,20,-100,(-100, -100, 20))
- t(6,10,20,-15,(-15, -15, 20))
- t(6,10,20,-3,(-3, -3, 20))
- t(6,10,20,0,(0, 0, 20))
- t(6,10,20,1,(1, 1, 20))
- t(6,10,20,5,(5, 5, 20))
- t(6,10,20,10,(6, 10, 20))
- t(6,10,20,100,(6, 10, 20))
- t(10,None,-5,-100,(-101, -1, -5))
- t(10,None,-5,-15,(-16, -1, -5))
- t(10,None,-5,-3,(-4, -1, -5))
- t(10,None,-5,0,(-1, -1, -5))
- t(10,None,-5,1,(0, -1, -5))
- t(10,None,-5,5,(4, -1, -5))
- t(10,None,-5,10,(9, -1, -5))
- t(10,None,-5,100,(10, -1, -5))
- t(10,None,-3,-100,(-101, -1, -3))
- t(10,None,-3,-15,(-16, -1, -3))
- t(10,None,-3,-3,(-4, -1, -3))
- t(10,None,-3,0,(-1, -1, -3))
- t(10,None,-3,1,(0, -1, -3))
- t(10,None,-3,5,(4, -1, -3))
- t(10,None,-3,10,(9, -1, -3))
- t(10,None,-3,100,(10, -1, -3))
- t(10,None,-1,-100,(-101, -1, -1))
- t(10,None,-1,-15,(-16, -1, -1))
- t(10,None,-1,-3,(-4, -1, -1))
- t(10,None,-1,0,(-1, -1, -1))
- t(10,None,-1,1,(0, -1, -1))
- t(10,None,-1,5,(4, -1, -1))
- t(10,None,-1,10,(9, -1, -1))
- t(10,None,-1,100,(10, -1, -1))
- t(10,None,1,-100,(-100, -100, 1))
- t(10,None,1,-15,(-15, -15, 1))
- t(10,None,1,-3,(-3, -3, 1))
- t(10,None,1,0,(0, 0, 1))
- t(10,None,1,1,(1, 1, 1))
- t(10,None,1,5,(5, 5, 1))
- t(10,None,1,10,(10, 10, 1))
- t(10,None,1,100,(10, 100, 1))
- t(10,None,5,-100,(-100, -100, 5))
- t(10,None,5,-15,(-15, -15, 5))
- t(10,None,5,-3,(-3, -3, 5))
- t(10,None,5,0,(0, 0, 5))
- t(10,None,5,1,(1, 1, 5))
- t(10,None,5,5,(5, 5, 5))
- t(10,None,5,10,(10, 10, 5))
- t(10,None,5,100,(10, 100, 5))
- t(10,None,20,-100,(-100, -100, 20))
- t(10,None,20,-15,(-15, -15, 20))
- t(10,None,20,-3,(-3, -3, 20))
- t(10,None,20,0,(0, 0, 20))
- t(10,None,20,1,(1, 1, 20))
- t(10,None,20,5,(5, 5, 20))
- t(10,None,20,10,(10, 10, 20))
- t(10,None,20,100,(10, 100, 20))
- t(10,-7,-5,-100,(-101, -101, -5))
- t(10,-7,-5,-15,(-16, -16, -5))
- t(10,-7,-5,-3,(-4, -4, -5))
- t(10,-7,-5,0,(-1, -1, -5))
- t(10,-7,-5,1,(0, -1, -5))
- t(10,-7,-5,5,(4, -1, -5))
- t(10,-7,-5,10,(9, 3, -5))
- t(10,-7,-5,100,(10, 93, -5))
- t(10,-7,-3,-100,(-101, -101, -3))
- t(10,-7,-3,-15,(-16, -16, -3))
- t(10,-7,-3,-3,(-4, -4, -3))
- t(10,-7,-3,0,(-1, -1, -3))
- t(10,-7,-3,1,(0, -1, -3))
- t(10,-7,-3,5,(4, -1, -3))
- t(10,-7,-3,10,(9, 3, -3))
- t(10,-7,-3,100,(10, 93, -3))
- t(10,-7,-1,-100,(-101, -101, -1))
- t(10,-7,-1,-15,(-16, -16, -1))
- t(10,-7,-1,-3,(-4, -4, -1))
- t(10,-7,-1,0,(-1, -1, -1))
- t(10,-7,-1,1,(0, -1, -1))
- t(10,-7,-1,5,(4, -1, -1))
- t(10,-7,-1,10,(9, 3, -1))
- t(10,-7,-1,100,(10, 93, -1))
- t(10,-7,1,-100,(-100, -100, 1))
- t(10,-7,1,-15,(-15, -15, 1))
- t(10,-7,1,-3,(-3, -3, 1))
- t(10,-7,1,0,(0, 0, 1))
- t(10,-7,1,1,(1, 0, 1))
- t(10,-7,1,5,(5, 0, 1))
- t(10,-7,1,10,(10, 3, 1))
- t(10,-7,1,100,(10, 93, 1))
- t(10,-7,5,-100,(-100, -100, 5))
- t(10,-7,5,-15,(-15, -15, 5))
- t(10,-7,5,-3,(-3, -3, 5))
- t(10,-7,5,0,(0, 0, 5))
- t(10,-7,5,1,(1, 0, 5))
- t(10,-7,5,5,(5, 0, 5))
- t(10,-7,5,10,(10, 3, 5))
- t(10,-7,5,100,(10, 93, 5))
- t(10,-7,20,-100,(-100, -100, 20))
- t(10,-7,20,-15,(-15, -15, 20))
- t(10,-7,20,-3,(-3, -3, 20))
- t(10,-7,20,0,(0, 0, 20))
- t(10,-7,20,1,(1, 0, 20))
- t(10,-7,20,5,(5, 0, 20))
- t(10,-7,20,10,(10, 3, 20))
- t(10,-7,20,100,(10, 93, 20))
- t(10,-2,-5,-100,(-101, -101, -5))
- t(10,-2,-5,-15,(-16, -16, -5))
- t(10,-2,-5,-3,(-4, -4, -5))
- t(10,-2,-5,0,(-1, -1, -5))
- t(10,-2,-5,1,(0, -1, -5))
- t(10,-2,-5,5,(4, 3, -5))
- t(10,-2,-5,10,(9, 8, -5))
- t(10,-2,-5,100,(10, 98, -5))
- t(10,-2,-3,-100,(-101, -101, -3))
- t(10,-2,-3,-15,(-16, -16, -3))
- t(10,-2,-3,-3,(-4, -4, -3))
- t(10,-2,-3,0,(-1, -1, -3))
- t(10,-2,-3,1,(0, -1, -3))
- t(10,-2,-3,5,(4, 3, -3))
- t(10,-2,-3,10,(9, 8, -3))
- t(10,-2,-3,100,(10, 98, -3))
- t(10,-2,-1,-100,(-101, -101, -1))
- t(10,-2,-1,-15,(-16, -16, -1))
- t(10,-2,-1,-3,(-4, -4, -1))
- t(10,-2,-1,0,(-1, -1, -1))
- t(10,-2,-1,1,(0, -1, -1))
- t(10,-2,-1,5,(4, 3, -1))
- t(10,-2,-1,10,(9, 8, -1))
- t(10,-2,-1,100,(10, 98, -1))
- t(10,-2,1,-100,(-100, -100, 1))
- t(10,-2,1,-15,(-15, -15, 1))
- t(10,-2,1,-3,(-3, -3, 1))
- t(10,-2,1,0,(0, 0, 1))
- t(10,-2,1,1,(1, 0, 1))
- t(10,-2,1,5,(5, 3, 1))
- t(10,-2,1,10,(10, 8, 1))
- t(10,-2,1,100,(10, 98, 1))
- t(10,-2,5,-100,(-100, -100, 5))
- t(10,-2,5,-15,(-15, -15, 5))
- t(10,-2,5,-3,(-3, -3, 5))
- t(10,-2,5,0,(0, 0, 5))
- t(10,-2,5,1,(1, 0, 5))
- t(10,-2,5,5,(5, 3, 5))
- t(10,-2,5,10,(10, 8, 5))
- t(10,-2,5,100,(10, 98, 5))
- t(10,-2,20,-100,(-100, -100, 20))
- t(10,-2,20,-15,(-15, -15, 20))
- t(10,-2,20,-3,(-3, -3, 20))
- t(10,-2,20,0,(0, 0, 20))
- t(10,-2,20,1,(1, 0, 20))
- t(10,-2,20,5,(5, 3, 20))
- t(10,-2,20,10,(10, 8, 20))
- t(10,-2,20,100,(10, 98, 20))
- t(10,0,-5,-100,(-101, -101, -5))
- t(10,0,-5,-15,(-16, -16, -5))
- t(10,0,-5,-3,(-4, -4, -5))
- t(10,0,-5,0,(-1, -1, -5))
- t(10,0,-5,1,(0, 0, -5))
- t(10,0,-5,5,(4, 0, -5))
- t(10,0,-5,10,(9, 0, -5))
- t(10,0,-5,100,(10, 0, -5))
- t(10,0,-3,-100,(-101, -101, -3))
- t(10,0,-3,-15,(-16, -16, -3))
- t(10,0,-3,-3,(-4, -4, -3))
- t(10,0,-3,0,(-1, -1, -3))
- t(10,0,-3,1,(0, 0, -3))
- t(10,0,-3,5,(4, 0, -3))
- t(10,0,-3,10,(9, 0, -3))
- t(10,0,-3,100,(10, 0, -3))
- t(10,0,-1,-100,(-101, -101, -1))
- t(10,0,-1,-15,(-16, -16, -1))
- t(10,0,-1,-3,(-4, -4, -1))
- t(10,0,-1,0,(-1, -1, -1))
- t(10,0,-1,1,(0, 0, -1))
- t(10,0,-1,5,(4, 0, -1))
- t(10,0,-1,10,(9, 0, -1))
- t(10,0,-1,100,(10, 0, -1))
- t(10,0,1,-100,(-100, -100, 1))
- t(10,0,1,-15,(-15, -15, 1))
- t(10,0,1,-3,(-3, -3, 1))
- t(10,0,1,0,(0, 0, 1))
- t(10,0,1,1,(1, 0, 1))
- t(10,0,1,5,(5, 0, 1))
- t(10,0,1,10,(10, 0, 1))
- t(10,0,1,100,(10, 0, 1))
- t(10,0,5,-100,(-100, -100, 5))
- t(10,0,5,-15,(-15, -15, 5))
- t(10,0,5,-3,(-3, -3, 5))
- t(10,0,5,0,(0, 0, 5))
- t(10,0,5,1,(1, 0, 5))
- t(10,0,5,5,(5, 0, 5))
- t(10,0,5,10,(10, 0, 5))
- t(10,0,5,100,(10, 0, 5))
- t(10,0,20,-100,(-100, -100, 20))
- t(10,0,20,-15,(-15, -15, 20))
- t(10,0,20,-3,(-3, -3, 20))
- t(10,0,20,0,(0, 0, 20))
- t(10,0,20,1,(1, 0, 20))
- t(10,0,20,5,(5, 0, 20))
- t(10,0,20,10,(10, 0, 20))
- t(10,0,20,100,(10, 0, 20))
- t(10,1,-5,-100,(-101, -101, -5))
- t(10,1,-5,-15,(-16, -16, -5))
- t(10,1,-5,-3,(-4, -4, -5))
- t(10,1,-5,0,(-1, -1, -5))
- t(10,1,-5,1,(0, 0, -5))
- t(10,1,-5,5,(4, 1, -5))
- t(10,1,-5,10,(9, 1, -5))
- t(10,1,-5,100,(10, 1, -5))
- t(10,1,-3,-100,(-101, -101, -3))
- t(10,1,-3,-15,(-16, -16, -3))
- t(10,1,-3,-3,(-4, -4, -3))
- t(10,1,-3,0,(-1, -1, -3))
- t(10,1,-3,1,(0, 0, -3))
- t(10,1,-3,5,(4, 1, -3))
- t(10,1,-3,10,(9, 1, -3))
- t(10,1,-3,100,(10, 1, -3))
- t(10,1,-1,-100,(-101, -101, -1))
- t(10,1,-1,-15,(-16, -16, -1))
- t(10,1,-1,-3,(-4, -4, -1))
- t(10,1,-1,0,(-1, -1, -1))
- t(10,1,-1,1,(0, 0, -1))
- t(10,1,-1,5,(4, 1, -1))
- t(10,1,-1,10,(9, 1, -1))
- t(10,1,-1,100,(10, 1, -1))
- t(10,1,1,-100,(-100, -100, 1))
- t(10,1,1,-15,(-15, -15, 1))
- t(10,1,1,-3,(-3, -3, 1))
- t(10,1,1,0,(0, 0, 1))
- t(10,1,1,1,(1, 1, 1))
- t(10,1,1,5,(5, 1, 1))
- t(10,1,1,10,(10, 1, 1))
- t(10,1,1,100,(10, 1, 1))
- t(10,1,5,-100,(-100, -100, 5))
- t(10,1,5,-15,(-15, -15, 5))
- t(10,1,5,-3,(-3, -3, 5))
- t(10,1,5,0,(0, 0, 5))
- t(10,1,5,1,(1, 1, 5))
- t(10,1,5,5,(5, 1, 5))
- t(10,1,5,10,(10, 1, 5))
- t(10,1,5,100,(10, 1, 5))
- t(10,1,20,-100,(-100, -100, 20))
- t(10,1,20,-15,(-15, -15, 20))
- t(10,1,20,-3,(-3, -3, 20))
- t(10,1,20,0,(0, 0, 20))
- t(10,1,20,1,(1, 1, 20))
- t(10,1,20,5,(5, 1, 20))
- t(10,1,20,10,(10, 1, 20))
- t(10,1,20,100,(10, 1, 20))
- t(10,6,-5,-100,(-101, -101, -5))
- t(10,6,-5,-15,(-16, -16, -5))
- t(10,6,-5,-3,(-4, -4, -5))
- t(10,6,-5,0,(-1, -1, -5))
- t(10,6,-5,1,(0, 0, -5))
- t(10,6,-5,5,(4, 4, -5))
- t(10,6,-5,10,(9, 6, -5))
- t(10,6,-5,100,(10, 6, -5))
- t(10,6,-3,-100,(-101, -101, -3))
- t(10,6,-3,-15,(-16, -16, -3))
- t(10,6,-3,-3,(-4, -4, -3))
- t(10,6,-3,0,(-1, -1, -3))
- t(10,6,-3,1,(0, 0, -3))
- t(10,6,-3,5,(4, 4, -3))
- t(10,6,-3,10,(9, 6, -3))
- t(10,6,-3,100,(10, 6, -3))
- t(10,6,-1,-100,(-101, -101, -1))
- t(10,6,-1,-15,(-16, -16, -1))
- t(10,6,-1,-3,(-4, -4, -1))
- t(10,6,-1,0,(-1, -1, -1))
- t(10,6,-1,1,(0, 0, -1))
- t(10,6,-1,5,(4, 4, -1))
- t(10,6,-1,10,(9, 6, -1))
- t(10,6,-1,100,(10, 6, -1))
- t(10,6,1,-100,(-100, -100, 1))
- t(10,6,1,-15,(-15, -15, 1))
- t(10,6,1,-3,(-3, -3, 1))
- t(10,6,1,0,(0, 0, 1))
- t(10,6,1,1,(1, 1, 1))
- t(10,6,1,5,(5, 5, 1))
- t(10,6,1,10,(10, 6, 1))
- t(10,6,1,100,(10, 6, 1))
- t(10,6,5,-100,(-100, -100, 5))
- t(10,6,5,-15,(-15, -15, 5))
- t(10,6,5,-3,(-3, -3, 5))
- t(10,6,5,0,(0, 0, 5))
- t(10,6,5,1,(1, 1, 5))
- t(10,6,5,5,(5, 5, 5))
- t(10,6,5,10,(10, 6, 5))
- t(10,6,5,100,(10, 6, 5))
- t(10,6,20,-100,(-100, -100, 20))
- t(10,6,20,-15,(-15, -15, 20))
- t(10,6,20,-3,(-3, -3, 20))
- t(10,6,20,0,(0, 0, 20))
- t(10,6,20,1,(1, 1, 20))
- t(10,6,20,5,(5, 5, 20))
- t(10,6,20,10,(10, 6, 20))
- t(10,6,20,100,(10, 6, 20))
- t(10,10,-5,-100,(-101, -101, -5))
- t(10,10,-5,-15,(-16, -16, -5))
- t(10,10,-5,-3,(-4, -4, -5))
- t(10,10,-5,0,(-1, -1, -5))
- t(10,10,-5,1,(0, 0, -5))
- t(10,10,-5,5,(4, 4, -5))
- t(10,10,-5,10,(9, 9, -5))
- t(10,10,-5,100,(10, 10, -5))
- t(10,10,-3,-100,(-101, -101, -3))
- t(10,10,-3,-15,(-16, -16, -3))
- t(10,10,-3,-3,(-4, -4, -3))
- t(10,10,-3,0,(-1, -1, -3))
- t(10,10,-3,1,(0, 0, -3))
- t(10,10,-3,5,(4, 4, -3))
- t(10,10,-3,10,(9, 9, -3))
- t(10,10,-3,100,(10, 10, -3))
- t(10,10,-1,-100,(-101, -101, -1))
- t(10,10,-1,-15,(-16, -16, -1))
- t(10,10,-1,-3,(-4, -4, -1))
- t(10,10,-1,0,(-1, -1, -1))
- t(10,10,-1,1,(0, 0, -1))
- t(10,10,-1,5,(4, 4, -1))
- t(10,10,-1,10,(9, 9, -1))
- t(10,10,-1,100,(10, 10, -1))
- t(10,10,1,-100,(-100, -100, 1))
- t(10,10,1,-15,(-15, -15, 1))
- t(10,10,1,-3,(-3, -3, 1))
- t(10,10,1,0,(0, 0, 1))
- t(10,10,1,1,(1, 1, 1))
- t(10,10,1,5,(5, 5, 1))
- t(10,10,1,10,(10, 10, 1))
- t(10,10,1,100,(10, 10, 1))
- t(10,10,5,-100,(-100, -100, 5))
- t(10,10,5,-15,(-15, -15, 5))
- t(10,10,5,-3,(-3, -3, 5))
- t(10,10,5,0,(0, 0, 5))
- t(10,10,5,1,(1, 1, 5))
- t(10,10,5,5,(5, 5, 5))
- t(10,10,5,10,(10, 10, 5))
- t(10,10,5,100,(10, 10, 5))
- t(10,10,20,-100,(-100, -100, 20))
- t(10,10,20,-15,(-15, -15, 20))
- t(10,10,20,-3,(-3, -3, 20))
- t(10,10,20,0,(0, 0, 20))
- t(10,10,20,1,(1, 1, 20))
- t(10,10,20,5,(5, 5, 20))
- t(10,10,20,10,(10, 10, 20))
- t(10,10,20,100,(10, 10, 20))
- def main():
- a()
- b()
- c()
- main()
- def test_getslice1():
- # verify __getslice__ is used for sequence types
- class C(list):
- def __getslice__(self, i, j):
- return (i,j)
- a = C()
- AreEqual(a[32:197], (32,197))
- def test_getslice_setslice2():
- # positive values work w/o len defined
- class C(object):
- def __getslice__(self, i, j):
- return 'Ok'
- def __setslice__(self, i, j, value):
- self.lastCall = 'set'
- def __delslice__(self, i,j):
- self.lastCall = 'delete'
-
- a = C()
- AreEqual(a[5:10], 'Ok')
- a.lastCall = ''
- a[5:10] = 'abc'
- AreEqual(a.lastCall, 'set')
- a.lastCall = ''
- del(a[5:10])
- AreEqual(a.lastCall, 'delete')
- # all values work w/ length defined,but don't call len if it's positive
- def test_getslice_setslice3():
- class C(object):
- def __init__(self):
- self.calls = []
- def __getslice__(self, i, j):
- self.calls.append('get')
- return 'Ok'
- def __setslice__(self, i, j, value):
- self.calls.append('set')
- def __delslice__(self, i, j):
- self.calls.append('delete')
- def __len__(self):
- self.calls.append('len')
- return 5
- a = C()
- AreEqual(a[3:5], 'Ok')
- AreEqual(a.calls, ['get'])
- a = C()
- a[3:5] = 'abc'
- AreEqual(a.calls, ['set'])
- a = C()
- del(a[3:5])
- AreEqual(a.calls, ['delete'])
- # but call length if it's negative (and we should only call length once)
- a = C()
- AreEqual(a[-1:5], 'Ok')
- AreEqual(a.calls, ['len', 'get'])
- a = C()
- AreEqual(a[1:-5], 'Ok')
- AreEqual(a.calls, ['len', 'get'])
- a = C()
- AreEqual(a[-1:-5], 'Ok')
- AreEqual(a.calls, ['len', 'get'])
- a = C()
- a[-1:5] = 'abc'
- AreEqual(a.calls, ['len', 'set'])
- a = C()
- a[1:-5] = 'abc'
- AreEqual(a.calls, ['len', 'set'])
- a = C()
- a[-1:-5] = 'abc'
- AreEqual(a.calls, ['len', 'set'])
- a = C()
- del(a[-1:5])
- AreEqual(a.calls, ['len', 'delete'])
- a = C()
- del(a[1:-5])
- AreEqual(a.calls, ['len', 'delete'])
- a = C()
- del(a[-1:-5])
- AreEqual(a.calls, ['len', 'delete'])
- def test_simple_slicing():
- """verify simple slicing works correctly, even in the face of __getitem__ and friends"""
- class only_slice(object):
- def __getslice__(self, i, j):
- self.res = 'get', i, j
- def __setslice__(self, i, j, value):
- self.res = 'set', i, j, value
- def __delslice__(self, i, j):
- self.res = 'del', i, j
- class mixed_slice(object):
- def __getslice__(self, i, j):
- self.res = 'get', i, j
- def __setslice__(self, i, j, value):
- self.res = 'set', i, j, value
- def __delslice__(self, i, j):
- self.res = 'del', i, j
- def __getitem__(self, index): raise Exception()
- def __setitem__(self, index, value): raise Exception()
- def __delitem__(self, index): raise Exception()
-
- for mytype in [only_slice, mixed_slice]:
- x = mytype()
- x[:]
- AreEqual(x.res, ('get', 0, sys.maxint))
-
- x[0:]
- AreEqual(x.res, ('get', 0, sys.maxint))
-
- x[1:]
- AreEqual(x.res, ('get', 1, sys.maxint))
-
- x[:100]
- AreEqual(x.res, ('get', 0, 100))
-
- x[:] = 2
- AreEqual(x.res, ('set', 0, sys.maxint, 2))
-
- x[0:] = 2
- AreEqual(x.res, ('set', 0, sys.maxint, 2))
-
- x[1:] = 2
- AreEqual(x.res, ('set', 1, sys.maxint, 2))
-
- x[:100] = 2
- AreEqual(x.res, ('set', 0, 100, 2))
-
- del x[:]
- AreEqual(x.res, ('del', 0, sys.maxint))
-
- del x[0:]
- AreEqual(x.res, ('del', 0, sys.maxint))
-
- del x[1:]
- AreEqual(x.res, ('del', 1, sys.maxint))
-
- del x[:100]
- AreEqual(x.res, ('del', 0, 100))
- def test_slice_getslice_forbidden():
- """providing no value for step forbids calling __getslice__"""
- class foo:
- def __getslice__(self, i, j):
- return 42
- def __getitem__(self, index):
- return 23
-
- AreEqual(foo()[::], 23)
- AreEqual(foo()[::None], 23)
- def test_slice_setslice_forbidden():
- """providing no value for step forbids calling __setslice__"""
- global setVal
- class foo:
- def __setslice__(self, i, j, value):
- global setVal
- setVal = i, j, value
- def __setitem__(self, index, value):
- global setVal
- setVal = index, value
-
- foo()[::] = 23
- AreEqual(setVal, (slice(None, None, None), 23))
- foo()[::None] = 23
- AreEqual(setVal, (slice(None, None, None), 23))
- def test_slice_delslice_forbidden():
- """providing no value for step forbids calling __delslice__"""
- global setVal
- class foo:
- def __delslice__(self, i, j, value):
- global setVal
- setVal = i, j, value
- def __delitem__(self, index):
- global setVal
- setVal = index
-
- del foo()[::]
- AreEqual(setVal, slice(None, None, None))
- del foo()[::None]
- AreEqual(setVal, slice(None, None, None))
-
- def test_getslice_missing_values():
- # missing values are different from passing None explicitly
- class myint(int): pass
- class mylong(long): pass
-
- class foo:
- def __getslice__(self, i, j):
- return (i, j)
- def __getitem__(self, index):
- return (index)
- def __len__(self): return 42
-
- def validate_slice_result(result, value):
- AreEqual(result, value)
- AreEqual(result[0].__class__, int)
-
- # only numeric types are passed to __getslice__
- validate_slice_result(foo()[:], (0, 2147483647))
- validate_slice_result(foo()[2L:], (2L, 2147483647))
- validate_slice_result(foo()[2L<<64:], (2147483647, 2147483647))
- validate_slice_result(foo()[:2L], (0, 2L))
- validate_slice_result(foo()[:2L<<64], (0, 2147483647))
- validate_slice_result(foo()[2L:3L], (2L, 3L))
- validate_slice_result(foo()[2L<<64:3L<<64], (2147483647, 2147483647))
- validate_slice_result(foo()[myint(2):], (2, 2147483647))
- validate_slice_result(foo()[:myint(2)], (0, 2))
- validate_slice_result(foo()[myint(2):myint(3)], (2, 3))
- validate_slice_result(foo()[mylong(2):], (2, 2147483647))
- validate_slice_result(foo()[:mylong(2)], (0, 2))
- validate_slice_result(foo()[mylong(2):mylong(3)], (2, 3))
- validate_slice_result(foo()[True:], (1, 2147483647))
- validate_slice_result(foo()[:True], (0, 1))
- validate_slice_result(foo()[False:True], (0, 1))
-
- def test_slice(foo):
- AreEqual(foo()[None:], slice(None, None))
- AreEqual(foo()[:None], slice(None, None))
- AreEqual(foo()[None:None], slice(None, None))
- AreEqual(foo()['abc':], slice('abc', None))
- AreEqual(foo()[:'abc'], slice(None, 'abc'))
- AreEqual(foo()['abc':'def'], slice('abc', 'def'))
- AreEqual(foo()[2.0:], slice(2.0, None))
- AreEqual(foo()[:2.0], slice(None, 2.0))
- AreEqual(foo()[2.0:3.0], slice(2.0, 3.0))
- AreEqual(foo()[1j:], slice(1j, None))
- AreEqual(foo()[:1j], slice(None, 1j))
- AreEqual(foo()[2j:3j], slice(2j, 3j))
-
- test_slice(foo)
-
- class foo:
- def __getitem__(self, index):
- return (index)
- def __len__(self): return 42
- AreEqual(foo()[:], slice(0, 2147483647))
- test_slice(foo)
- def test_setslice_missing_values():
- # missing values are different from passing None explicitly
- class myint(int): pass
-
- class mylong(long): pass
-
- global setVal
- class foo:
- def __setslice__(self, i, j, value):
- global setVal
- setVal = (i, j, value)
- def __setitem__(self, index, value):
- global setVal
- setVal = (index, value)
- def __len__(self): return 42
-
- # only numeric types are passed to __getslice__
- foo()[:] = 123
- AreEqual(setVal, (0, 2147483647, 123))
- foo()[2L:] = 123
- AreEqual(setVal, (2L, 2147483647, 123))
- foo()[2L<<64:] = 123
- AreEqual(setVal, (2147483647, 2147483647, 123))
- foo()[:2L] = 123
- AreEqual(setVal, (0, 2L, 123))
- foo()[:2L<<64] = 123
- AreEqual(setVal, (0, 2147483647, 123))
- foo()[2L:3L] = 123
- AreEqual(setVal, (2L, 3L, 123))
- foo()[2L<<64:3L<<64] = 123
- AreEqual(setVal, (2147483647, 2147483647, 123))
- foo()[myint(2):] = 123
- AreEqual(setVal, (2, 2147483647, 123))
- foo()[:myint(2)] = 123
- AreEqual(setVal, (0, 2, 123))
- foo()[myint(2):myint(3)] = 123
- AreEqual(setVal, (2, 3, 123))
- foo()[mylong(2):] = 123
- AreEqual(setVal, (2, 2147483647, 123))
- foo()[:mylong(2)] = 123
- AreEqual(setVal, (0, 2, 123))
- foo()[mylong(2):mylong(3)] = 123
- AreEqual(setVal, (2, 3, 123))
- foo()[True:] = 123
- AreEqual(setVal, (1, 2147483647, 123))
- foo()[:True] = 123
- AreEqual(setVal, (0, 1, 123))
- foo()[False:True] = 123
- AreEqual(setVal, (0, 1, 123))
-
- def test_slice(foo):
- foo()[None:] = 123
- AreEqual(setVal, (slice(None, None), 123))
- foo()[:None] = 123
- AreEqual(setVal, (slice(None, None), 123))
- foo()[None:None] = 123
- AreEqual(setVal, (slice(None, None), 123))
- foo()['abc':] = 123
- AreEqual(setVal, (slice('abc', None), 123))
- foo()[:'abc'] = 123
- AreEqual(setVal, (slice(None, 'abc'), 123))
- foo()['abc':'def'] = 123
- AreEqual(setVal, (slice('abc', 'def'), 123))
- foo()[2.0:] = 123
- AreEqual(setVal, (slice(2.0, None), 123))
- foo()[:2.0] = 123
- AreEqual(setVal, (slice(None, 2.0), 123))
- foo()[2.0:3.0] = 123
- AreEqual(setVal, (slice(2.0, 3.0), 123))
- foo()[1j:] = 123
- AreEqual(setVal, (slice(1j, None), 123))
- foo()[:1j] = 123
- AreEqual(setVal, (slice(None, 1j), 123))
- foo()[2j:3j] = 123
- AreEqual(setVal, (slice(2j, 3j), 123))
-
- test_slice(foo)
-
- class foo:
- def __setitem__(self, index, value):
- global setVal
- setVal = index, value
- def __len__(self): return 42
-
- foo()[:] = 123
- AreEqual(setVal, (slice(0, 2147483647), 123))
- test_slice(foo)
- def test_delslice_missing_values():
- # missing values are different from passing None explicitly
- class myint(int): pass
- class mylong(long): pass
-
- global setVal
- class foo:
- def __delslice__(self, i, j):
- global setVal
- setVal = (i, j)
- def __delitem__(self, index):
- global setVal
- setVal = index
- def __len__(self): return 42
-
- # only numeric types are passed to __getslice__
- del foo()[:]
- AreEqual(setVal, (0, 2147483647))
- del foo()[2L:]
- AreEqual(setVal, (2L, 2147483647))
- del foo()[2L<<64:]
- AreEqual(setVal, (2147483647, 2147483647))
- del foo()[:2L]
- AreEqual(setVal, (0, 2L))
- del foo()[:2L<<64]
- AreEqual(setVal, (0, 2147483647))
- del foo()[2L:3L]
- AreEqual(setVal, (2L, 3L))
- del foo()[2L<<64:3L<<64]
- AreEqual(setVal, (2147483647, 2147483647))
- del foo()[myint(2):]
- AreEqual(setVal, (2, 2147483647))
- del foo()[:myint(2)]
- AreEqual(setVal, (0, 2))
- del foo()[myint(2):myint(3)]
- AreEqual(setVal, (2, 3))
- del foo()[mylong(2):]
- AreEqual(setVal, (2, 2147483647))
- del foo()[:mylong(2)]
- AreEqual(setVal, (0, 2))
- del foo()[mylong(2):mylong(3)]
- AreEqual(setVal, (2, 3))
- del foo()[:True]
- AreEqual(setVal, (0, 1))
- del foo()[True:]
- AreEqual(setVal, (1, 2147483647))
- del foo()[False:True]
- AreEqual(setVal, (0, 1))
- def test_slice(foo):
- del foo()[None:]
- AreEqual(setVal, slice(None, None))
- del foo()[:None]
- AreEqual(setVal, slice(None, None))
- del foo()[None:None]
- AreEqual(setVal, slice(None, None))
- del foo()['abc':]
- AreEqual(setVal, slice('abc', None))
- del foo()[:'abc']
- AreEqual(setVal, slice(None, 'abc'))
- del foo()['abc':'def']
- AreEqual(setVal, slice('abc', 'def'))
- del foo()[2.0:]
- AreEqual(setVal, slice(2.0, None))
- del foo()[:2.0]
- AreEqual(setVal, slice(None, 2.0))
- del foo()[2.0:3.0]
- AreEqual(setVal, slice(2.0, 3.0))
- del foo()[1j:]
- AreEqual(setVal, slice(1j, None))
- del foo()[:1j]
- AreEqual(setVal, slice(None, 1j))
- del foo()[2j:3j]
- AreEqual(setVal, slice(2j, 3j))
-
- test_slice(foo)
-
- class foo:
- def __delitem__(self, index):
- global setVal
- setVal = index
- def __len__(self): return 42
- del foo()[:]
- AreEqual(setVal, slice(0, 2147483647))
- test_slice(foo)
- def test_oldclass_and_direct():
-
- """tests slicing OldInstance's and directly passing a slice object"""
- class OldStyle:
- def __getitem__(self, index):
- return index
-
- class OldStyleWithLen:
- def __getitem__(self, index):
- return index
- def __len__(self):
- return 10
-
- class NewStyle(object):
- def __getitem__(self, index):
- return index
-
- class OldStyleWithLenAndGetSlice:
- def __getitem__(self, index):
- return index
- def __len__(self):
- return 10
- def __getslice__(self, start, stop):
- return start, stop
- # slice object should pass through unmodified if constructed explicitly.
- AreEqual(NewStyle()[slice(None, -1, None)], slice(None, -1, None))
- AreEqual(OldStyleWithLen()[slice(None, -1, None)], slice(None, -1, None))
- AreEqual(OldStyle()[slice(None, -1, None)], slice(None, -1, None))
- AreEqual(OldStyleWithLenAndGetSlice()[slice(None, -1, None)], slice(None, -1, None))
-
- # using the slice syntax
- AreEqual(NewStyle()[:-1], slice(None, -1, None))
- AreEqual(OldStyleWithLen()[:-1], slice(0, 9, None))
- AreEqual(OldStyleWithLenAndGetSlice()[:-1], (0, 9))
- AreEqual(OldStyle()[:-1:1], slice(None, -1, 1))
-
- # need __len__ to be defined for negative indexing
- try:
- OldStyle()[:-1],
- AssertUnreachable()
- except AttributeError:
- pass
-
- try:
- OldStyle()[-1:],
- AssertUnreachable()
- except AttributeError:
- pass
-
- for x, y in [(-1, -1),
- (-2, 0),
- (0, -2),
- (-2, -2),
- ]:
- try:
- OldStyle()[x:y],
- AssertUnreachable()
- except AttributeError:
- pass
-
-
- # but if we provide a step no length is needed because we'll never use __getslice__
- AreEqual(OldStyle()[:-1:None], slice(None, -1, None))
- AreEqual(OldStyle()[-1::None], slice(-1, None, None))
- AreEqual(OldStyle()[:-1:], slice(None, -1, None))
- AreEqual(OldStyle()[-1::], slice(-1, None, None))
- def test_oldclass_and_direct_set():
- """tests slicing OldInstance's and directly passing a slice object"""
- global setVal
- class OldStyle:
- def __setitem__(self, index, value):
- global setVal
- setVal = index, value
-
- class OldStyleWithLen:
- def __setitem__(self, index, value):
- global setVal
- setVal = index, value
- def __len__(self):
- return 10
-
- class NewStyle(object):
- def __setitem__(self, index, value):
- global setVal
- setVal = index, value
-
- class OldStyleWithLenAndGetSlice:
- def __setitem__(self, index, value):
- global setVal
- setVal = index, value
- def __len__(self):
- return 10
- def __setslice__(self, start, stop, value):
- global setVal
- setVal = start, stop, value
- # slice object should pass through unmodified if constructed explicitly.
- NewStyle()[slice(None, -1, None)] = 123
- AreEqual(setVal, (slice(None, -1, None), 123))
- OldStyleWithLen()[slice(None, -1, None)] = 123
- AreEqual(setVal, (slice(None, -1, None), 123))
- OldStyle()[slice(None, -1, None)] = 123
- AreEqual(setVal, (slice(None, -1, None), 123))
- OldStyleWithLenAndGetSlice()[slice(None, -1, None)] = 123
- AreEqual(setVal, (slice(None, -1, None), 123))
-
- # using the slice syntax
- NewStyle()[:-1] = 123
- AreEqual(setVal, (slice(None, -1, None), 123))
- OldStyleWithLen()[:-1] = 123
- AreEqual(setVal, (slice(0, 9, None), 123))
- OldStyleWithLenAndGetSlice()[:-1] = 123
- AreEqual(setVal, (0, 9, 123))
- OldStyle()[:-1:1] = 123
- AreEqual(setVal, (slice(None, -1, 1), 123))
-
- # need __len__ to be defined for negative indexing
- try:
- OldStyle()[:-1] = 123
- AssertUnreachable()
- except AttributeError:
- pass
-
- try:
- OldStyle()[-1:] = 123
- AssertUnreachable()
- except AttributeError:
- pass
-
-
- # but if we provide a step no length is needed because we'll never use __getslice__
- OldStyle()[:-1:None] = 123
- AreEqual(setVal, (slice(None, -1, None), 123))
- OldStyle()[-1::None] = 123
- AreEqual(setVal, (slice(-1, None, None), 123))
- OldStyle()[:-1:] = 123
- AreEqual(setVal, (slice(None, -1, None), 123))
- OldStyle()[-1::] = 123
- AreEqual(setVal, (slice(-1, None, None), 123))
- def test_oldclass_and_direct_delete():
- """tests slicing OldInstance's and directly passing a slice object"""
- global setVal
- class OldStyle:
- def __delitem__(self, index):
- global setVal
- setVal = index
-
- class OldStyleWithLen:
- def __delitem__(self, index):
- global setVal
- setVal = index
- def __len__(self):
- return 10
-
- class NewStyle(object):
- def __delitem__(self, index):
- global setVal
- setVal = index
-
- class OldStyleWithLenAndGetSlice:
- def __delitem__(self, index):
- global setVal
- setVal = index
- def __len__(self):
- return 10
- def __delslice__(self, start, stop):
- global setVal
- setVal = start, stop
- # slice object should pass through unmodified if constructed explicitly.
- del NewStyle()[slice(None, -1, None)]
- AreEqual(setVal, (slice(None, -1, None)))
- del OldStyleWithLen()[slice(None, -1, None)]
- AreEqual(setVal, (slice(None, -1, None)))
- del OldStyle()[slice(None, -1, None)]
- AreEqual(setVal, (slice(None, -1, None)))
- del OldStyleWithLenAndGetSlice()[slice(None, -1, None)]
- AreEqual(setVal, (slice(None, -1, None)))
-
- # using the slice syntax
- del NewStyle()[:-1]
- AreEqual(setVal, (slice(None, -1, None)))
- del OldStyleWithLen()[:-1]
- AreEqual(setVal, (slice(0, 9, None)))
- del OldStyleWithLenAndGetSlice()[:-1]
- AreEqual(setVal, (0, 9))
- del OldStyle()[:-1:1]
- AreEqual(setVal, (slice(None, -1, 1)))
-
- # need __len__ to be defined for negative indexing
- try:
- OldStyle()[:-1] = 123
- AssertUnreachable()
- except AttributeError:
- pass
-
- try:
- OldStyle()[-1:] = 123
- AssertUnreachable()
- except AttributeError:
- pass
-
-
- # but if we provide a step no length is needed because we'll never use __getslice__
- del OldStyle()[:-1:None]
- AreEqual(setVal, (slice(None, -1, None)))
- del OldStyle()[-1::None]
- AreEqual(setVal, (slice(-1, None, None)))
- del OldStyle()[:-1:]
- AreEqual(setVal, (slice(None, -1, None)))
- del OldStyle()[-1::]
- AreEqual(setVal, (slice(-1, None, None)))
-
- def test_cp8297():
- #-1
- x = range(3)
- x[:-1] = x
- AreEqual(x, [0, 1, 2, 2])
-
- #-2
- x = range(3)
- x[:-2] = x
- AreEqual(x, [0, 1, 2, 1, 2])
-
- for i in [0, -3, -10, -1001, -2147483648, -2147483649, -9223372036854775807L, -9223372036854775808L, -9223372036854775809L]:
- x = range(3)
- x[:i] = x
- AreEqual(x, [0, 1, 2, 0, 1, 2])
- def test_pickle():
- from cPickle import dumps, loads
- vals = [None, 1]
- for start in vals:
- for stop in vals:
- for step in vals:
- inp = slice(start, stop, step)
- AreEqual(inp, loads(dumps(inp)))
-
-
- run_test(__name__)