Pooh program example 02-heap.p

Test 02-heap.p

Source of programm

# test heap data structure - heap.inc
include 'heap.inc'

println( ~msg '*** test min heap ***' )
h = make_min_heap()

for i range( ~from 30 ~to 1 ~step -1 )
    h . push( ~key i ~data  i ) # '[i]' )
end

while ! h.empty()
    [key, val ] = h.pop()

    println( ~msg 'key [ key ] value [ val ]' )
end

println( ~msg '*** test max heap ***' )
h = make_max_heap()

for i range( ~from 1 ~to 30 )
    h . push( ~key i ~data  i ) # '[i]' )
end

while ! h.empty()
    [key, val ] = h.pop()

    println( ~msg 'key [ key ] value [ val ]' )
end

Included file: heap.inc



# make a heap - the top is always the smallest key. 
sub make_min_heap()

    return {
	      'values' : [],

	      'push'   : sub( key, data )

			    push( ~array this.values ~top [ key, data ] )

			    n = size( ~arg this.values )
			    while n > 1
				parent = n / 2
				if this.values[ parent ] [ 1 ] > this.values[ n ] [ 1 ] 
				    tmp = this.values[ parent ]
				    this.values[ parent ] = this.values[ n ]
				    this.values[ n ] = tmp
				else
				    break
				end
                                n = parent
			    end
			 end,

              'empty'  : sub() 
                            return size( ~arg this.values ) == 0
                         end,
	      
	      'top'    : sub()
			    if size( ~arg this.values ) == 0
			      return []
			    end
			    return this.values[ 1 ] 
		         end,

	      'pop'    : sub()
			     sz = size( ~arg this.values )
			     if sz == 0
				return []
			     end

			     res = this.values[ 1 ]
			     this.values[ 1 ] = this.values[ sz ]
			     pop( ~array this.values )
			     
			  
			     pos = 1
			     loop
				    rightn = pos * 2
				    leftn = pos * 2 + 1

				    if rightn >= sz
				      break
				    end

				    if leftn >= sz
					if this.values[ pos ][ 1 ] < this.values[ rightn ] [ 1 ]
					   break
					end
					nextn = rightn
				    else

					if this.values[ pos ][ 1 ] < this.values[ rightn ][ 1 ] &&
					    this.values[ pos ][ 1 ] < this.values[ leftn  ][ 1 ]
					    break
					end

				
				        if this.values[ rightn ][ 1 ] < this.values[ leftn ][ 1 ] 
					  nextn = rightn
	    			        else
					  nextn = leftn
				        end
				   end			

				   tmp = this.values[ nextn ]
				   this.values[ nextn ] = this.values[ pos ]
				   this.values[ pos ] = tmp

				   pos = nextn
			     end

			     return res
			 end

	   }
end


# make a heap - the top is always the largest key. 
sub make_max_heap()

    return {
	      'values' : [],

	      'push'   : sub( key, data )

			    push( ~array this.values ~top [ key, data ] )

			    n = size( ~arg this.values )
			    while n > 1
				parent = n / 2
				if this.values[ parent ] [ 1 ] < this.values[ n ] [ 1 ] 
				    tmp = this.values[ parent ]
				    this.values[ parent ] = this.values[ n ]
				    this.values[ n ] = tmp
				else
				    break
				end
                                n = parent
			    end
			 end,

              'empty'  : sub() 
                            return size( ~arg this.values ) == 0
                         end,
	      
	      'top'    : sub()
			    if size( ~arg this.values ) == 0
			      return []
			    end
			    return this.values[ 1 ] 
		         end,

	      'pop'    : sub()
			     sz = size( ~arg this.values )
			     if sz == 0
				return []
			     end

			     res = this.values[ 1 ]
			     this.values[ 1 ] = this.values[ sz ]
			     pop( ~array this.values )
			     
			  
			     pos = 1
			     loop
				    rightn = pos * 2
				    leftn = pos * 2 + 1

				    if rightn >= sz
				      break
				    end

				    if leftn >= sz
					if this.values[ pos ][ 1 ] > this.values[ rightn ] [ 1 ]
					   break
					end
					nextn = rightn
				    else

					if this.values[ pos ][ 1 ] > this.values[ rightn ][ 1 ] &&
					    this.values[ pos ][ 1 ] > this.values[ leftn  ][ 1 ]
					    break
					end

				
				        if this.values[ rightn ][ 1 ] > this.values[ leftn ][ 1 ] 
					  nextn = rightn
	    			        else
					  nextn = leftn
				        end
				   end			

				   tmp = this.values[ nextn ]
				   this.values[ nextn ] = this.values[ pos ]
				   this.values[ pos ] = tmp

				   pos = nextn
			     end

			     return res
			 end

	   }
end


Standard output for 02-heap.p

*** test min heap ***
key 1 value 1
key 2 value 2
key 3 value 3
key 4 value 4
key 5 value 5
key 6 value 6
key 7 value 7
key 8 value 8
key 9 value 9
key 10 value 10
key 11 value 11
key 12 value 12
key 13 value 13
key 14 value 14
key 15 value 15
key 16 value 16
key 17 value 17
key 18 value 18
key 19 value 19
key 20 value 20
key 21 value 21
key 22 value 22
key 23 value 23
key 24 value 24
key 25 value 25
key 26 value 26
key 27 value 27
key 28 value 28
key 29 value 29
key 30 value 30
*** test max heap ***
key 30 value 30
key 29 value 29
key 28 value 28
key 27 value 27
key 26 value 26
key 25 value 25
key 24 value 24
key 23 value 23
key 22 value 22
key 21 value 21
key 20 value 20
key 19 value 19
key 18 value 18
key 17 value 17
key 16 value 16
key 15 value 15
key 14 value 14
key 13 value 13
key 12 value 12
key 11 value 11
key 10 value 10
key 9 value 9
key 8 value 8
key 7 value 7
key 6 value 6
key 5 value 5
key 4 value 4
key 3 value 3
key 2 value 2
key 1 value 1

Trace output for 02-heap.p

003|println( ~msg '*** test min heap ***' )...
004|... = make_min_heap(  )...
006| return { 'values' : [ ]  , 'push' : sub (~key , ~data) , 'empty' : sub () , 'top' : sub () , 'pop' : sub () }
004|h = make_min_heap(  ):{ 'pop' : sub , 'values' : -> [  ], 'empty' : sub , 'push' : sub , 'top' : sub  }
006|for ... range( ~from 30 ~to 1 ~step  - 1 )...
006| for i = 30
007|  h{'push'}:sub ( ~key i:30 ~data i:30 )...
011|   push( ~array this{'values'}:[  ] ~top [ key:30 , data:30]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ] ] ):1
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 29
007|  h{'push'}:sub ( ~key i:29 ~data i:29 )...
011|   push( ~array this{'values'}:[ -> [ -> 30, -> 30 ] ] ~top [ key:29 , data:29]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ], -> [ -> 29, -> 29 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ], -> [ -> 29, -> 29 ] ] ):2
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:30 > this{'values'}[n:2][1]:29):true
017|     tmp = this{'values'}[parent:1]:[ -> 30, -> 30 ]
018|     this{'values'}[parent:1]:[ -> 29, -> 29 ] = this{'values'}[n:2]:[ -> 29, -> 29 ]
019|     this{'values'}[n:2]:[ -> 30, -> 30 ] = tmp:[ -> 30, -> 30 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 28
007|  h{'push'}:sub ( ~key i:28 ~data i:28 )...
011|   push( ~array this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ] ] ~top [ key:28 , data:28]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ] ] ):3
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:29 > this{'values'}[n:3][1]:28):true
017|     tmp = this{'values'}[parent:1]:[ -> 29, -> 29 ]
018|     this{'values'}[parent:1]:[ -> 28, -> 28 ] = this{'values'}[n:3]:[ -> 28, -> 28 ]
019|     this{'values'}[n:3]:[ -> 29, -> 29 ] = tmp:[ -> 29, -> 29 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 27
007|  h{'push'}:sub ( ~key i:27 ~data i:27 )...
011|   push( ~array this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 30, -> 30 ], -> [ -> 29, -> 29 ] ] ~top [ key:27 , data:27]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 30, -> 30 ], -> [ -> 29, -> 29 ], -> [ -> 27, -> 27 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 30, -> 30 ], -> [ -> 29, -> 29 ], -> [ -> 27, -> 27 ] ] ):4
014|   while (n:4 > 1):true
015|    parent = (n:4 / 2):2
016|    if (this{'values'}[parent:2][1]:30 > this{'values'}[n:4][1]:27):true
017|     tmp = this{'values'}[parent:2]:[ -> 30, -> 30 ]
018|     this{'values'}[parent:2]:[ -> 27, -> 27 ] = this{'values'}[n:4]:[ -> 27, -> 27 ]
019|     this{'values'}[n:4]:[ -> 30, -> 30 ] = tmp:[ -> 30, -> 30 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:28 > this{'values'}[n:2][1]:27):true
017|     tmp = this{'values'}[parent:1]:[ -> 28, -> 28 ]
018|     this{'values'}[parent:1]:[ -> 27, -> 27 ] = this{'values'}[n:2]:[ -> 27, -> 27 ]
019|     this{'values'}[n:2]:[ -> 28, -> 28 ] = tmp:[ -> 28, -> 28 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 26
007|  h{'push'}:sub ( ~key i:26 ~data i:26 )...
011|   push( ~array this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ] ] ~top [ key:26 , data:26]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> 26, -> 26 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> 26, -> 26 ] ] ):5
014|   while (n:5 > 1):true
015|    parent = (n:5 / 2):2
016|    if (this{'values'}[parent:2][1]:28 > this{'values'}[n:5][1]:26):true
017|     tmp = this{'values'}[parent:2]:[ -> 28, -> 28 ]
018|     this{'values'}[parent:2]:[ -> 26, -> 26 ] = this{'values'}[n:5]:[ -> 26, -> 26 ]
019|     this{'values'}[n:5]:[ -> 28, -> 28 ] = tmp:[ -> 28, -> 28 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:27 > this{'values'}[n:2][1]:26):true
017|     tmp = this{'values'}[parent:1]:[ -> 27, -> 27 ]
018|     this{'values'}[parent:1]:[ -> 26, -> 26 ] = this{'values'}[n:2]:[ -> 26, -> 26 ]
019|     this{'values'}[n:2]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 25
007|  h{'push'}:sub ( ~key i:25 ~data i:25 )...
011|   push( ~array this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ] ] ~top [ key:25 , data:25]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 25, -> 25 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 25, -> 25 ] ] ):6
014|   while (n:6 > 1):true
015|    parent = (n:6 / 2):3
016|    if (this{'values'}[parent:3][1]:29 > this{'values'}[n:6][1]:25):true
017|     tmp = this{'values'}[parent:3]:[ -> 29, -> 29 ]
018|     this{'values'}[parent:3]:[ -> 25, -> 25 ] = this{'values'}[n:6]:[ -> 25, -> 25 ]
019|     this{'values'}[n:6]:[ -> 29, -> 29 ] = tmp:[ -> 29, -> 29 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:26 > this{'values'}[n:3][1]:25):true
017|     tmp = this{'values'}[parent:1]:[ -> 26, -> 26 ]
018|     this{'values'}[parent:1]:[ -> 25, -> 25 ] = this{'values'}[n:3]:[ -> 25, -> 25 ]
019|     this{'values'}[n:3]:[ -> 26, -> 26 ] = tmp:[ -> 26, -> 26 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 24
007|  h{'push'}:sub ( ~key i:24 ~data i:24 )...
011|   push( ~array this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ] ] ~top [ key:24 , data:24]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 24, -> 24 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 24, -> 24 ] ] ):7
014|   while (n:7 > 1):true
015|    parent = (n:7 / 2):3
016|    if (this{'values'}[parent:3][1]:26 > this{'values'}[n:7][1]:24):true
017|     tmp = this{'values'}[parent:3]:[ -> 26, -> 26 ]
018|     this{'values'}[parent:3]:[ -> 24, -> 24 ] = this{'values'}[n:7]:[ -> 24, -> 24 ]
019|     this{'values'}[n:7]:[ -> 26, -> 26 ] = tmp:[ -> 26, -> 26 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:25 > this{'values'}[n:3][1]:24):true
017|     tmp = this{'values'}[parent:1]:[ -> 25, -> 25 ]
018|     this{'values'}[parent:1]:[ -> 24, -> 24 ] = this{'values'}[n:3]:[ -> 24, -> 24 ]
019|     this{'values'}[n:3]:[ -> 25, -> 25 ] = tmp:[ -> 25, -> 25 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 23
007|  h{'push'}:sub ( ~key i:23 ~data i:23 )...
011|   push( ~array this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 25, -> 25 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ] ] ~top [ key:23 , data:23]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 25, -> 25 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 23, -> 23 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 25, -> 25 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 23, -> 23 ] ] ):8
014|   while (n:8 > 1):true
015|    parent = (n:8 / 2):4
016|    if (this{'values'}[parent:4][1]:30 > this{'values'}[n:8][1]:23):true
017|     tmp = this{'values'}[parent:4]:[ -> 30, -> 30 ]
018|     this{'values'}[parent:4]:[ -> 23, -> 23 ] = this{'values'}[n:8]:[ -> 23, -> 23 ]
019|     this{'values'}[n:8]:[ -> 30, -> 30 ] = tmp:[ -> 30, -> 30 ]
019|    end # if
023|    n = parent:4
024|   end
014|   while (n:4 > 1):true
015|    parent = (n:4 / 2):2
016|    if (this{'values'}[parent:2][1]:27 > this{'values'}[n:4][1]:23):true
017|     tmp = this{'values'}[parent:2]:[ -> 27, -> 27 ]
018|     this{'values'}[parent:2]:[ -> 23, -> 23 ] = this{'values'}[n:4]:[ -> 23, -> 23 ]
019|     this{'values'}[n:4]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:24 > this{'values'}[n:2][1]:23):true
017|     tmp = this{'values'}[parent:1]:[ -> 24, -> 24 ]
018|     this{'values'}[parent:1]:[ -> 23, -> 23 ] = this{'values'}[n:2]:[ -> 23, -> 23 ]
019|     this{'values'}[n:2]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 22
007|  h{'push'}:sub ( ~key i:22 ~data i:22 )...
011|   push( ~array this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 24, -> 24 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ] ] ~top [ key:22 , data:22]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 24, -> 24 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 22, -> 22 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 24, -> 24 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 22, -> 22 ] ] ):9
014|   while (n:9 > 1):true
015|    parent = (n:9 / 2):4
016|    if (this{'values'}[parent:4][1]:27 > this{'values'}[n:9][1]:22):true
017|     tmp = this{'values'}[parent:4]:[ -> 27, -> 27 ]
018|     this{'values'}[parent:4]:[ -> 22, -> 22 ] = this{'values'}[n:9]:[ -> 22, -> 22 ]
019|     this{'values'}[n:9]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
019|    end # if
023|    n = parent:4
024|   end
014|   while (n:4 > 1):true
015|    parent = (n:4 / 2):2
016|    if (this{'values'}[parent:2][1]:24 > this{'values'}[n:4][1]:22):true
017|     tmp = this{'values'}[parent:2]:[ -> 24, -> 24 ]
018|     this{'values'}[parent:2]:[ -> 22, -> 22 ] = this{'values'}[n:4]:[ -> 22, -> 22 ]
019|     this{'values'}[n:4]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:23 > this{'values'}[n:2][1]:22):true
017|     tmp = this{'values'}[parent:1]:[ -> 23, -> 23 ]
018|     this{'values'}[parent:1]:[ -> 22, -> 22 ] = this{'values'}[n:2]:[ -> 22, -> 22 ]
019|     this{'values'}[n:2]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 21
007|  h{'push'}:sub ( ~key i:21 ~data i:21 )...
011|   push( ~array this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ] ] ~top [ key:21 , data:21]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 21, -> 21 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 21, -> 21 ] ] ):10
014|   while (n:10 > 1):true
015|    parent = (n:10 / 2):5
016|    if (this{'values'}[parent:5][1]:28 > this{'values'}[n:10][1]:21):true
017|     tmp = this{'values'}[parent:5]:[ -> 28, -> 28 ]
018|     this{'values'}[parent:5]:[ -> 21, -> 21 ] = this{'values'}[n:10]:[ -> 21, -> 21 ]
019|     this{'values'}[n:10]:[ -> 28, -> 28 ] = tmp:[ -> 28, -> 28 ]
019|    end # if
023|    n = parent:5
024|   end
014|   while (n:5 > 1):true
015|    parent = (n:5 / 2):2
016|    if (this{'values'}[parent:2][1]:23 > this{'values'}[n:5][1]:21):true
017|     tmp = this{'values'}[parent:2]:[ -> 23, -> 23 ]
018|     this{'values'}[parent:2]:[ -> 21, -> 21 ] = this{'values'}[n:5]:[ -> 21, -> 21 ]
019|     this{'values'}[n:5]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:22 > this{'values'}[n:2][1]:21):true
017|     tmp = this{'values'}[parent:1]:[ -> 22, -> 22 ]
018|     this{'values'}[parent:1]:[ -> 21, -> 21 ] = this{'values'}[n:2]:[ -> 21, -> 21 ]
019|     this{'values'}[n:2]:[ -> 22, -> 22 ] = tmp:[ -> 22, -> 22 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 20
007|  h{'push'}:sub ( ~key i:20 ~data i:20 )...
011|   push( ~array this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ] ] ~top [ key:20 , data:20]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 20, -> 20 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 20, -> 20 ] ] ):11
014|   while (n:11 > 1):true
015|    parent = (n:11 / 2):5
016|    if (this{'values'}[parent:5][1]:23 > this{'values'}[n:11][1]:20):true
017|     tmp = this{'values'}[parent:5]:[ -> 23, -> 23 ]
018|     this{'values'}[parent:5]:[ -> 20, -> 20 ] = this{'values'}[n:11]:[ -> 20, -> 20 ]
019|     this{'values'}[n:11]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
019|    end # if
023|    n = parent:5
024|   end
014|   while (n:5 > 1):true
015|    parent = (n:5 / 2):2
016|    if (this{'values'}[parent:2][1]:22 > this{'values'}[n:5][1]:20):true
017|     tmp = this{'values'}[parent:2]:[ -> 22, -> 22 ]
018|     this{'values'}[parent:2]:[ -> 20, -> 20 ] = this{'values'}[n:5]:[ -> 20, -> 20 ]
019|     this{'values'}[n:5]:[ -> 22, -> 22 ] = tmp:[ -> 22, -> 22 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:21 > this{'values'}[n:2][1]:20):true
017|     tmp = this{'values'}[parent:1]:[ -> 21, -> 21 ]
018|     this{'values'}[parent:1]:[ -> 20, -> 20 ] = this{'values'}[n:2]:[ -> 20, -> 20 ]
019|     this{'values'}[n:2]:[ -> 21, -> 21 ] = tmp:[ -> 21, -> 21 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 19
007|  h{'push'}:sub ( ~key i:19 ~data i:19 )...
011|   push( ~array this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ] ] ~top [ key:19 , data:19]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 19, -> 19 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 19, -> 19 ] ] ):12
014|   while (n:12 > 1):true
015|    parent = (n:12 / 2):6
016|    if (this{'values'}[parent:6][1]:29 > this{'values'}[n:12][1]:19):true
017|     tmp = this{'values'}[parent:6]:[ -> 29, -> 29 ]
018|     this{'values'}[parent:6]:[ -> 19, -> 19 ] = this{'values'}[n:12]:[ -> 19, -> 19 ]
019|     this{'values'}[n:12]:[ -> 29, -> 29 ] = tmp:[ -> 29, -> 29 ]
019|    end # if
023|    n = parent:6
024|   end
014|   while (n:6 > 1):true
015|    parent = (n:6 / 2):3
016|    if (this{'values'}[parent:3][1]:25 > this{'values'}[n:6][1]:19):true
017|     tmp = this{'values'}[parent:3]:[ -> 25, -> 25 ]
018|     this{'values'}[parent:3]:[ -> 19, -> 19 ] = this{'values'}[n:6]:[ -> 19, -> 19 ]
019|     this{'values'}[n:6]:[ -> 25, -> 25 ] = tmp:[ -> 25, -> 25 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:20 > this{'values'}[n:3][1]:19):true
017|     tmp = this{'values'}[parent:1]:[ -> 20, -> 20 ]
018|     this{'values'}[parent:1]:[ -> 19, -> 19 ] = this{'values'}[n:3]:[ -> 19, -> 19 ]
019|     this{'values'}[n:3]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 18
007|  h{'push'}:sub ( ~key i:18 ~data i:18 )...
011|   push( ~array this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ] ] ~top [ key:18 , data:18]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 18, -> 18 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 18, -> 18 ] ] ):13
014|   while (n:13 > 1):true
015|    parent = (n:13 / 2):6
016|    if (this{'values'}[parent:6][1]:25 > this{'values'}[n:13][1]:18):true
017|     tmp = this{'values'}[parent:6]:[ -> 25, -> 25 ]
018|     this{'values'}[parent:6]:[ -> 18, -> 18 ] = this{'values'}[n:13]:[ -> 18, -> 18 ]
019|     this{'values'}[n:13]:[ -> 25, -> 25 ] = tmp:[ -> 25, -> 25 ]
019|    end # if
023|    n = parent:6
024|   end
014|   while (n:6 > 1):true
015|    parent = (n:6 / 2):3
016|    if (this{'values'}[parent:3][1]:20 > this{'values'}[n:6][1]:18):true
017|     tmp = this{'values'}[parent:3]:[ -> 20, -> 20 ]
018|     this{'values'}[parent:3]:[ -> 18, -> 18 ] = this{'values'}[n:6]:[ -> 18, -> 18 ]
019|     this{'values'}[n:6]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:19 > this{'values'}[n:3][1]:18):true
017|     tmp = this{'values'}[parent:1]:[ -> 19, -> 19 ]
018|     this{'values'}[parent:1]:[ -> 18, -> 18 ] = this{'values'}[n:3]:[ -> 18, -> 18 ]
019|     this{'values'}[n:3]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 17
007|  h{'push'}:sub ( ~key i:17 ~data i:17 )...
011|   push( ~array this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 19, -> 19 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ] ] ~top [ key:17 , data:17]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 19, -> 19 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 17, -> 17 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 19, -> 19 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 17, -> 17 ] ] ):14
014|   while (n:14 > 1):true
015|    parent = (n:14 / 2):7
016|    if (this{'values'}[parent:7][1]:26 > this{'values'}[n:14][1]:17):true
017|     tmp = this{'values'}[parent:7]:[ -> 26, -> 26 ]
018|     this{'values'}[parent:7]:[ -> 17, -> 17 ] = this{'values'}[n:14]:[ -> 17, -> 17 ]
019|     this{'values'}[n:14]:[ -> 26, -> 26 ] = tmp:[ -> 26, -> 26 ]
019|    end # if
023|    n = parent:7
024|   end
014|   while (n:7 > 1):true
015|    parent = (n:7 / 2):3
016|    if (this{'values'}[parent:3][1]:19 > this{'values'}[n:7][1]:17):true
017|     tmp = this{'values'}[parent:3]:[ -> 19, -> 19 ]
018|     this{'values'}[parent:3]:[ -> 17, -> 17 ] = this{'values'}[n:7]:[ -> 17, -> 17 ]
019|     this{'values'}[n:7]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:18 > this{'values'}[n:3][1]:17):true
017|     tmp = this{'values'}[parent:1]:[ -> 18, -> 18 ]
018|     this{'values'}[parent:1]:[ -> 17, -> 17 ] = this{'values'}[n:3]:[ -> 17, -> 17 ]
019|     this{'values'}[n:3]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 16
007|  h{'push'}:sub ( ~key i:16 ~data i:16 )...
011|   push( ~array this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ] ] ~top [ key:16 , data:16]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 16, -> 16 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 16, -> 16 ] ] ):15
014|   while (n:15 > 1):true
015|    parent = (n:15 / 2):7
016|    if (this{'values'}[parent:7][1]:19 > this{'values'}[n:15][1]:16):true
017|     tmp = this{'values'}[parent:7]:[ -> 19, -> 19 ]
018|     this{'values'}[parent:7]:[ -> 16, -> 16 ] = this{'values'}[n:15]:[ -> 16, -> 16 ]
019|     this{'values'}[n:15]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
019|    end # if
023|    n = parent:7
024|   end
014|   while (n:7 > 1):true
015|    parent = (n:7 / 2):3
016|    if (this{'values'}[parent:3][1]:18 > this{'values'}[n:7][1]:16):true
017|     tmp = this{'values'}[parent:3]:[ -> 18, -> 18 ]
018|     this{'values'}[parent:3]:[ -> 16, -> 16 ] = this{'values'}[n:7]:[ -> 16, -> 16 ]
019|     this{'values'}[n:7]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:17 > this{'values'}[n:3][1]:16):true
017|     tmp = this{'values'}[parent:1]:[ -> 17, -> 17 ]
018|     this{'values'}[parent:1]:[ -> 16, -> 16 ] = this{'values'}[n:3]:[ -> 16, -> 16 ]
019|     this{'values'}[n:3]:[ -> 17, -> 17 ] = tmp:[ -> 17, -> 17 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 15
007|  h{'push'}:sub ( ~key i:15 ~data i:15 )...
011|   push( ~array this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 21, -> 21 ], -> [ -> 17, -> 17 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ] ] ~top [ key:15 , data:15]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 21, -> 21 ], -> [ -> 17, -> 17 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 15, -> 15 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 21, -> 21 ], -> [ -> 17, -> 17 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 15, -> 15 ] ] ):16
014|   while (n:16 > 1):true
015|    parent = (n:16 / 2):8
016|    if (this{'values'}[parent:8][1]:30 > this{'values'}[n:16][1]:15):true
017|     tmp = this{'values'}[parent:8]:[ -> 30, -> 30 ]
018|     this{'values'}[parent:8]:[ -> 15, -> 15 ] = this{'values'}[n:16]:[ -> 15, -> 15 ]
019|     this{'values'}[n:16]:[ -> 30, -> 30 ] = tmp:[ -> 30, -> 30 ]
019|    end # if
023|    n = parent:8
024|   end
014|   while (n:8 > 1):true
015|    parent = (n:8 / 2):4
016|    if (this{'values'}[parent:4][1]:24 > this{'values'}[n:8][1]:15):true
017|     tmp = this{'values'}[parent:4]:[ -> 24, -> 24 ]
018|     this{'values'}[parent:4]:[ -> 15, -> 15 ] = this{'values'}[n:8]:[ -> 15, -> 15 ]
019|     this{'values'}[n:8]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
019|    end # if
023|    n = parent:4
024|   end
014|   while (n:4 > 1):true
015|    parent = (n:4 / 2):2
016|    if (this{'values'}[parent:2][1]:21 > this{'values'}[n:4][1]:15):true
017|     tmp = this{'values'}[parent:2]:[ -> 21, -> 21 ]
018|     this{'values'}[parent:2]:[ -> 15, -> 15 ] = this{'values'}[n:4]:[ -> 15, -> 15 ]
019|     this{'values'}[n:4]:[ -> 21, -> 21 ] = tmp:[ -> 21, -> 21 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:16 > this{'values'}[n:2][1]:15):true
017|     tmp = this{'values'}[parent:1]:[ -> 16, -> 16 ]
018|     this{'values'}[parent:1]:[ -> 15, -> 15 ] = this{'values'}[n:2]:[ -> 15, -> 15 ]
019|     this{'values'}[n:2]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 14
007|  h{'push'}:sub ( ~key i:14 ~data i:14 )...
011|   push( ~array this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 16, -> 16 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ] ] ~top [ key:14 , data:14]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 16, -> 16 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 14, -> 14 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 16, -> 16 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 14, -> 14 ] ] ):17
014|   while (n:17 > 1):true
015|    parent = (n:17 / 2):8
016|    if (this{'values'}[parent:8][1]:24 > this{'values'}[n:17][1]:14):true
017|     tmp = this{'values'}[parent:8]:[ -> 24, -> 24 ]
018|     this{'values'}[parent:8]:[ -> 14, -> 14 ] = this{'values'}[n:17]:[ -> 14, -> 14 ]
019|     this{'values'}[n:17]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
019|    end # if
023|    n = parent:8
024|   end
014|   while (n:8 > 1):true
015|    parent = (n:8 / 2):4
016|    if (this{'values'}[parent:4][1]:21 > this{'values'}[n:8][1]:14):true
017|     tmp = this{'values'}[parent:4]:[ -> 21, -> 21 ]
018|     this{'values'}[parent:4]:[ -> 14, -> 14 ] = this{'values'}[n:8]:[ -> 14, -> 14 ]
019|     this{'values'}[n:8]:[ -> 21, -> 21 ] = tmp:[ -> 21, -> 21 ]
019|    end # if
023|    n = parent:4
024|   end
014|   while (n:4 > 1):true
015|    parent = (n:4 / 2):2
016|    if (this{'values'}[parent:2][1]:16 > this{'values'}[n:4][1]:14):true
017|     tmp = this{'values'}[parent:2]:[ -> 16, -> 16 ]
018|     this{'values'}[parent:2]:[ -> 14, -> 14 ] = this{'values'}[n:4]:[ -> 14, -> 14 ]
019|     this{'values'}[n:4]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:15 > this{'values'}[n:2][1]:14):true
017|     tmp = this{'values'}[parent:1]:[ -> 15, -> 15 ]
018|     this{'values'}[parent:1]:[ -> 14, -> 14 ] = this{'values'}[n:2]:[ -> 14, -> 14 ]
019|     this{'values'}[n:2]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 13
007|  h{'push'}:sub ( ~key i:13 ~data i:13 )...
011|   push( ~array this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ] ] ~top [ key:13 , data:13]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ] ] ):18
014|   while (n:18 > 1):true
015|    parent = (n:18 / 2):9
016|    if (this{'values'}[parent:9][1]:27 > this{'values'}[n:18][1]:13):true
017|     tmp = this{'values'}[parent:9]:[ -> 27, -> 27 ]
018|     this{'values'}[parent:9]:[ -> 13, -> 13 ] = this{'values'}[n:18]:[ -> 13, -> 13 ]
019|     this{'values'}[n:18]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
019|    end # if
023|    n = parent:9
024|   end
014|   while (n:9 > 1):true
015|    parent = (n:9 / 2):4
016|    if (this{'values'}[parent:4][1]:16 > this{'values'}[n:9][1]:13):true
017|     tmp = this{'values'}[parent:4]:[ -> 16, -> 16 ]
018|     this{'values'}[parent:4]:[ -> 13, -> 13 ] = this{'values'}[n:9]:[ -> 13, -> 13 ]
019|     this{'values'}[n:9]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
019|    end # if
023|    n = parent:4
024|   end
014|   while (n:4 > 1):true
015|    parent = (n:4 / 2):2
016|    if (this{'values'}[parent:2][1]:15 > this{'values'}[n:4][1]:13):true
017|     tmp = this{'values'}[parent:2]:[ -> 15, -> 15 ]
018|     this{'values'}[parent:2]:[ -> 13, -> 13 ] = this{'values'}[n:4]:[ -> 13, -> 13 ]
019|     this{'values'}[n:4]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:14 > this{'values'}[n:2][1]:13):true
017|     tmp = this{'values'}[parent:1]:[ -> 14, -> 14 ]
018|     this{'values'}[parent:1]:[ -> 13, -> 13 ] = this{'values'}[n:2]:[ -> 13, -> 13 ]
019|     this{'values'}[n:2]:[ -> 14, -> 14 ] = tmp:[ -> 14, -> 14 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 12
007|  h{'push'}:sub ( ~key i:12 ~data i:12 )...
011|   push( ~array this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ] ] ~top [ key:12 , data:12]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 12, -> 12 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 12, -> 12 ] ] ):19
014|   while (n:19 > 1):true
015|    parent = (n:19 / 2):9
016|    if (this{'values'}[parent:9][1]:16 > this{'values'}[n:19][1]:12):true
017|     tmp = this{'values'}[parent:9]:[ -> 16, -> 16 ]
018|     this{'values'}[parent:9]:[ -> 12, -> 12 ] = this{'values'}[n:19]:[ -> 12, -> 12 ]
019|     this{'values'}[n:19]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
019|    end # if
023|    n = parent:9
024|   end
014|   while (n:9 > 1):true
015|    parent = (n:9 / 2):4
016|    if (this{'values'}[parent:4][1]:15 > this{'values'}[n:9][1]:12):true
017|     tmp = this{'values'}[parent:4]:[ -> 15, -> 15 ]
018|     this{'values'}[parent:4]:[ -> 12, -> 12 ] = this{'values'}[n:9]:[ -> 12, -> 12 ]
019|     this{'values'}[n:9]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
019|    end # if
023|    n = parent:4
024|   end
014|   while (n:4 > 1):true
015|    parent = (n:4 / 2):2
016|    if (this{'values'}[parent:2][1]:14 > this{'values'}[n:4][1]:12):true
017|     tmp = this{'values'}[parent:2]:[ -> 14, -> 14 ]
018|     this{'values'}[parent:2]:[ -> 12, -> 12 ] = this{'values'}[n:4]:[ -> 12, -> 12 ]
019|     this{'values'}[n:4]:[ -> 14, -> 14 ] = tmp:[ -> 14, -> 14 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:13 > this{'values'}[n:2][1]:12):true
017|     tmp = this{'values'}[parent:1]:[ -> 13, -> 13 ]
018|     this{'values'}[parent:1]:[ -> 12, -> 12 ] = this{'values'}[n:2]:[ -> 12, -> 12 ]
019|     this{'values'}[n:2]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 11
007|  h{'push'}:sub ( ~key i:11 ~data i:11 )...
011|   push( ~array this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 13, -> 13 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ] ] ~top [ key:11 , data:11]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 13, -> 13 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 11, -> 11 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 13, -> 13 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 11, -> 11 ] ] ):20
014|   while (n:20 > 1):true
015|    parent = (n:20 / 2):10
016|    if (this{'values'}[parent:10][1]:28 > this{'values'}[n:20][1]:11):true
017|     tmp = this{'values'}[parent:10]:[ -> 28, -> 28 ]
018|     this{'values'}[parent:10]:[ -> 11, -> 11 ] = this{'values'}[n:20]:[ -> 11, -> 11 ]
019|     this{'values'}[n:20]:[ -> 28, -> 28 ] = tmp:[ -> 28, -> 28 ]
019|    end # if
023|    n = parent:10
024|   end
014|   while (n:10 > 1):true
015|    parent = (n:10 / 2):5
016|    if (this{'values'}[parent:5][1]:22 > this{'values'}[n:10][1]:11):true
017|     tmp = this{'values'}[parent:5]:[ -> 22, -> 22 ]
018|     this{'values'}[parent:5]:[ -> 11, -> 11 ] = this{'values'}[n:10]:[ -> 11, -> 11 ]
019|     this{'values'}[n:10]:[ -> 22, -> 22 ] = tmp:[ -> 22, -> 22 ]
019|    end # if
023|    n = parent:5
024|   end
014|   while (n:5 > 1):true
015|    parent = (n:5 / 2):2
016|    if (this{'values'}[parent:2][1]:13 > this{'values'}[n:5][1]:11):true
017|     tmp = this{'values'}[parent:2]:[ -> 13, -> 13 ]
018|     this{'values'}[parent:2]:[ -> 11, -> 11 ] = this{'values'}[n:5]:[ -> 11, -> 11 ]
019|     this{'values'}[n:5]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:12 > this{'values'}[n:2][1]:11):true
017|     tmp = this{'values'}[parent:1]:[ -> 12, -> 12 ]
018|     this{'values'}[parent:1]:[ -> 11, -> 11 ] = this{'values'}[n:2]:[ -> 11, -> 11 ]
019|     this{'values'}[n:2]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 10
007|  h{'push'}:sub ( ~key i:10 ~data i:10 )...
011|   push( ~array this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ] ] ~top [ key:10 , data:10]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 10, -> 10 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 10, -> 10 ] ] ):21
014|   while (n:21 > 1):true
015|    parent = (n:21 / 2):10
016|    if (this{'values'}[parent:10][1]:22 > this{'values'}[n:21][1]:10):true
017|     tmp = this{'values'}[parent:10]:[ -> 22, -> 22 ]
018|     this{'values'}[parent:10]:[ -> 10, -> 10 ] = this{'values'}[n:21]:[ -> 10, -> 10 ]
019|     this{'values'}[n:21]:[ -> 22, -> 22 ] = tmp:[ -> 22, -> 22 ]
019|    end # if
023|    n = parent:10
024|   end
014|   while (n:10 > 1):true
015|    parent = (n:10 / 2):5
016|    if (this{'values'}[parent:5][1]:13 > this{'values'}[n:10][1]:10):true
017|     tmp = this{'values'}[parent:5]:[ -> 13, -> 13 ]
018|     this{'values'}[parent:5]:[ -> 10, -> 10 ] = this{'values'}[n:10]:[ -> 10, -> 10 ]
019|     this{'values'}[n:10]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
019|    end # if
023|    n = parent:5
024|   end
014|   while (n:5 > 1):true
015|    parent = (n:5 / 2):2
016|    if (this{'values'}[parent:2][1]:12 > this{'values'}[n:5][1]:10):true
017|     tmp = this{'values'}[parent:2]:[ -> 12, -> 12 ]
018|     this{'values'}[parent:2]:[ -> 10, -> 10 ] = this{'values'}[n:5]:[ -> 10, -> 10 ]
019|     this{'values'}[n:5]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:11 > this{'values'}[n:2][1]:10):true
017|     tmp = this{'values'}[parent:1]:[ -> 11, -> 11 ]
018|     this{'values'}[parent:1]:[ -> 10, -> 10 ] = this{'values'}[n:2]:[ -> 10, -> 10 ]
019|     this{'values'}[n:2]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 9
007|  h{'push'}:sub ( ~key i:9 ~data i:9 )...
011|   push( ~array this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 12, -> 12 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ] ] ~top [ key:9 , data:9]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 12, -> 12 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 9, -> 9 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 12, -> 12 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 9, -> 9 ] ] ):22
014|   while (n:22 > 1):true
015|    parent = (n:22 / 2):11
016|    if (this{'values'}[parent:11][1]:23 > this{'values'}[n:22][1]:9):true
017|     tmp = this{'values'}[parent:11]:[ -> 23, -> 23 ]
018|     this{'values'}[parent:11]:[ -> 9, -> 9 ] = this{'values'}[n:22]:[ -> 9, -> 9 ]
019|     this{'values'}[n:22]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
019|    end # if
023|    n = parent:11
024|   end
014|   while (n:11 > 1):true
015|    parent = (n:11 / 2):5
016|    if (this{'values'}[parent:5][1]:12 > this{'values'}[n:11][1]:9):true
017|     tmp = this{'values'}[parent:5]:[ -> 12, -> 12 ]
018|     this{'values'}[parent:5]:[ -> 9, -> 9 ] = this{'values'}[n:11]:[ -> 9, -> 9 ]
019|     this{'values'}[n:11]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
019|    end # if
023|    n = parent:5
024|   end
014|   while (n:5 > 1):true
015|    parent = (n:5 / 2):2
016|    if (this{'values'}[parent:2][1]:11 > this{'values'}[n:5][1]:9):true
017|     tmp = this{'values'}[parent:2]:[ -> 11, -> 11 ]
018|     this{'values'}[parent:2]:[ -> 9, -> 9 ] = this{'values'}[n:5]:[ -> 9, -> 9 ]
019|     this{'values'}[n:5]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:10 > this{'values'}[n:2][1]:9):true
017|     tmp = this{'values'}[parent:1]:[ -> 10, -> 10 ]
018|     this{'values'}[parent:1]:[ -> 9, -> 9 ] = this{'values'}[n:2]:[ -> 9, -> 9 ]
019|     this{'values'}[n:2]:[ -> 10, -> 10 ] = tmp:[ -> 10, -> 10 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 8
007|  h{'push'}:sub ( ~key i:8 ~data i:8 )...
011|   push( ~array this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ] ] ~top [ key:8 , data:8]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 8, -> 8 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 8, -> 8 ] ] ):23
014|   while (n:23 > 1):true
015|    parent = (n:23 / 2):11
016|    if (this{'values'}[parent:11][1]:12 > this{'values'}[n:23][1]:8):true
017|     tmp = this{'values'}[parent:11]:[ -> 12, -> 12 ]
018|     this{'values'}[parent:11]:[ -> 8, -> 8 ] = this{'values'}[n:23]:[ -> 8, -> 8 ]
019|     this{'values'}[n:23]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
019|    end # if
023|    n = parent:11
024|   end
014|   while (n:11 > 1):true
015|    parent = (n:11 / 2):5
016|    if (this{'values'}[parent:5][1]:11 > this{'values'}[n:11][1]:8):true
017|     tmp = this{'values'}[parent:5]:[ -> 11, -> 11 ]
018|     this{'values'}[parent:5]:[ -> 8, -> 8 ] = this{'values'}[n:11]:[ -> 8, -> 8 ]
019|     this{'values'}[n:11]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
019|    end # if
023|    n = parent:5
024|   end
014|   while (n:5 > 1):true
015|    parent = (n:5 / 2):2
016|    if (this{'values'}[parent:2][1]:10 > this{'values'}[n:5][1]:8):true
017|     tmp = this{'values'}[parent:2]:[ -> 10, -> 10 ]
018|     this{'values'}[parent:2]:[ -> 8, -> 8 ] = this{'values'}[n:5]:[ -> 8, -> 8 ]
019|     this{'values'}[n:5]:[ -> 10, -> 10 ] = tmp:[ -> 10, -> 10 ]
019|    end # if
023|    n = parent:2
024|   end
014|   while (n:2 > 1):true
015|    parent = (n:2 / 2):1
016|    if (this{'values'}[parent:1][1]:9 > this{'values'}[n:2][1]:8):true
017|     tmp = this{'values'}[parent:1]:[ -> 9, -> 9 ]
018|     this{'values'}[parent:1]:[ -> 8, -> 8 ] = this{'values'}[n:2]:[ -> 8, -> 8 ]
019|     this{'values'}[n:2]:[ -> 9, -> 9 ] = tmp:[ -> 9, -> 9 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 7
007|  h{'push'}:sub ( ~key i:7 ~data i:7 )...
011|   push( ~array this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 9, -> 9 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ] ] ~top [ key:7 , data:7]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 9, -> 9 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 7, -> 7 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 9, -> 9 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 7, -> 7 ] ] ):24
014|   while (n:24 > 1):true
015|    parent = (n:24 / 2):12
016|    if (this{'values'}[parent:12][1]:29 > this{'values'}[n:24][1]:7):true
017|     tmp = this{'values'}[parent:12]:[ -> 29, -> 29 ]
018|     this{'values'}[parent:12]:[ -> 7, -> 7 ] = this{'values'}[n:24]:[ -> 7, -> 7 ]
019|     this{'values'}[n:24]:[ -> 29, -> 29 ] = tmp:[ -> 29, -> 29 ]
019|    end # if
023|    n = parent:12
024|   end
014|   while (n:12 > 1):true
015|    parent = (n:12 / 2):6
016|    if (this{'values'}[parent:6][1]:20 > this{'values'}[n:12][1]:7):true
017|     tmp = this{'values'}[parent:6]:[ -> 20, -> 20 ]
018|     this{'values'}[parent:6]:[ -> 7, -> 7 ] = this{'values'}[n:12]:[ -> 7, -> 7 ]
019|     this{'values'}[n:12]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
019|    end # if
023|    n = parent:6
024|   end
014|   while (n:6 > 1):true
015|    parent = (n:6 / 2):3
016|    if (this{'values'}[parent:3][1]:17 > this{'values'}[n:6][1]:7):true
017|     tmp = this{'values'}[parent:3]:[ -> 17, -> 17 ]
018|     this{'values'}[parent:3]:[ -> 7, -> 7 ] = this{'values'}[n:6]:[ -> 7, -> 7 ]
019|     this{'values'}[n:6]:[ -> 17, -> 17 ] = tmp:[ -> 17, -> 17 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:8 > this{'values'}[n:3][1]:7):true
017|     tmp = this{'values'}[parent:1]:[ -> 8, -> 8 ]
018|     this{'values'}[parent:1]:[ -> 7, -> 7 ] = this{'values'}[n:3]:[ -> 7, -> 7 ]
019|     this{'values'}[n:3]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 6
007|  h{'push'}:sub ( ~key i:6 ~data i:6 )...
011|   push( ~array this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ] ] ~top [ key:6 , data:6]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 6, -> 6 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 6, -> 6 ] ] ):25
014|   while (n:25 > 1):true
015|    parent = (n:25 / 2):12
016|    if (this{'values'}[parent:12][1]:20 > this{'values'}[n:25][1]:6):true
017|     tmp = this{'values'}[parent:12]:[ -> 20, -> 20 ]
018|     this{'values'}[parent:12]:[ -> 6, -> 6 ] = this{'values'}[n:25]:[ -> 6, -> 6 ]
019|     this{'values'}[n:25]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
019|    end # if
023|    n = parent:12
024|   end
014|   while (n:12 > 1):true
015|    parent = (n:12 / 2):6
016|    if (this{'values'}[parent:6][1]:17 > this{'values'}[n:12][1]:6):true
017|     tmp = this{'values'}[parent:6]:[ -> 17, -> 17 ]
018|     this{'values'}[parent:6]:[ -> 6, -> 6 ] = this{'values'}[n:12]:[ -> 6, -> 6 ]
019|     this{'values'}[n:12]:[ -> 17, -> 17 ] = tmp:[ -> 17, -> 17 ]
019|    end # if
023|    n = parent:6
024|   end
014|   while (n:6 > 1):true
015|    parent = (n:6 / 2):3
016|    if (this{'values'}[parent:3][1]:8 > this{'values'}[n:6][1]:6):true
017|     tmp = this{'values'}[parent:3]:[ -> 8, -> 8 ]
018|     this{'values'}[parent:3]:[ -> 6, -> 6 ] = this{'values'}[n:6]:[ -> 6, -> 6 ]
019|     this{'values'}[n:6]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:7 > this{'values'}[n:3][1]:6):true
017|     tmp = this{'values'}[parent:1]:[ -> 7, -> 7 ]
018|     this{'values'}[parent:1]:[ -> 6, -> 6 ] = this{'values'}[n:3]:[ -> 6, -> 6 ]
019|     this{'values'}[n:3]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 5
007|  h{'push'}:sub ( ~key i:5 ~data i:5 )...
011|   push( ~array this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 9, -> 9 ], -> [ -> 7, -> 7 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 8, -> 8 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ] ] ~top [ key:5 , data:5]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 9, -> 9 ], -> [ -> 7, -> 7 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 8, -> 8 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 5, -> 5 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 9, -> 9 ], -> [ -> 7, -> 7 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 8, -> 8 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 5, -> 5 ] ] ):26
014|   while (n:26 > 1):true
015|    parent = (n:26 / 2):13
016|    if (this{'values'}[parent:13][1]:25 > this{'values'}[n:26][1]:5):true
017|     tmp = this{'values'}[parent:13]:[ -> 25, -> 25 ]
018|     this{'values'}[parent:13]:[ -> 5, -> 5 ] = this{'values'}[n:26]:[ -> 5, -> 5 ]
019|     this{'values'}[n:26]:[ -> 25, -> 25 ] = tmp:[ -> 25, -> 25 ]
019|    end # if
023|    n = parent:13
024|   end
014|   while (n:13 > 1):true
015|    parent = (n:13 / 2):6
016|    if (this{'values'}[parent:6][1]:8 > this{'values'}[n:13][1]:5):true
017|     tmp = this{'values'}[parent:6]:[ -> 8, -> 8 ]
018|     this{'values'}[parent:6]:[ -> 5, -> 5 ] = this{'values'}[n:13]:[ -> 5, -> 5 ]
019|     this{'values'}[n:13]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
019|    end # if
023|    n = parent:6
024|   end
014|   while (n:6 > 1):true
015|    parent = (n:6 / 2):3
016|    if (this{'values'}[parent:3][1]:7 > this{'values'}[n:6][1]:5):true
017|     tmp = this{'values'}[parent:3]:[ -> 7, -> 7 ]
018|     this{'values'}[parent:3]:[ -> 5, -> 5 ] = this{'values'}[n:6]:[ -> 5, -> 5 ]
019|     this{'values'}[n:6]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:6 > this{'values'}[n:3][1]:5):true
017|     tmp = this{'values'}[parent:1]:[ -> 6, -> 6 ]
018|     this{'values'}[parent:1]:[ -> 5, -> 5 ] = this{'values'}[n:3]:[ -> 5, -> 5 ]
019|     this{'values'}[n:3]:[ -> 6, -> 6 ] = tmp:[ -> 6, -> 6 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 4
007|  h{'push'}:sub ( ~key i:4 ~data i:4 )...
011|   push( ~array this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ] ] ~top [ key:4 , data:4]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 4, -> 4 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 4, -> 4 ] ] ):27
014|   while (n:27 > 1):true
015|    parent = (n:27 / 2):13
016|    if (this{'values'}[parent:13][1]:8 > this{'values'}[n:27][1]:4):true
017|     tmp = this{'values'}[parent:13]:[ -> 8, -> 8 ]
018|     this{'values'}[parent:13]:[ -> 4, -> 4 ] = this{'values'}[n:27]:[ -> 4, -> 4 ]
019|     this{'values'}[n:27]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
019|    end # if
023|    n = parent:13
024|   end
014|   while (n:13 > 1):true
015|    parent = (n:13 / 2):6
016|    if (this{'values'}[parent:6][1]:7 > this{'values'}[n:13][1]:4):true
017|     tmp = this{'values'}[parent:6]:[ -> 7, -> 7 ]
018|     this{'values'}[parent:6]:[ -> 4, -> 4 ] = this{'values'}[n:13]:[ -> 4, -> 4 ]
019|     this{'values'}[n:13]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
019|    end # if
023|    n = parent:6
024|   end
014|   while (n:6 > 1):true
015|    parent = (n:6 / 2):3
016|    if (this{'values'}[parent:3][1]:6 > this{'values'}[n:6][1]:4):true
017|     tmp = this{'values'}[parent:3]:[ -> 6, -> 6 ]
018|     this{'values'}[parent:3]:[ -> 4, -> 4 ] = this{'values'}[n:6]:[ -> 4, -> 4 ]
019|     this{'values'}[n:6]:[ -> 6, -> 6 ] = tmp:[ -> 6, -> 6 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:5 > this{'values'}[n:3][1]:4):true
017|     tmp = this{'values'}[parent:1]:[ -> 5, -> 5 ]
018|     this{'values'}[parent:1]:[ -> 4, -> 4 ] = this{'values'}[n:3]:[ -> 4, -> 4 ]
019|     this{'values'}[n:3]:[ -> 5, -> 5 ] = tmp:[ -> 5, -> 5 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 3
007|  h{'push'}:sub ( ~key i:3 ~data i:3 )...
011|   push( ~array this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 9, -> 9 ], -> [ -> 5, -> 5 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ] ] ~top [ key:3 , data:3]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 9, -> 9 ], -> [ -> 5, -> 5 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 3, -> 3 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 9, -> 9 ], -> [ -> 5, -> 5 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 3, -> 3 ] ] ):28
014|   while (n:28 > 1):true
015|    parent = (n:28 / 2):14
016|    if (this{'values'}[parent:14][1]:26 > this{'values'}[n:28][1]:3):true
017|     tmp = this{'values'}[parent:14]:[ -> 26, -> 26 ]
018|     this{'values'}[parent:14]:[ -> 3, -> 3 ] = this{'values'}[n:28]:[ -> 3, -> 3 ]
019|     this{'values'}[n:28]:[ -> 26, -> 26 ] = tmp:[ -> 26, -> 26 ]
019|    end # if
023|    n = parent:14
024|   end
014|   while (n:14 > 1):true
015|    parent = (n:14 / 2):7
016|    if (this{'values'}[parent:7][1]:18 > this{'values'}[n:14][1]:3):true
017|     tmp = this{'values'}[parent:7]:[ -> 18, -> 18 ]
018|     this{'values'}[parent:7]:[ -> 3, -> 3 ] = this{'values'}[n:14]:[ -> 3, -> 3 ]
019|     this{'values'}[n:14]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
019|    end # if
023|    n = parent:7
024|   end
014|   while (n:7 > 1):true
015|    parent = (n:7 / 2):3
016|    if (this{'values'}[parent:3][1]:5 > this{'values'}[n:7][1]:3):true
017|     tmp = this{'values'}[parent:3]:[ -> 5, -> 5 ]
018|     this{'values'}[parent:3]:[ -> 3, -> 3 ] = this{'values'}[n:7]:[ -> 3, -> 3 ]
019|     this{'values'}[n:7]:[ -> 5, -> 5 ] = tmp:[ -> 5, -> 5 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:4 > this{'values'}[n:3][1]:3):true
017|     tmp = this{'values'}[parent:1]:[ -> 4, -> 4 ]
018|     this{'values'}[parent:1]:[ -> 3, -> 3 ] = this{'values'}[n:3]:[ -> 3, -> 3 ]
019|     this{'values'}[n:3]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 2
007|  h{'push'}:sub ( ~key i:2 ~data i:2 )...
011|   push( ~array this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 4, -> 4 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ] ] ~top [ key:2 , data:2]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 4, -> 4 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 2, -> 2 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 4, -> 4 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 2, -> 2 ] ] ):29
014|   while (n:29 > 1):true
015|    parent = (n:29 / 2):14
016|    if (this{'values'}[parent:14][1]:18 > this{'values'}[n:29][1]:2):true
017|     tmp = this{'values'}[parent:14]:[ -> 18, -> 18 ]
018|     this{'values'}[parent:14]:[ -> 2, -> 2 ] = this{'values'}[n:29]:[ -> 2, -> 2 ]
019|     this{'values'}[n:29]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
019|    end # if
023|    n = parent:14
024|   end
014|   while (n:14 > 1):true
015|    parent = (n:14 / 2):7
016|    if (this{'values'}[parent:7][1]:5 > this{'values'}[n:14][1]:2):true
017|     tmp = this{'values'}[parent:7]:[ -> 5, -> 5 ]
018|     this{'values'}[parent:7]:[ -> 2, -> 2 ] = this{'values'}[n:14]:[ -> 2, -> 2 ]
019|     this{'values'}[n:14]:[ -> 5, -> 5 ] = tmp:[ -> 5, -> 5 ]
019|    end # if
023|    n = parent:7
024|   end
014|   while (n:7 > 1):true
015|    parent = (n:7 / 2):3
016|    if (this{'values'}[parent:3][1]:4 > this{'values'}[n:7][1]:2):true
017|     tmp = this{'values'}[parent:3]:[ -> 4, -> 4 ]
018|     this{'values'}[parent:3]:[ -> 2, -> 2 ] = this{'values'}[n:7]:[ -> 2, -> 2 ]
019|     this{'values'}[n:7]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:3 > this{'values'}[n:3][1]:2):true
017|     tmp = this{'values'}[parent:1]:[ -> 3, -> 3 ]
018|     this{'values'}[parent:1]:[ -> 2, -> 2 ] = this{'values'}[n:3]:[ -> 2, -> 2 ]
019|     this{'values'}[n:3]:[ -> 3, -> 3 ] = tmp:[ -> 3, -> 3 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| for i = 1
007|  h{'push'}:sub ( ~key i:1 ~data i:1 )...
011|   push( ~array this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 9, -> 9 ], -> [ -> 3, -> 3 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ] ] ~top [ key:1 , data:1]  )...
013|   ... = size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 9, -> 9 ], -> [ -> 3, -> 3 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ], -> [ -> 1, -> 1 ] ] )...
013|   n = size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 9, -> 9 ], -> [ -> 3, -> 3 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ], -> [ -> 1, -> 1 ] ] ):30
014|   while (n:30 > 1):true
015|    parent = (n:30 / 2):15
016|    if (this{'values'}[parent:15][1]:19 > this{'values'}[n:30][1]:1):true
017|     tmp = this{'values'}[parent:15]:[ -> 19, -> 19 ]
018|     this{'values'}[parent:15]:[ -> 1, -> 1 ] = this{'values'}[n:30]:[ -> 1, -> 1 ]
019|     this{'values'}[n:30]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
019|    end # if
023|    n = parent:15
024|   end
014|   while (n:15 > 1):true
015|    parent = (n:15 / 2):7
016|    if (this{'values'}[parent:7][1]:4 > this{'values'}[n:15][1]:1):true
017|     tmp = this{'values'}[parent:7]:[ -> 4, -> 4 ]
018|     this{'values'}[parent:7]:[ -> 1, -> 1 ] = this{'values'}[n:15]:[ -> 1, -> 1 ]
019|     this{'values'}[n:15]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
019|    end # if
023|    n = parent:7
024|   end
014|   while (n:7 > 1):true
015|    parent = (n:7 / 2):3
016|    if (this{'values'}[parent:3][1]:3 > this{'values'}[n:7][1]:1):true
017|     tmp = this{'values'}[parent:3]:[ -> 3, -> 3 ]
018|     this{'values'}[parent:3]:[ -> 1, -> 1 ] = this{'values'}[n:7]:[ -> 1, -> 1 ]
019|     this{'values'}[n:7]:[ -> 3, -> 3 ] = tmp:[ -> 3, -> 3 ]
019|    end # if
023|    n = parent:3
024|   end
014|   while (n:3 > 1):true
015|    parent = (n:3 / 2):1
016|    if (this{'values'}[parent:1][1]:2 > this{'values'}[n:3][1]:1):true
017|     tmp = this{'values'}[parent:1]:[ -> 2, -> 2 ]
018|     this{'values'}[parent:1]:[ -> 1, -> 1 ] = this{'values'}[n:3]:[ -> 1, -> 1 ]
019|     this{'values'}[n:3]:[ -> 2, -> 2 ] = tmp:[ -> 2, -> 2 ]
019|    end # if
023|    n = parent:1
024|   end
014|   while (n:1 > 1):false
024|   end # finish loop
006| end
006| for ...
006| end # finish for loop
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 3, -> 3 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 3, -> 3 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ] ] ):30 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 3, -> 3 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 3, -> 3 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ] ] ):30
040|   if (sz:30 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 1, -> 1 ]
045|   this{'values'}[1]:[ -> 19, -> 19 ] = this{'values'}[sz:30]:[ -> 19, -> 19 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4b5e0)19, -> (0x8b4af88)19 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 3, -> 3 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ], -> [ -> <0x8b4b5e0> , -> <0x8b4af88>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4b5e0)19, -> (0x8b4af88)19 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 3, -> 3 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ], -> [ -> <0x8b4b5e0> , -> <0x8b4af88>  ] ] ):-> [ -> 19, -> 19 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:30):false
055|    end # if
058|    if (leftn:3 >= sz:30):false
062|    else
065|     if ((this{'values'}[pos:1][1]:19 < this{'values'}[rightn:2][1]:9):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:9 < this{'values'}[leftn:3][1]:2):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 2, -> 2 ]
079|    this{'values'}[nextn:3]:[ -> 19, -> 19 ] = this{'values'}[pos:1]:[ -> 19, -> 19 ]
080|    this{'values'}[pos:1]:[ -> 2, -> 2 ] = tmp:[ -> 2, -> 2 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:30):false
055|    end # if
058|    if (leftn:7 >= sz:30):false
062|    else
065|     if ((this{'values'}[pos:3][1]:19 < this{'values'}[rightn:6][1]:6):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:6][1]:6 < this{'values'}[leftn:7][1]:3):false
072|     else
074|      nextn = leftn:7
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:7]:[ -> 3, -> 3 ]
079|    this{'values'}[nextn:7]:[ -> 19, -> 19 ] = this{'values'}[pos:3]:[ -> 19, -> 19 ]
080|    this{'values'}[pos:3]:[ -> 3, -> 3 ] = tmp:[ -> 3, -> 3 ]
082|    pos = nextn:7
083|   end
050|   loop
051|    rightn = (pos:7 * 2):14
052|    leftn = ((pos:7 * 2):14 + 1):15
054|    if (rightn:14 >= sz:30):false
055|    end # if
058|    if (leftn:15 >= sz:30):false
062|    else
065|     if ((this{'values'}[pos:7][1]:19 < this{'values'}[rightn:14][1]:5):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:14][1]:5 < this{'values'}[leftn:15][1]:4):false
072|     else
074|      nextn = leftn:15
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:15]:[ -> 4, -> 4 ]
079|    this{'values'}[nextn:15]:[ -> 19, -> 19 ] = this{'values'}[pos:7]:[ -> 19, -> 19 ]
080|    this{'values'}[pos:7]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
082|    pos = nextn:15
083|   end
050|   loop
051|    rightn = (pos:15 * 2):30
052|    leftn = ((pos:15 * 2):30 + 1):31
054|    if (rightn:30 >= sz:30):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 1, -> 1 ]
011|  [ key:-> 1 , val:-> 1]  = h{'pop'}:sub (  ):[ -> 1, -> 1 ]
013|  println( ~msg 'key ' .. key:1 .. ' value ' .. val:1 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 9, -> 9 ], -> [ -> 3, -> 3 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 9, -> 9 ], -> [ -> 3, -> 3 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ] ] ):29 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 9, -> 9 ], -> [ -> 3, -> 3 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 9, -> 9 ], -> [ -> 3, -> 3 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 18, -> 18 ] ] ):29
040|   if (sz:29 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 2, -> 2 ]
045|   this{'values'}[1]:[ -> 18, -> 18 ] = this{'values'}[sz:29]:[ -> 18, -> 18 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4bd48)18, -> (0x8b4b670)18 ], -> [ -> 9, -> 9 ], -> [ -> 3, -> 3 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> <0x8b4bd48> , -> <0x8b4b670>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4bd48)18, -> (0x8b4b670)18 ], -> [ -> 9, -> 9 ], -> [ -> 3, -> 3 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 5, -> 5 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> <0x8b4bd48> , -> <0x8b4b670>  ] ] ):-> [ -> 18, -> 18 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:29):false
055|    end # if
058|    if (leftn:3 >= sz:29):false
062|    else
065|     if ((this{'values'}[pos:1][1]:18 < this{'values'}[rightn:2][1]:9):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:9 < this{'values'}[leftn:3][1]:3):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 3, -> 3 ]
079|    this{'values'}[nextn:3]:[ -> 18, -> 18 ] = this{'values'}[pos:1]:[ -> 18, -> 18 ]
080|    this{'values'}[pos:1]:[ -> 3, -> 3 ] = tmp:[ -> 3, -> 3 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:29):false
055|    end # if
058|    if (leftn:7 >= sz:29):false
062|    else
065|     if ((this{'values'}[pos:3][1]:18 < this{'values'}[rightn:6][1]:6):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:6][1]:6 < this{'values'}[leftn:7][1]:4):false
072|     else
074|      nextn = leftn:7
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:7]:[ -> 4, -> 4 ]
079|    this{'values'}[nextn:7]:[ -> 18, -> 18 ] = this{'values'}[pos:3]:[ -> 18, -> 18 ]
080|    this{'values'}[pos:3]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
082|    pos = nextn:7
083|   end
050|   loop
051|    rightn = (pos:7 * 2):14
052|    leftn = ((pos:7 * 2):14 + 1):15
054|    if (rightn:14 >= sz:29):false
055|    end # if
058|    if (leftn:15 >= sz:29):false
062|    else
065|     if ((this{'values'}[pos:7][1]:18 < this{'values'}[rightn:14][1]:5):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:14][1]:5 < this{'values'}[leftn:15][1]:19):true
072|      nextn = rightn:14
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:14]:[ -> 5, -> 5 ]
079|    this{'values'}[nextn:14]:[ -> 18, -> 18 ] = this{'values'}[pos:7]:[ -> 18, -> 18 ]
080|    this{'values'}[pos:7]:[ -> 5, -> 5 ] = tmp:[ -> 5, -> 5 ]
082|    pos = nextn:14
083|   end
050|   loop
051|    rightn = (pos:14 * 2):28
052|    leftn = ((pos:14 * 2):28 + 1):29
054|    if (rightn:28 >= sz:29):false
055|    end # if
058|    if (leftn:29 >= sz:29):true
059|     if (this{'values'}[pos:14][1]:18 < this{'values'}[rightn:28][1]:26):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 2, -> 2 ]
011|  [ key:-> 2 , val:-> 2]  = h{'pop'}:sub (  ):[ -> 2, -> 2 ]
013|  println( ~msg 'key ' .. key:2 .. ' value ' .. val:2 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 4, -> 4 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 4, -> 4 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ] ] ):28 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 4, -> 4 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 4, -> 4 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ] ] ):28
040|   if (sz:28 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 3, -> 3 ]
045|   this{'values'}[1]:[ -> 26, -> 26 ] = this{'values'}[sz:28]:[ -> 26, -> 26 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b489f0)26, -> (0x8b484b0)26 ], -> [ -> 9, -> 9 ], -> [ -> 4, -> 4 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> <0x8b489f0> , -> <0x8b484b0>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b489f0)26, -> (0x8b484b0)26 ], -> [ -> 9, -> 9 ], -> [ -> 4, -> 4 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ], -> [ -> <0x8b489f0> , -> <0x8b484b0>  ] ] ):-> [ -> 26, -> 26 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:28):false
055|    end # if
058|    if (leftn:3 >= sz:28):false
062|    else
065|     if ((this{'values'}[pos:1][1]:26 < this{'values'}[rightn:2][1]:9):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:9 < this{'values'}[leftn:3][1]:4):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 4, -> 4 ]
079|    this{'values'}[nextn:3]:[ -> 26, -> 26 ] = this{'values'}[pos:1]:[ -> 26, -> 26 ]
080|    this{'values'}[pos:1]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:28):false
055|    end # if
058|    if (leftn:7 >= sz:28):false
062|    else
065|     if ((this{'values'}[pos:3][1]:26 < this{'values'}[rightn:6][1]:6):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:6][1]:6 < this{'values'}[leftn:7][1]:5):false
072|     else
074|      nextn = leftn:7
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:7]:[ -> 5, -> 5 ]
079|    this{'values'}[nextn:7]:[ -> 26, -> 26 ] = this{'values'}[pos:3]:[ -> 26, -> 26 ]
080|    this{'values'}[pos:3]:[ -> 5, -> 5 ] = tmp:[ -> 5, -> 5 ]
082|    pos = nextn:7
083|   end
050|   loop
051|    rightn = (pos:7 * 2):14
052|    leftn = ((pos:7 * 2):14 + 1):15
054|    if (rightn:14 >= sz:28):false
055|    end # if
058|    if (leftn:15 >= sz:28):false
062|    else
065|     if ((this{'values'}[pos:7][1]:26 < this{'values'}[rightn:14][1]:18):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:14][1]:18 < this{'values'}[leftn:15][1]:19):true
072|      nextn = rightn:14
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:14]:[ -> 18, -> 18 ]
079|    this{'values'}[nextn:14]:[ -> 26, -> 26 ] = this{'values'}[pos:7]:[ -> 26, -> 26 ]
080|    this{'values'}[pos:7]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
082|    pos = nextn:14
083|   end
050|   loop
051|    rightn = (pos:14 * 2):28
052|    leftn = ((pos:14 * 2):28 + 1):29
054|    if (rightn:28 >= sz:28):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 3, -> 3 ]
011|  [ key:-> 3 , val:-> 3]  = h{'pop'}:sub (  ):[ -> 3, -> 3 ]
013|  println( ~msg 'key ' .. key:3 .. ' value ' .. val:3 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 9, -> 9 ], -> [ -> 5, -> 5 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 9, -> 9 ], -> [ -> 5, -> 5 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ] ] ):27 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 9, -> 9 ], -> [ -> 5, -> 5 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 9, -> 9 ], -> [ -> 5, -> 5 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 8, -> 8 ] ] ):27
040|   if (sz:27 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 4, -> 4 ]
045|   this{'values'}[1]:[ -> 8, -> 8 ] = this{'values'}[sz:27]:[ -> 8, -> 8 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b50fe0)8, -> (0x8b507b0)8 ], -> [ -> 9, -> 9 ], -> [ -> 5, -> 5 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> <0x8b50fe0> , -> <0x8b507b0>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b50fe0)8, -> (0x8b507b0)8 ], -> [ -> 9, -> 9 ], -> [ -> 5, -> 5 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 7, -> 7 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> <0x8b50fe0> , -> <0x8b507b0>  ] ] ):-> [ -> 8, -> 8 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:27):false
055|    end # if
058|    if (leftn:3 >= sz:27):false
062|    else
065|     if ((this{'values'}[pos:1][1]:8 < this{'values'}[rightn:2][1]:9):true and (this{'values'}[pos:1][1]:8 < this{'values'}[leftn:3][1]:5):false):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:9 < this{'values'}[leftn:3][1]:5):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 5, -> 5 ]
079|    this{'values'}[nextn:3]:[ -> 8, -> 8 ] = this{'values'}[pos:1]:[ -> 8, -> 8 ]
080|    this{'values'}[pos:1]:[ -> 5, -> 5 ] = tmp:[ -> 5, -> 5 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:27):false
055|    end # if
058|    if (leftn:7 >= sz:27):false
062|    else
065|     if ((this{'values'}[pos:3][1]:8 < this{'values'}[rightn:6][1]:6):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:6][1]:6 < this{'values'}[leftn:7][1]:18):true
072|      nextn = rightn:6
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:6]:[ -> 6, -> 6 ]
079|    this{'values'}[nextn:6]:[ -> 8, -> 8 ] = this{'values'}[pos:3]:[ -> 8, -> 8 ]
080|    this{'values'}[pos:3]:[ -> 6, -> 6 ] = tmp:[ -> 6, -> 6 ]
082|    pos = nextn:6
083|   end
050|   loop
051|    rightn = (pos:6 * 2):12
052|    leftn = ((pos:6 * 2):12 + 1):13
054|    if (rightn:12 >= sz:27):false
055|    end # if
058|    if (leftn:13 >= sz:27):false
062|    else
065|     if ((this{'values'}[pos:6][1]:8 < this{'values'}[rightn:12][1]:17):true and (this{'values'}[pos:6][1]:8 < this{'values'}[leftn:13][1]:7):false):false
067|     end # if
071|     if (this{'values'}[rightn:12][1]:17 < this{'values'}[leftn:13][1]:7):false
072|     else
074|      nextn = leftn:13
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:13]:[ -> 7, -> 7 ]
079|    this{'values'}[nextn:13]:[ -> 8, -> 8 ] = this{'values'}[pos:6]:[ -> 8, -> 8 ]
080|    this{'values'}[pos:6]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
082|    pos = nextn:13
083|   end
050|   loop
051|    rightn = (pos:13 * 2):26
052|    leftn = ((pos:13 * 2):26 + 1):27
054|    if (rightn:26 >= sz:27):false
055|    end # if
058|    if (leftn:27 >= sz:27):true
059|     if (this{'values'}[pos:13][1]:8 < this{'values'}[rightn:26][1]:25):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 4, -> 4 ]
011|  [ key:-> 4 , val:-> 4]  = h{'pop'}:sub (  ):[ -> 4, -> 4 ]
013|  println( ~msg 'key ' .. key:4 .. ' value ' .. val:4 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ] ] ):26 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ] ] ):26
040|   if (sz:26 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 5, -> 5 ]
045|   this{'values'}[1]:[ -> 25, -> 25 ] = this{'values'}[sz:26]:[ -> 25, -> 25 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b48f18)25, -> (0x8b48a80)25 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> <0x8b48f18> , -> <0x8b48a80>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b48f18)25, -> (0x8b48a80)25 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 8, -> 8 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ], -> [ -> <0x8b48f18> , -> <0x8b48a80>  ] ] ):-> [ -> 25, -> 25 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:26):false
055|    end # if
058|    if (leftn:3 >= sz:26):false
062|    else
065|     if ((this{'values'}[pos:1][1]:25 < this{'values'}[rightn:2][1]:9):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:9 < this{'values'}[leftn:3][1]:6):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 6, -> 6 ]
079|    this{'values'}[nextn:3]:[ -> 25, -> 25 ] = this{'values'}[pos:1]:[ -> 25, -> 25 ]
080|    this{'values'}[pos:1]:[ -> 6, -> 6 ] = tmp:[ -> 6, -> 6 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:26):false
055|    end # if
058|    if (leftn:7 >= sz:26):false
062|    else
065|     if ((this{'values'}[pos:3][1]:25 < this{'values'}[rightn:6][1]:7):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:6][1]:7 < this{'values'}[leftn:7][1]:18):true
072|      nextn = rightn:6
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:6]:[ -> 7, -> 7 ]
079|    this{'values'}[nextn:6]:[ -> 25, -> 25 ] = this{'values'}[pos:3]:[ -> 25, -> 25 ]
080|    this{'values'}[pos:3]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
082|    pos = nextn:6
083|   end
050|   loop
051|    rightn = (pos:6 * 2):12
052|    leftn = ((pos:6 * 2):12 + 1):13
054|    if (rightn:12 >= sz:26):false
055|    end # if
058|    if (leftn:13 >= sz:26):false
062|    else
065|     if ((this{'values'}[pos:6][1]:25 < this{'values'}[rightn:12][1]:17):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:12][1]:17 < this{'values'}[leftn:13][1]:8):false
072|     else
074|      nextn = leftn:13
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:13]:[ -> 8, -> 8 ]
079|    this{'values'}[nextn:13]:[ -> 25, -> 25 ] = this{'values'}[pos:6]:[ -> 25, -> 25 ]
080|    this{'values'}[pos:6]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
082|    pos = nextn:13
083|   end
050|   loop
051|    rightn = (pos:13 * 2):26
052|    leftn = ((pos:13 * 2):26 + 1):27
054|    if (rightn:26 >= sz:26):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 5, -> 5 ]
011|  [ key:-> 5 , val:-> 5]  = h{'pop'}:sub (  ):[ -> 5, -> 5 ]
013|  println( ~msg 'key ' .. key:5 .. ' value ' .. val:5 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 9, -> 9 ], -> [ -> 7, -> 7 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 8, -> 8 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 9, -> 9 ], -> [ -> 7, -> 7 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 8, -> 8 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ] ] ):25 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 9, -> 9 ], -> [ -> 7, -> 7 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 8, -> 8 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 9, -> 9 ], -> [ -> 7, -> 7 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 8, -> 8 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 20, -> 20 ] ] ):25
040|   if (sz:25 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 6, -> 6 ]
045|   this{'values'}[1]:[ -> 20, -> 20 ] = this{'values'}[sz:25]:[ -> 20, -> 20 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4aef8)20, -> (0x8b4a7b8)20 ], -> [ -> 9, -> 9 ], -> [ -> 7, -> 7 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 8, -> 8 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> <0x8b4aef8> , -> <0x8b4a7b8>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4aef8)20, -> (0x8b4a7b8)20 ], -> [ -> 9, -> 9 ], -> [ -> 7, -> 7 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 8, -> 8 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> <0x8b4aef8> , -> <0x8b4a7b8>  ] ] ):-> [ -> 20, -> 20 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:25):false
055|    end # if
058|    if (leftn:3 >= sz:25):false
062|    else
065|     if ((this{'values'}[pos:1][1]:20 < this{'values'}[rightn:2][1]:9):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:9 < this{'values'}[leftn:3][1]:7):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 7, -> 7 ]
079|    this{'values'}[nextn:3]:[ -> 20, -> 20 ] = this{'values'}[pos:1]:[ -> 20, -> 20 ]
080|    this{'values'}[pos:1]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:25):false
055|    end # if
058|    if (leftn:7 >= sz:25):false
062|    else
065|     if ((this{'values'}[pos:3][1]:20 < this{'values'}[rightn:6][1]:8):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:6][1]:8 < this{'values'}[leftn:7][1]:18):true
072|      nextn = rightn:6
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:6]:[ -> 8, -> 8 ]
079|    this{'values'}[nextn:6]:[ -> 20, -> 20 ] = this{'values'}[pos:3]:[ -> 20, -> 20 ]
080|    this{'values'}[pos:3]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
082|    pos = nextn:6
083|   end
050|   loop
051|    rightn = (pos:6 * 2):12
052|    leftn = ((pos:6 * 2):12 + 1):13
054|    if (rightn:12 >= sz:25):false
055|    end # if
058|    if (leftn:13 >= sz:25):false
062|    else
065|     if ((this{'values'}[pos:6][1]:20 < this{'values'}[rightn:12][1]:17):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:12][1]:17 < this{'values'}[leftn:13][1]:25):true
072|      nextn = rightn:12
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:12]:[ -> 17, -> 17 ]
079|    this{'values'}[nextn:12]:[ -> 20, -> 20 ] = this{'values'}[pos:6]:[ -> 20, -> 20 ]
080|    this{'values'}[pos:6]:[ -> 17, -> 17 ] = tmp:[ -> 17, -> 17 ]
082|    pos = nextn:12
083|   end
050|   loop
051|    rightn = (pos:12 * 2):24
052|    leftn = ((pos:12 * 2):24 + 1):25
054|    if (rightn:24 >= sz:25):false
055|    end # if
058|    if (leftn:25 >= sz:25):true
059|     if (this{'values'}[pos:12][1]:20 < this{'values'}[rightn:24][1]:29):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 6, -> 6 ]
011|  [ key:-> 6 , val:-> 6]  = h{'pop'}:sub (  ):[ -> 6, -> 6 ]
013|  println( ~msg 'key ' .. key:6 .. ' value ' .. val:6 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ] ] ):24 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ] ] ):24
040|   if (sz:24 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 7, -> 7 ]
045|   this{'values'}[1]:[ -> 29, -> 29 ] = this{'values'}[sz:24]:[ -> 29, -> 29 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47c58)29, -> (0x8b47ca8)29 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> <0x8b47c58> , -> <0x8b47ca8>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47c58)29, -> (0x8b47ca8)29 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ], -> [ -> <0x8b47c58> , -> <0x8b47ca8>  ] ] ):-> [ -> 29, -> 29 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:24):false
055|    end # if
058|    if (leftn:3 >= sz:24):false
062|    else
065|     if ((this{'values'}[pos:1][1]:29 < this{'values'}[rightn:2][1]:9):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:9 < this{'values'}[leftn:3][1]:8):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 8, -> 8 ]
079|    this{'values'}[nextn:3]:[ -> 29, -> 29 ] = this{'values'}[pos:1]:[ -> 29, -> 29 ]
080|    this{'values'}[pos:1]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:24):false
055|    end # if
058|    if (leftn:7 >= sz:24):false
062|    else
065|     if ((this{'values'}[pos:3][1]:29 < this{'values'}[rightn:6][1]:17):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:6][1]:17 < this{'values'}[leftn:7][1]:18):true
072|      nextn = rightn:6
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:6]:[ -> 17, -> 17 ]
079|    this{'values'}[nextn:6]:[ -> 29, -> 29 ] = this{'values'}[pos:3]:[ -> 29, -> 29 ]
080|    this{'values'}[pos:3]:[ -> 17, -> 17 ] = tmp:[ -> 17, -> 17 ]
082|    pos = nextn:6
083|   end
050|   loop
051|    rightn = (pos:6 * 2):12
052|    leftn = ((pos:6 * 2):12 + 1):13
054|    if (rightn:12 >= sz:24):false
055|    end # if
058|    if (leftn:13 >= sz:24):false
062|    else
065|     if ((this{'values'}[pos:6][1]:29 < this{'values'}[rightn:12][1]:20):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:12][1]:20 < this{'values'}[leftn:13][1]:25):true
072|      nextn = rightn:12
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:12]:[ -> 20, -> 20 ]
079|    this{'values'}[nextn:12]:[ -> 29, -> 29 ] = this{'values'}[pos:6]:[ -> 29, -> 29 ]
080|    this{'values'}[pos:6]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
082|    pos = nextn:12
083|   end
050|   loop
051|    rightn = (pos:12 * 2):24
052|    leftn = ((pos:12 * 2):24 + 1):25
054|    if (rightn:24 >= sz:24):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 7, -> 7 ]
011|  [ key:-> 7 , val:-> 7]  = h{'pop'}:sub (  ):[ -> 7, -> 7 ]
013|  println( ~msg 'key ' .. key:7 .. ' value ' .. val:7 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 9, -> 9 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 9, -> 9 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ] ] ):23 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 9, -> 9 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 9, -> 9 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 12, -> 12 ] ] ):23
040|   if (sz:23 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 8, -> 8 ]
045|   this{'values'}[1]:[ -> 12, -> 12 ] = this{'values'}[sz:23]:[ -> 12, -> 12 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4eca0)12, -> (0x8b4e470)12 ], -> [ -> 9, -> 9 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> <0x8b4eca0> , -> <0x8b4e470>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4eca0)12, -> (0x8b4e470)12 ], -> [ -> 9, -> 9 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 11, -> 11 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> <0x8b4eca0> , -> <0x8b4e470>  ] ] ):-> [ -> 12, -> 12 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:23):false
055|    end # if
058|    if (leftn:3 >= sz:23):false
062|    else
065|     if ((this{'values'}[pos:1][1]:12 < this{'values'}[rightn:2][1]:9):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:9 < this{'values'}[leftn:3][1]:17):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 9, -> 9 ]
079|    this{'values'}[nextn:2]:[ -> 12, -> 12 ] = this{'values'}[pos:1]:[ -> 12, -> 12 ]
080|    this{'values'}[pos:1]:[ -> 9, -> 9 ] = tmp:[ -> 9, -> 9 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:23):false
055|    end # if
058|    if (leftn:5 >= sz:23):false
062|    else
065|     if ((this{'values'}[pos:2][1]:12 < this{'values'}[rightn:4][1]:14):true and (this{'values'}[pos:2][1]:12 < this{'values'}[leftn:5][1]:10):false):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:14 < this{'values'}[leftn:5][1]:10):false
072|     else
074|      nextn = leftn:5
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:5]:[ -> 10, -> 10 ]
079|    this{'values'}[nextn:5]:[ -> 12, -> 12 ] = this{'values'}[pos:2]:[ -> 12, -> 12 ]
080|    this{'values'}[pos:2]:[ -> 10, -> 10 ] = tmp:[ -> 10, -> 10 ]
082|    pos = nextn:5
083|   end
050|   loop
051|    rightn = (pos:5 * 2):10
052|    leftn = ((pos:5 * 2):10 + 1):11
054|    if (rightn:10 >= sz:23):false
055|    end # if
058|    if (leftn:11 >= sz:23):false
062|    else
065|     if ((this{'values'}[pos:5][1]:12 < this{'values'}[rightn:10][1]:13):true and (this{'values'}[pos:5][1]:12 < this{'values'}[leftn:11][1]:11):false):false
067|     end # if
071|     if (this{'values'}[rightn:10][1]:13 < this{'values'}[leftn:11][1]:11):false
072|     else
074|      nextn = leftn:11
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:11]:[ -> 11, -> 11 ]
079|    this{'values'}[nextn:11]:[ -> 12, -> 12 ] = this{'values'}[pos:5]:[ -> 12, -> 12 ]
080|    this{'values'}[pos:5]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
082|    pos = nextn:11
083|   end
050|   loop
051|    rightn = (pos:11 * 2):22
052|    leftn = ((pos:11 * 2):22 + 1):23
054|    if (rightn:22 >= sz:23):false
055|    end # if
058|    if (leftn:23 >= sz:23):true
059|     if (this{'values'}[pos:11][1]:12 < this{'values'}[rightn:22][1]:23):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 8, -> 8 ]
011|  [ key:-> 8 , val:-> 8]  = h{'pop'}:sub (  ):[ -> 8, -> 8 ]
013|  println( ~msg 'key ' .. key:8 .. ' value ' .. val:8 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ] ] ):22 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ] ] ):22
040|   if (sz:22 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 9, -> 9 ]
045|   this{'values'}[1]:[ -> 23, -> 23 ] = this{'values'}[sz:22]:[ -> 23, -> 23 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b49968)23, -> (0x8b494d0)23 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> <0x8b49968> , -> <0x8b494d0>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b49968)23, -> (0x8b494d0)23 ], -> [ -> 10, -> 10 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 11, -> 11 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> <0x8b49968> , -> <0x8b494d0>  ] ] ):-> [ -> 23, -> 23 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:22):false
055|    end # if
058|    if (leftn:3 >= sz:22):false
062|    else
065|     if ((this{'values'}[pos:1][1]:23 < this{'values'}[rightn:2][1]:10):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:10 < this{'values'}[leftn:3][1]:17):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 10, -> 10 ]
079|    this{'values'}[nextn:2]:[ -> 23, -> 23 ] = this{'values'}[pos:1]:[ -> 23, -> 23 ]
080|    this{'values'}[pos:1]:[ -> 10, -> 10 ] = tmp:[ -> 10, -> 10 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:22):false
055|    end # if
058|    if (leftn:5 >= sz:22):false
062|    else
065|     if ((this{'values'}[pos:2][1]:23 < this{'values'}[rightn:4][1]:14):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:14 < this{'values'}[leftn:5][1]:11):false
072|     else
074|      nextn = leftn:5
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:5]:[ -> 11, -> 11 ]
079|    this{'values'}[nextn:5]:[ -> 23, -> 23 ] = this{'values'}[pos:2]:[ -> 23, -> 23 ]
080|    this{'values'}[pos:2]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
082|    pos = nextn:5
083|   end
050|   loop
051|    rightn = (pos:5 * 2):10
052|    leftn = ((pos:5 * 2):10 + 1):11
054|    if (rightn:10 >= sz:22):false
055|    end # if
058|    if (leftn:11 >= sz:22):false
062|    else
065|     if ((this{'values'}[pos:5][1]:23 < this{'values'}[rightn:10][1]:13):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:10][1]:13 < this{'values'}[leftn:11][1]:12):false
072|     else
074|      nextn = leftn:11
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:11]:[ -> 12, -> 12 ]
079|    this{'values'}[nextn:11]:[ -> 23, -> 23 ] = this{'values'}[pos:5]:[ -> 23, -> 23 ]
080|    this{'values'}[pos:5]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
082|    pos = nextn:11
083|   end
050|   loop
051|    rightn = (pos:11 * 2):22
052|    leftn = ((pos:11 * 2):22 + 1):23
054|    if (rightn:22 >= sz:22):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 9, -> 9 ]
011|  [ key:-> 9 , val:-> 9]  = h{'pop'}:sub (  ):[ -> 9, -> 9 ]
013|  println( ~msg 'key ' .. key:9 .. ' value ' .. val:9 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 12, -> 12 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 12, -> 12 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ] ] ):21 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 12, -> 12 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 12, -> 12 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ] ] ):21
040|   if (sz:21 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 10, -> 10 ]
045|   this{'values'}[1]:[ -> 22, -> 22 ] = this{'values'}[sz:21]:[ -> 22, -> 22 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4a048)22, -> (0x8b499f8)22 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 12, -> 12 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> <0x8b4a048> , -> <0x8b499f8>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4a048)22, -> (0x8b499f8)22 ], -> [ -> 11, -> 11 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 12, -> 12 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 13, -> 13 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> <0x8b4a048> , -> <0x8b499f8>  ] ] ):-> [ -> 22, -> 22 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:21):false
055|    end # if
058|    if (leftn:3 >= sz:21):false
062|    else
065|     if ((this{'values'}[pos:1][1]:22 < this{'values'}[rightn:2][1]:11):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:11 < this{'values'}[leftn:3][1]:17):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 11, -> 11 ]
079|    this{'values'}[nextn:2]:[ -> 22, -> 22 ] = this{'values'}[pos:1]:[ -> 22, -> 22 ]
080|    this{'values'}[pos:1]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:21):false
055|    end # if
058|    if (leftn:5 >= sz:21):false
062|    else
065|     if ((this{'values'}[pos:2][1]:22 < this{'values'}[rightn:4][1]:14):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:14 < this{'values'}[leftn:5][1]:12):false
072|     else
074|      nextn = leftn:5
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:5]:[ -> 12, -> 12 ]
079|    this{'values'}[nextn:5]:[ -> 22, -> 22 ] = this{'values'}[pos:2]:[ -> 22, -> 22 ]
080|    this{'values'}[pos:2]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
082|    pos = nextn:5
083|   end
050|   loop
051|    rightn = (pos:5 * 2):10
052|    leftn = ((pos:5 * 2):10 + 1):11
054|    if (rightn:10 >= sz:21):false
055|    end # if
058|    if (leftn:11 >= sz:21):false
062|    else
065|     if ((this{'values'}[pos:5][1]:22 < this{'values'}[rightn:10][1]:13):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:10][1]:13 < this{'values'}[leftn:11][1]:23):true
072|      nextn = rightn:10
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:10]:[ -> 13, -> 13 ]
079|    this{'values'}[nextn:10]:[ -> 22, -> 22 ] = this{'values'}[pos:5]:[ -> 22, -> 22 ]
080|    this{'values'}[pos:5]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
082|    pos = nextn:10
083|   end
050|   loop
051|    rightn = (pos:10 * 2):20
052|    leftn = ((pos:10 * 2):20 + 1):21
054|    if (rightn:20 >= sz:21):false
055|    end # if
058|    if (leftn:21 >= sz:21):true
059|     if (this{'values'}[pos:10][1]:22 < this{'values'}[rightn:20][1]:28):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 10, -> 10 ]
011|  [ key:-> 10 , val:-> 10]  = h{'pop'}:sub (  ):[ -> 10, -> 10 ]
013|  println( ~msg 'key ' .. key:10 .. ' value ' .. val:10 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ] ] ):20 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ] ] ):20
040|   if (sz:20 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 11, -> 11 ]
045|   this{'values'}[1]:[ -> 28, -> 28 ] = this{'values'}[sz:20]:[ -> 28, -> 28 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47d38)28, -> (0x8b48060)28 ], -> [ -> 12, -> 12 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> <0x8b47d38> , -> <0x8b48060>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47d38)28, -> (0x8b48060)28 ], -> [ -> 12, -> 12 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ], -> [ -> <0x8b47d38> , -> <0x8b48060>  ] ] ):-> [ -> 28, -> 28 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:20):false
055|    end # if
058|    if (leftn:3 >= sz:20):false
062|    else
065|     if ((this{'values'}[pos:1][1]:28 < this{'values'}[rightn:2][1]:12):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:12 < this{'values'}[leftn:3][1]:17):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 12, -> 12 ]
079|    this{'values'}[nextn:2]:[ -> 28, -> 28 ] = this{'values'}[pos:1]:[ -> 28, -> 28 ]
080|    this{'values'}[pos:1]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:20):false
055|    end # if
058|    if (leftn:5 >= sz:20):false
062|    else
065|     if ((this{'values'}[pos:2][1]:28 < this{'values'}[rightn:4][1]:14):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:14 < this{'values'}[leftn:5][1]:13):false
072|     else
074|      nextn = leftn:5
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:5]:[ -> 13, -> 13 ]
079|    this{'values'}[nextn:5]:[ -> 28, -> 28 ] = this{'values'}[pos:2]:[ -> 28, -> 28 ]
080|    this{'values'}[pos:2]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
082|    pos = nextn:5
083|   end
050|   loop
051|    rightn = (pos:5 * 2):10
052|    leftn = ((pos:5 * 2):10 + 1):11
054|    if (rightn:10 >= sz:20):false
055|    end # if
058|    if (leftn:11 >= sz:20):false
062|    else
065|     if ((this{'values'}[pos:5][1]:28 < this{'values'}[rightn:10][1]:22):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:10][1]:22 < this{'values'}[leftn:11][1]:23):true
072|      nextn = rightn:10
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:10]:[ -> 22, -> 22 ]
079|    this{'values'}[nextn:10]:[ -> 28, -> 28 ] = this{'values'}[pos:5]:[ -> 28, -> 28 ]
080|    this{'values'}[pos:5]:[ -> 22, -> 22 ] = tmp:[ -> 22, -> 22 ]
082|    pos = nextn:10
083|   end
050|   loop
051|    rightn = (pos:10 * 2):20
052|    leftn = ((pos:10 * 2):20 + 1):21
054|    if (rightn:20 >= sz:20):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 11, -> 11 ]
011|  [ key:-> 11 , val:-> 11]  = h{'pop'}:sub (  ):[ -> 11, -> 11 ]
013|  println( ~msg 'key ' .. key:11 .. ' value ' .. val:11 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 13, -> 13 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 13, -> 13 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ] ] ):19 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 13, -> 13 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 13, -> 13 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 16, -> 16 ] ] ):19
040|   if (sz:19 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 12, -> 12 ]
045|   this{'values'}[1]:[ -> 16, -> 16 ] = this{'values'}[sz:19]:[ -> 16, -> 16 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4cb58)16, -> (0x8b4c4e0)16 ], -> [ -> 13, -> 13 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> <0x8b4cb58> , -> <0x8b4c4e0>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4cb58)16, -> (0x8b4c4e0)16 ], -> [ -> 13, -> 13 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 15, -> 15 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> <0x8b4cb58> , -> <0x8b4c4e0>  ] ] ):-> [ -> 16, -> 16 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:19):false
055|    end # if
058|    if (leftn:3 >= sz:19):false
062|    else
065|     if ((this{'values'}[pos:1][1]:16 < this{'values'}[rightn:2][1]:13):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:13 < this{'values'}[leftn:3][1]:17):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 13, -> 13 ]
079|    this{'values'}[nextn:2]:[ -> 16, -> 16 ] = this{'values'}[pos:1]:[ -> 16, -> 16 ]
080|    this{'values'}[pos:1]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:19):false
055|    end # if
058|    if (leftn:5 >= sz:19):false
062|    else
065|     if ((this{'values'}[pos:2][1]:16 < this{'values'}[rightn:4][1]:14):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:14 < this{'values'}[leftn:5][1]:22):true
072|      nextn = rightn:4
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:4]:[ -> 14, -> 14 ]
079|    this{'values'}[nextn:4]:[ -> 16, -> 16 ] = this{'values'}[pos:2]:[ -> 16, -> 16 ]
080|    this{'values'}[pos:2]:[ -> 14, -> 14 ] = tmp:[ -> 14, -> 14 ]
082|    pos = nextn:4
083|   end
050|   loop
051|    rightn = (pos:4 * 2):8
052|    leftn = ((pos:4 * 2):8 + 1):9
054|    if (rightn:8 >= sz:19):false
055|    end # if
058|    if (leftn:9 >= sz:19):false
062|    else
065|     if ((this{'values'}[pos:4][1]:16 < this{'values'}[rightn:8][1]:21):true and (this{'values'}[pos:4][1]:16 < this{'values'}[leftn:9][1]:15):false):false
067|     end # if
071|     if (this{'values'}[rightn:8][1]:21 < this{'values'}[leftn:9][1]:15):false
072|     else
074|      nextn = leftn:9
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:9]:[ -> 15, -> 15 ]
079|    this{'values'}[nextn:9]:[ -> 16, -> 16 ] = this{'values'}[pos:4]:[ -> 16, -> 16 ]
080|    this{'values'}[pos:4]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
082|    pos = nextn:9
083|   end
050|   loop
051|    rightn = (pos:9 * 2):18
052|    leftn = ((pos:9 * 2):18 + 1):19
054|    if (rightn:18 >= sz:19):false
055|    end # if
058|    if (leftn:19 >= sz:19):true
059|     if (this{'values'}[pos:9][1]:16 < this{'values'}[rightn:18][1]:27):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 12, -> 12 ]
011|  [ key:-> 12 , val:-> 12]  = h{'pop'}:sub (  ):[ -> 12, -> 12 ]
013|  println( ~msg 'key ' .. key:12 .. ' value ' .. val:12 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ] ] ):18 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ] ] ):18
040|   if (sz:18 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 13, -> 13 ]
045|   this{'values'}[1]:[ -> 27, -> 27 ] = this{'values'}[sz:18]:[ -> 27, -> 27 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b483a0)27, -> (0x8b483f0)27 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> <0x8b483a0> , -> <0x8b483f0>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b483a0)27, -> (0x8b483f0)27 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 15, -> 15 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 16, -> 16 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ], -> [ -> <0x8b483a0> , -> <0x8b483f0>  ] ] ):-> [ -> 27, -> 27 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:18):false
055|    end # if
058|    if (leftn:3 >= sz:18):false
062|    else
065|     if ((this{'values'}[pos:1][1]:27 < this{'values'}[rightn:2][1]:14):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:14 < this{'values'}[leftn:3][1]:17):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 14, -> 14 ]
079|    this{'values'}[nextn:2]:[ -> 27, -> 27 ] = this{'values'}[pos:1]:[ -> 27, -> 27 ]
080|    this{'values'}[pos:1]:[ -> 14, -> 14 ] = tmp:[ -> 14, -> 14 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:18):false
055|    end # if
058|    if (leftn:5 >= sz:18):false
062|    else
065|     if ((this{'values'}[pos:2][1]:27 < this{'values'}[rightn:4][1]:15):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:15 < this{'values'}[leftn:5][1]:22):true
072|      nextn = rightn:4
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:4]:[ -> 15, -> 15 ]
079|    this{'values'}[nextn:4]:[ -> 27, -> 27 ] = this{'values'}[pos:2]:[ -> 27, -> 27 ]
080|    this{'values'}[pos:2]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
082|    pos = nextn:4
083|   end
050|   loop
051|    rightn = (pos:4 * 2):8
052|    leftn = ((pos:4 * 2):8 + 1):9
054|    if (rightn:8 >= sz:18):false
055|    end # if
058|    if (leftn:9 >= sz:18):false
062|    else
065|     if ((this{'values'}[pos:4][1]:27 < this{'values'}[rightn:8][1]:21):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:8][1]:21 < this{'values'}[leftn:9][1]:16):false
072|     else
074|      nextn = leftn:9
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:9]:[ -> 16, -> 16 ]
079|    this{'values'}[nextn:9]:[ -> 27, -> 27 ] = this{'values'}[pos:4]:[ -> 27, -> 27 ]
080|    this{'values'}[pos:4]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
082|    pos = nextn:9
083|   end
050|   loop
051|    rightn = (pos:9 * 2):18
052|    leftn = ((pos:9 * 2):18 + 1):19
054|    if (rightn:18 >= sz:18):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 13, -> 13 ]
011|  [ key:-> 13 , val:-> 13]  = h{'pop'}:sub (  ):[ -> 13, -> 13 ]
013|  println( ~msg 'key ' .. key:13 .. ' value ' .. val:13 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ] ] ):17 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 24, -> 24 ] ] ):17
040|   if (sz:17 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 14, -> 14 ]
045|   this{'values'}[1]:[ -> 24, -> 24 ] = this{'values'}[sz:17]:[ -> 24, -> 24 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b49440)24, -> (0x8b48fa8)24 ], -> [ -> 15, -> 15 ], -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> <0x8b49440> , -> <0x8b48fa8>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b49440)24, -> (0x8b48fa8)24 ], -> [ -> 15, -> 15 ], -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> <0x8b49440> , -> <0x8b48fa8>  ] ] ):-> [ -> 24, -> 24 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:17):false
055|    end # if
058|    if (leftn:3 >= sz:17):false
062|    else
065|     if ((this{'values'}[pos:1][1]:24 < this{'values'}[rightn:2][1]:15):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:15 < this{'values'}[leftn:3][1]:17):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 15, -> 15 ]
079|    this{'values'}[nextn:2]:[ -> 24, -> 24 ] = this{'values'}[pos:1]:[ -> 24, -> 24 ]
080|    this{'values'}[pos:1]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:17):false
055|    end # if
058|    if (leftn:5 >= sz:17):false
062|    else
065|     if ((this{'values'}[pos:2][1]:24 < this{'values'}[rightn:4][1]:16):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:16 < this{'values'}[leftn:5][1]:22):true
072|      nextn = rightn:4
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:4]:[ -> 16, -> 16 ]
079|    this{'values'}[nextn:4]:[ -> 24, -> 24 ] = this{'values'}[pos:2]:[ -> 24, -> 24 ]
080|    this{'values'}[pos:2]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
082|    pos = nextn:4
083|   end
050|   loop
051|    rightn = (pos:4 * 2):8
052|    leftn = ((pos:4 * 2):8 + 1):9
054|    if (rightn:8 >= sz:17):false
055|    end # if
058|    if (leftn:9 >= sz:17):false
062|    else
065|     if ((this{'values'}[pos:4][1]:24 < this{'values'}[rightn:8][1]:21):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:8][1]:21 < this{'values'}[leftn:9][1]:27):true
072|      nextn = rightn:8
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:8]:[ -> 21, -> 21 ]
079|    this{'values'}[nextn:8]:[ -> 24, -> 24 ] = this{'values'}[pos:4]:[ -> 24, -> 24 ]
080|    this{'values'}[pos:4]:[ -> 21, -> 21 ] = tmp:[ -> 21, -> 21 ]
082|    pos = nextn:8
083|   end
050|   loop
051|    rightn = (pos:8 * 2):16
052|    leftn = ((pos:8 * 2):16 + 1):17
054|    if (rightn:16 >= sz:17):false
055|    end # if
058|    if (leftn:17 >= sz:17):true
059|     if (this{'values'}[pos:8][1]:24 < this{'values'}[rightn:16][1]:30):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 14, -> 14 ]
011|  [ key:-> 14 , val:-> 14]  = h{'pop'}:sub (  ):[ -> 14, -> 14 ]
013|  println( ~msg 'key ' .. key:14 .. ' value ' .. val:14 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 16, -> 16 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 16, -> 16 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ] ] ):16 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 16, -> 16 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 16, -> 16 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ] ] ):16
040|   if (sz:16 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 15, -> 15 ]
045|   this{'values'}[1]:[ -> 30, -> 30 ] = this{'values'}[sz:16]:[ -> 30, -> 30 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b44808)30, -> (0x8b47b10)30 ], -> [ -> 16, -> 16 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> <0x8b44808> , -> <0x8b47b10>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b44808)30, -> (0x8b47b10)30 ], -> [ -> 16, -> 16 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ], -> [ -> <0x8b44808> , -> <0x8b47b10>  ] ] ):-> [ -> 30, -> 30 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:16):false
055|    end # if
058|    if (leftn:3 >= sz:16):false
062|    else
065|     if ((this{'values'}[pos:1][1]:30 < this{'values'}[rightn:2][1]:16):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:16 < this{'values'}[leftn:3][1]:17):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 16, -> 16 ]
079|    this{'values'}[nextn:2]:[ -> 30, -> 30 ] = this{'values'}[pos:1]:[ -> 30, -> 30 ]
080|    this{'values'}[pos:1]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:16):false
055|    end # if
058|    if (leftn:5 >= sz:16):false
062|    else
065|     if ((this{'values'}[pos:2][1]:30 < this{'values'}[rightn:4][1]:21):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:21 < this{'values'}[leftn:5][1]:22):true
072|      nextn = rightn:4
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:4]:[ -> 21, -> 21 ]
079|    this{'values'}[nextn:4]:[ -> 30, -> 30 ] = this{'values'}[pos:2]:[ -> 30, -> 30 ]
080|    this{'values'}[pos:2]:[ -> 21, -> 21 ] = tmp:[ -> 21, -> 21 ]
082|    pos = nextn:4
083|   end
050|   loop
051|    rightn = (pos:4 * 2):8
052|    leftn = ((pos:4 * 2):8 + 1):9
054|    if (rightn:8 >= sz:16):false
055|    end # if
058|    if (leftn:9 >= sz:16):false
062|    else
065|     if ((this{'values'}[pos:4][1]:30 < this{'values'}[rightn:8][1]:24):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:8][1]:24 < this{'values'}[leftn:9][1]:27):true
072|      nextn = rightn:8
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:8]:[ -> 24, -> 24 ]
079|    this{'values'}[nextn:8]:[ -> 30, -> 30 ] = this{'values'}[pos:4]:[ -> 30, -> 30 ]
080|    this{'values'}[pos:4]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
082|    pos = nextn:8
083|   end
050|   loop
051|    rightn = (pos:8 * 2):16
052|    leftn = ((pos:8 * 2):16 + 1):17
054|    if (rightn:16 >= sz:16):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 15, -> 15 ]
011|  [ key:-> 15 , val:-> 15]  = h{'pop'}:sub (  ):[ -> 15, -> 15 ]
013|  println( ~msg 'key ' .. key:15 .. ' value ' .. val:15 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 21, -> 21 ], -> [ -> 17, -> 17 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 21, -> 21 ], -> [ -> 17, -> 17 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ] ] ):15 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 21, -> 21 ], -> [ -> 17, -> 17 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 21, -> 21 ], -> [ -> 17, -> 17 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 19, -> 19 ] ] ):15
040|   if (sz:15 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 16, -> 16 ]
045|   this{'values'}[1]:[ -> 19, -> 19 ] = this{'values'}[sz:15]:[ -> 19, -> 19 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4b5e0)19, -> (0x8b4af88)19 ], -> [ -> 21, -> 21 ], -> [ -> 17, -> 17 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> <0x8b4b5e0> , -> <0x8b4af88>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b4b5e0)19, -> (0x8b4af88)19 ], -> [ -> 21, -> 21 ], -> [ -> 17, -> 17 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 18, -> 18 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> <0x8b4b5e0> , -> <0x8b4af88>  ] ] ):-> [ -> 19, -> 19 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:15):false
055|    end # if
058|    if (leftn:3 >= sz:15):false
062|    else
065|     if ((this{'values'}[pos:1][1]:19 < this{'values'}[rightn:2][1]:21):true and (this{'values'}[pos:1][1]:19 < this{'values'}[leftn:3][1]:17):false):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:21 < this{'values'}[leftn:3][1]:17):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 17, -> 17 ]
079|    this{'values'}[nextn:3]:[ -> 19, -> 19 ] = this{'values'}[pos:1]:[ -> 19, -> 19 ]
080|    this{'values'}[pos:1]:[ -> 17, -> 17 ] = tmp:[ -> 17, -> 17 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:15):false
055|    end # if
058|    if (leftn:7 >= sz:15):false
062|    else
065|     if ((this{'values'}[pos:3][1]:19 < this{'values'}[rightn:6][1]:20):true and (this{'values'}[pos:3][1]:19 < this{'values'}[leftn:7][1]:18):false):false
067|     end # if
071|     if (this{'values'}[rightn:6][1]:20 < this{'values'}[leftn:7][1]:18):false
072|     else
074|      nextn = leftn:7
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:7]:[ -> 18, -> 18 ]
079|    this{'values'}[nextn:7]:[ -> 19, -> 19 ] = this{'values'}[pos:3]:[ -> 19, -> 19 ]
080|    this{'values'}[pos:3]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
082|    pos = nextn:7
083|   end
050|   loop
051|    rightn = (pos:7 * 2):14
052|    leftn = ((pos:7 * 2):14 + 1):15
054|    if (rightn:14 >= sz:15):false
055|    end # if
058|    if (leftn:15 >= sz:15):true
059|     if (this{'values'}[pos:7][1]:19 < this{'values'}[rightn:14][1]:26):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 16, -> 16 ]
011|  [ key:-> 16 , val:-> 16]  = h{'pop'}:sub (  ):[ -> 16, -> 16 ]
013|  println( ~msg 'key ' .. key:16 .. ' value ' .. val:16 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ] ] ):14 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ] ] ):14
040|   if (sz:14 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 17, -> 17 ]
045|   this{'values'}[1]:[ -> 26, -> 26 ] = this{'values'}[sz:14]:[ -> 26, -> 26 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b489f0)26, -> (0x8b484b0)26 ], -> [ -> 21, -> 21 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> <0x8b489f0> , -> <0x8b484b0>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b489f0)26, -> (0x8b484b0)26 ], -> [ -> 21, -> 21 ], -> [ -> 18, -> 18 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ], -> [ -> <0x8b489f0> , -> <0x8b484b0>  ] ] ):-> [ -> 26, -> 26 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:14):false
055|    end # if
058|    if (leftn:3 >= sz:14):false
062|    else
065|     if ((this{'values'}[pos:1][1]:26 < this{'values'}[rightn:2][1]:21):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:21 < this{'values'}[leftn:3][1]:18):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 18, -> 18 ]
079|    this{'values'}[nextn:3]:[ -> 26, -> 26 ] = this{'values'}[pos:1]:[ -> 26, -> 26 ]
080|    this{'values'}[pos:1]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:14):false
055|    end # if
058|    if (leftn:7 >= sz:14):false
062|    else
065|     if ((this{'values'}[pos:3][1]:26 < this{'values'}[rightn:6][1]:20):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:6][1]:20 < this{'values'}[leftn:7][1]:19):false
072|     else
074|      nextn = leftn:7
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:7]:[ -> 19, -> 19 ]
079|    this{'values'}[nextn:7]:[ -> 26, -> 26 ] = this{'values'}[pos:3]:[ -> 26, -> 26 ]
080|    this{'values'}[pos:3]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
082|    pos = nextn:7
083|   end
050|   loop
051|    rightn = (pos:7 * 2):14
052|    leftn = ((pos:7 * 2):14 + 1):15
054|    if (rightn:14 >= sz:14):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 17, -> 17 ]
011|  [ key:-> 17 , val:-> 17]  = h{'pop'}:sub (  ):[ -> 17, -> 17 ]
013|  println( ~msg 'key ' .. key:17 .. ' value ' .. val:17 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 19, -> 19 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 19, -> 19 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ] ] ):13 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 19, -> 19 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 21, -> 21 ], -> [ -> 19, -> 19 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 25, -> 25 ] ] ):13
040|   if (sz:13 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 18, -> 18 ]
045|   this{'values'}[1]:[ -> 25, -> 25 ] = this{'values'}[sz:13]:[ -> 25, -> 25 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b48f18)25, -> (0x8b48a80)25 ], -> [ -> 21, -> 21 ], -> [ -> 19, -> 19 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> <0x8b48f18> , -> <0x8b48a80>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b48f18)25, -> (0x8b48a80)25 ], -> [ -> 21, -> 21 ], -> [ -> 19, -> 19 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 20, -> 20 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> <0x8b48f18> , -> <0x8b48a80>  ] ] ):-> [ -> 25, -> 25 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:13):false
055|    end # if
058|    if (leftn:3 >= sz:13):false
062|    else
065|     if ((this{'values'}[pos:1][1]:25 < this{'values'}[rightn:2][1]:21):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:21 < this{'values'}[leftn:3][1]:19):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 19, -> 19 ]
079|    this{'values'}[nextn:3]:[ -> 25, -> 25 ] = this{'values'}[pos:1]:[ -> 25, -> 25 ]
080|    this{'values'}[pos:1]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:13):false
055|    end # if
058|    if (leftn:7 >= sz:13):false
062|    else
065|     if ((this{'values'}[pos:3][1]:25 < this{'values'}[rightn:6][1]:20):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:6][1]:20 < this{'values'}[leftn:7][1]:26):true
072|      nextn = rightn:6
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:6]:[ -> 20, -> 20 ]
079|    this{'values'}[nextn:6]:[ -> 25, -> 25 ] = this{'values'}[pos:3]:[ -> 25, -> 25 ]
080|    this{'values'}[pos:3]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
082|    pos = nextn:6
083|   end
050|   loop
051|    rightn = (pos:6 * 2):12
052|    leftn = ((pos:6 * 2):12 + 1):13
054|    if (rightn:12 >= sz:13):false
055|    end # if
058|    if (leftn:13 >= sz:13):true
059|     if (this{'values'}[pos:6][1]:25 < this{'values'}[rightn:12][1]:29):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 18, -> 18 ]
011|  [ key:-> 18 , val:-> 18]  = h{'pop'}:sub (  ):[ -> 18, -> 18 ]
013|  println( ~msg 'key ' .. key:18 .. ' value ' .. val:18 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ] ] ):12 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ] ] ):12
040|   if (sz:12 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 19, -> 19 ]
045|   this{'values'}[1]:[ -> 29, -> 29 ] = this{'values'}[sz:12]:[ -> 29, -> 29 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47c58)29, -> (0x8b47ca8)29 ], -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> <0x8b47c58> , -> <0x8b47ca8>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47c58)29, -> (0x8b47ca8)29 ], -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ], -> [ -> <0x8b47c58> , -> <0x8b47ca8>  ] ] ):-> [ -> 29, -> 29 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:12):false
055|    end # if
058|    if (leftn:3 >= sz:12):false
062|    else
065|     if ((this{'values'}[pos:1][1]:29 < this{'values'}[rightn:2][1]:21):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:21 < this{'values'}[leftn:3][1]:20):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 20, -> 20 ]
079|    this{'values'}[nextn:3]:[ -> 29, -> 29 ] = this{'values'}[pos:1]:[ -> 29, -> 29 ]
080|    this{'values'}[pos:1]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:12):false
055|    end # if
058|    if (leftn:7 >= sz:12):false
062|    else
065|     if ((this{'values'}[pos:3][1]:29 < this{'values'}[rightn:6][1]:25):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:6][1]:25 < this{'values'}[leftn:7][1]:26):true
072|      nextn = rightn:6
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:6]:[ -> 25, -> 25 ]
079|    this{'values'}[nextn:6]:[ -> 29, -> 29 ] = this{'values'}[pos:3]:[ -> 29, -> 29 ]
080|    this{'values'}[pos:3]:[ -> 25, -> 25 ] = tmp:[ -> 25, -> 25 ]
082|    pos = nextn:6
083|   end
050|   loop
051|    rightn = (pos:6 * 2):12
052|    leftn = ((pos:6 * 2):12 + 1):13
054|    if (rightn:12 >= sz:12):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 19, -> 19 ]
011|  [ key:-> 19 , val:-> 19]  = h{'pop'}:sub (  ):[ -> 19, -> 19 ]
013|  println( ~msg 'key ' .. key:19 .. ' value ' .. val:19 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ] ] ):11 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 23, -> 23 ] ] ):11
040|   if (sz:11 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 20, -> 20 ]
045|   this{'values'}[1]:[ -> 23, -> 23 ] = this{'values'}[sz:11]:[ -> 23, -> 23 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b49968)23, -> (0x8b494d0)23 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> <0x8b49968> , -> <0x8b494d0>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b49968)23, -> (0x8b494d0)23 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> <0x8b49968> , -> <0x8b494d0>  ] ] ):-> [ -> 23, -> 23 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:11):false
055|    end # if
058|    if (leftn:3 >= sz:11):false
062|    else
065|     if ((this{'values'}[pos:1][1]:23 < this{'values'}[rightn:2][1]:21):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:21 < this{'values'}[leftn:3][1]:25):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 21, -> 21 ]
079|    this{'values'}[nextn:2]:[ -> 23, -> 23 ] = this{'values'}[pos:1]:[ -> 23, -> 23 ]
080|    this{'values'}[pos:1]:[ -> 21, -> 21 ] = tmp:[ -> 21, -> 21 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:11):false
055|    end # if
058|    if (leftn:5 >= sz:11):false
062|    else
065|     if ((this{'values'}[pos:2][1]:23 < this{'values'}[rightn:4][1]:24):true and (this{'values'}[pos:2][1]:23 < this{'values'}[leftn:5][1]:22):false):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:24 < this{'values'}[leftn:5][1]:22):false
072|     else
074|      nextn = leftn:5
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:5]:[ -> 22, -> 22 ]
079|    this{'values'}[nextn:5]:[ -> 23, -> 23 ] = this{'values'}[pos:2]:[ -> 23, -> 23 ]
080|    this{'values'}[pos:2]:[ -> 22, -> 22 ] = tmp:[ -> 22, -> 22 ]
082|    pos = nextn:5
083|   end
050|   loop
051|    rightn = (pos:5 * 2):10
052|    leftn = ((pos:5 * 2):10 + 1):11
054|    if (rightn:10 >= sz:11):false
055|    end # if
058|    if (leftn:11 >= sz:11):true
059|     if (this{'values'}[pos:5][1]:23 < this{'values'}[rightn:10][1]:28):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 20, -> 20 ]
011|  [ key:-> 20 , val:-> 20]  = h{'pop'}:sub (  ):[ -> 20, -> 20 ]
013|  println( ~msg 'key ' .. key:20 .. ' value ' .. val:20 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ] ] ):10 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ] ] ):10
040|   if (sz:10 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 21, -> 21 ]
045|   this{'values'}[1]:[ -> 28, -> 28 ] = this{'values'}[sz:10]:[ -> 28, -> 28 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47d38)28, -> (0x8b48060)28 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> <0x8b47d38> , -> <0x8b48060>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47d38)28, -> (0x8b48060)28 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 23, -> 23 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ], -> [ -> <0x8b47d38> , -> <0x8b48060>  ] ] ):-> [ -> 28, -> 28 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:10):false
055|    end # if
058|    if (leftn:3 >= sz:10):false
062|    else
065|     if ((this{'values'}[pos:1][1]:28 < this{'values'}[rightn:2][1]:22):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:22 < this{'values'}[leftn:3][1]:25):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 22, -> 22 ]
079|    this{'values'}[nextn:2]:[ -> 28, -> 28 ] = this{'values'}[pos:1]:[ -> 28, -> 28 ]
080|    this{'values'}[pos:1]:[ -> 22, -> 22 ] = tmp:[ -> 22, -> 22 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:10):false
055|    end # if
058|    if (leftn:5 >= sz:10):false
062|    else
065|     if ((this{'values'}[pos:2][1]:28 < this{'values'}[rightn:4][1]:24):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:24 < this{'values'}[leftn:5][1]:23):false
072|     else
074|      nextn = leftn:5
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:5]:[ -> 23, -> 23 ]
079|    this{'values'}[nextn:5]:[ -> 28, -> 28 ] = this{'values'}[pos:2]:[ -> 28, -> 28 ]
080|    this{'values'}[pos:2]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
082|    pos = nextn:5
083|   end
050|   loop
051|    rightn = (pos:5 * 2):10
052|    leftn = ((pos:5 * 2):10 + 1):11
054|    if (rightn:10 >= sz:10):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 21, -> 21 ]
011|  [ key:-> 21 , val:-> 21]  = h{'pop'}:sub (  ):[ -> 21, -> 21 ]
013|  println( ~msg 'key ' .. key:21 .. ' value ' .. val:21 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ] ] ):9 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 27, -> 27 ] ] ):9
040|   if (sz:9 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 22, -> 22 ]
045|   this{'values'}[1]:[ -> 27, -> 27 ] = this{'values'}[sz:9]:[ -> 27, -> 27 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b483a0)27, -> (0x8b483f0)27 ], -> [ -> 23, -> 23 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> <0x8b483a0> , -> <0x8b483f0>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b483a0)27, -> (0x8b483f0)27 ], -> [ -> 23, -> 23 ], -> [ -> 25, -> 25 ], -> [ -> 24, -> 24 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> <0x8b483a0> , -> <0x8b483f0>  ] ] ):-> [ -> 27, -> 27 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:9):false
055|    end # if
058|    if (leftn:3 >= sz:9):false
062|    else
065|     if ((this{'values'}[pos:1][1]:27 < this{'values'}[rightn:2][1]:23):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:23 < this{'values'}[leftn:3][1]:25):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 23, -> 23 ]
079|    this{'values'}[nextn:2]:[ -> 27, -> 27 ] = this{'values'}[pos:1]:[ -> 27, -> 27 ]
080|    this{'values'}[pos:1]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:9):false
055|    end # if
058|    if (leftn:5 >= sz:9):false
062|    else
065|     if ((this{'values'}[pos:2][1]:27 < this{'values'}[rightn:4][1]:24):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:24 < this{'values'}[leftn:5][1]:28):true
072|      nextn = rightn:4
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:4]:[ -> 24, -> 24 ]
079|    this{'values'}[nextn:4]:[ -> 27, -> 27 ] = this{'values'}[pos:2]:[ -> 27, -> 27 ]
080|    this{'values'}[pos:2]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
082|    pos = nextn:4
083|   end
050|   loop
051|    rightn = (pos:4 * 2):8
052|    leftn = ((pos:4 * 2):8 + 1):9
054|    if (rightn:8 >= sz:9):false
055|    end # if
058|    if (leftn:9 >= sz:9):true
059|     if (this{'values'}[pos:4][1]:27 < this{'values'}[rightn:8][1]:30):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 22, -> 22 ]
011|  [ key:-> 22 , val:-> 22]  = h{'pop'}:sub (  ):[ -> 22, -> 22 ]
013|  println( ~msg 'key ' .. key:22 .. ' value ' .. val:22 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 24, -> 24 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 24, -> 24 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ] ] ):8 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 24, -> 24 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 24, -> 24 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ] ] ):8
040|   if (sz:8 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 23, -> 23 ]
045|   this{'values'}[1]:[ -> 30, -> 30 ] = this{'values'}[sz:8]:[ -> 30, -> 30 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b44808)30, -> (0x8b47b10)30 ], -> [ -> 24, -> 24 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> <0x8b44808> , -> <0x8b47b10>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b44808)30, -> (0x8b47b10)30 ], -> [ -> 24, -> 24 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ], -> [ -> <0x8b44808> , -> <0x8b47b10>  ] ] ):-> [ -> 30, -> 30 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:8):false
055|    end # if
058|    if (leftn:3 >= sz:8):false
062|    else
065|     if ((this{'values'}[pos:1][1]:30 < this{'values'}[rightn:2][1]:24):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:24 < this{'values'}[leftn:3][1]:25):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 24, -> 24 ]
079|    this{'values'}[nextn:2]:[ -> 30, -> 30 ] = this{'values'}[pos:1]:[ -> 30, -> 30 ]
080|    this{'values'}[pos:1]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:8):false
055|    end # if
058|    if (leftn:5 >= sz:8):false
062|    else
065|     if ((this{'values'}[pos:2][1]:30 < this{'values'}[rightn:4][1]:27):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:4][1]:27 < this{'values'}[leftn:5][1]:28):true
072|      nextn = rightn:4
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:4]:[ -> 27, -> 27 ]
079|    this{'values'}[nextn:4]:[ -> 30, -> 30 ] = this{'values'}[pos:2]:[ -> 30, -> 30 ]
080|    this{'values'}[pos:2]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
082|    pos = nextn:4
083|   end
050|   loop
051|    rightn = (pos:4 * 2):8
052|    leftn = ((pos:4 * 2):8 + 1):9
054|    if (rightn:8 >= sz:8):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 23, -> 23 ]
011|  [ key:-> 23 , val:-> 23]  = h{'pop'}:sub (  ):[ -> 23, -> 23 ]
013|  println( ~msg 'key ' .. key:23 .. ' value ' .. val:23 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 25, -> 25 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 25, -> 25 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ] ] ):7 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 25, -> 25 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 27, -> 27 ], -> [ -> 25, -> 25 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 26, -> 26 ] ] ):7
040|   if (sz:7 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 24, -> 24 ]
045|   this{'values'}[1]:[ -> 26, -> 26 ] = this{'values'}[sz:7]:[ -> 26, -> 26 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b489f0)26, -> (0x8b484b0)26 ], -> [ -> 27, -> 27 ], -> [ -> 25, -> 25 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> <0x8b489f0> , -> <0x8b484b0>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b489f0)26, -> (0x8b484b0)26 ], -> [ -> 27, -> 27 ], -> [ -> 25, -> 25 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> <0x8b489f0> , -> <0x8b484b0>  ] ] ):-> [ -> 26, -> 26 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:7):false
055|    end # if
058|    if (leftn:3 >= sz:7):false
062|    else
065|     if ((this{'values'}[pos:1][1]:26 < this{'values'}[rightn:2][1]:27):true and (this{'values'}[pos:1][1]:26 < this{'values'}[leftn:3][1]:25):false):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:27 < this{'values'}[leftn:3][1]:25):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 25, -> 25 ]
079|    this{'values'}[nextn:3]:[ -> 26, -> 26 ] = this{'values'}[pos:1]:[ -> 26, -> 26 ]
080|    this{'values'}[pos:1]:[ -> 25, -> 25 ] = tmp:[ -> 25, -> 25 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:7):false
055|    end # if
058|    if (leftn:7 >= sz:7):true
059|     if (this{'values'}[pos:3][1]:26 < this{'values'}[rightn:6][1]:29):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 24, -> 24 ]
011|  [ key:-> 24 , val:-> 24]  = h{'pop'}:sub (  ):[ -> 24, -> 24 ]
013|  println( ~msg 'key ' .. key:24 .. ' value ' .. val:24 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ] ] ):6 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ] ] ):6
040|   if (sz:6 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 25, -> 25 ]
045|   this{'values'}[1]:[ -> 29, -> 29 ] = this{'values'}[sz:6]:[ -> 29, -> 29 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47c58)29, -> (0x8b47ca8)29 ], -> [ -> 27, -> 27 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> <0x8b47c58> , -> <0x8b47ca8>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47c58)29, -> (0x8b47ca8)29 ], -> [ -> 27, -> 27 ], -> [ -> 26, -> 26 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ], -> [ -> <0x8b47c58> , -> <0x8b47ca8>  ] ] ):-> [ -> 29, -> 29 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:6):false
055|    end # if
058|    if (leftn:3 >= sz:6):false
062|    else
065|     if ((this{'values'}[pos:1][1]:29 < this{'values'}[rightn:2][1]:27):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:27 < this{'values'}[leftn:3][1]:26):false
072|     else
074|      nextn = leftn:3
074|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:3]:[ -> 26, -> 26 ]
079|    this{'values'}[nextn:3]:[ -> 29, -> 29 ] = this{'values'}[pos:1]:[ -> 29, -> 29 ]
080|    this{'values'}[pos:1]:[ -> 26, -> 26 ] = tmp:[ -> 26, -> 26 ]
082|    pos = nextn:3
083|   end
050|   loop
051|    rightn = (pos:3 * 2):6
052|    leftn = ((pos:3 * 2):6 + 1):7
054|    if (rightn:6 >= sz:6):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 25, -> 25 ]
011|  [ key:-> 25 , val:-> 25]  = h{'pop'}:sub (  ):[ -> 25, -> 25 ]
013|  println( ~msg 'key ' .. key:25 .. ' value ' .. val:25 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ] ] ):5 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> 28, -> 28 ] ] ):5
040|   if (sz:5 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 26, -> 26 ]
045|   this{'values'}[1]:[ -> 28, -> 28 ] = this{'values'}[sz:5]:[ -> 28, -> 28 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47d38)28, -> (0x8b48060)28 ], -> [ -> 27, -> 27 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> <0x8b47d38> , -> <0x8b48060>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47d38)28, -> (0x8b48060)28 ], -> [ -> 27, -> 27 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ], -> [ -> <0x8b47d38> , -> <0x8b48060>  ] ] ):-> [ -> 28, -> 28 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:5):false
055|    end # if
058|    if (leftn:3 >= sz:5):false
062|    else
065|     if ((this{'values'}[pos:1][1]:28 < this{'values'}[rightn:2][1]:27):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:27 < this{'values'}[leftn:3][1]:29):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 27, -> 27 ]
079|    this{'values'}[nextn:2]:[ -> 28, -> 28 ] = this{'values'}[pos:1]:[ -> 28, -> 28 ]
080|    this{'values'}[pos:1]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:5):false
055|    end # if
058|    if (leftn:5 >= sz:5):true
059|     if (this{'values'}[pos:2][1]:28 < this{'values'}[rightn:4][1]:30):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 26, -> 26 ]
011|  [ key:-> 26 , val:-> 26]  = h{'pop'}:sub (  ):[ -> 26, -> 26 ]
013|  println( ~msg 'key ' .. key:26 .. ' value ' .. val:26 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ] ] ):4 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ] ] ):4
040|   if (sz:4 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 27, -> 27 ]
045|   this{'values'}[1]:[ -> 30, -> 30 ] = this{'values'}[sz:4]:[ -> 30, -> 30 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b44808)30, -> (0x8b47b10)30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> <0x8b44808> , -> <0x8b47b10>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b44808)30, -> (0x8b47b10)30 ], -> [ -> 28, -> 28 ], -> [ -> 29, -> 29 ], -> [ -> <0x8b44808> , -> <0x8b47b10>  ] ] ):-> [ -> 30, -> 30 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:4):false
055|    end # if
058|    if (leftn:3 >= sz:4):false
062|    else
065|     if ((this{'values'}[pos:1][1]:30 < this{'values'}[rightn:2][1]:28):false and _ ):):false
067|     end # if
071|     if (this{'values'}[rightn:2][1]:28 < this{'values'}[leftn:3][1]:29):true
072|      nextn = rightn:2
072|     end # if
075|    end # if
078|    tmp = this{'values'}[nextn:2]:[ -> 28, -> 28 ]
079|    this{'values'}[nextn:2]:[ -> 30, -> 30 ] = this{'values'}[pos:1]:[ -> 30, -> 30 ]
080|    this{'values'}[pos:1]:[ -> 28, -> 28 ] = tmp:[ -> 28, -> 28 ]
082|    pos = nextn:2
083|   end
050|   loop
051|    rightn = (pos:2 * 2):4
052|    leftn = ((pos:2 * 2):4 + 1):5
054|    if (rightn:4 >= sz:4):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 27, -> 27 ]
011|  [ key:-> 27 , val:-> 27]  = h{'pop'}:sub (  ):[ -> 27, -> 27 ]
013|  println( ~msg 'key ' .. key:27 .. ' value ' .. val:27 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 30, -> 30 ], -> [ -> 29, -> 29 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 30, -> 30 ], -> [ -> 29, -> 29 ] ] ):3 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 30, -> 30 ], -> [ -> 29, -> 29 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 30, -> 30 ], -> [ -> 29, -> 29 ] ] ):3
040|   if (sz:3 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 28, -> 28 ]
045|   this{'values'}[1]:[ -> 29, -> 29 ] = this{'values'}[sz:3]:[ -> 29, -> 29 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47c58)29, -> (0x8b47ca8)29 ], -> [ -> 30, -> 30 ], -> [ -> <0x8b47c58> , -> <0x8b47ca8>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b47c58)29, -> (0x8b47ca8)29 ], -> [ -> 30, -> 30 ], -> [ -> <0x8b47c58> , -> <0x8b47ca8>  ] ] ):-> [ -> 29, -> 29 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:3):false
055|    end # if
058|    if (leftn:3 >= sz:3):true
059|     if (this{'values'}[pos:1][1]:29 < this{'values'}[rightn:2][1]:30):true
060|      break
060|     end # if
062|    end # if
083|   end # finish loop
085|   return res:[ -> 28, -> 28 ]
011|  [ key:-> 28 , val:-> 28]  = h{'pop'}:sub (  ):[ -> 28, -> 28 ]
013|  println( ~msg 'key ' .. key:28 .. ' value ' .. val:28 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ] ] ):2 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 30, -> 30 ] ] ):2
040|   if (sz:2 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 29, -> 29 ]
045|   this{'values'}[1]:[ -> 30, -> 30 ] = this{'values'}[sz:2]:[ -> 30, -> 30 ]
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b44808)30, -> (0x8b47b10)30 ], -> [ -> <0x8b44808> , -> <0x8b47b10>  ] ] )...
046|   pop( ~array this{'values'}:[ -> [ -> (0x8b44808)30, -> (0x8b47b10)30 ], -> [ -> <0x8b44808> , -> <0x8b47b10>  ] ] ):-> [ -> 30, -> 30 ]
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:2):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 29, -> 29 ]
011|  [ key:-> 29 , val:-> 29]  = h{'pop'}:sub (  ):[ -> 29, -> 29 ]
013|  println( ~msg 'key ' .. key:29 .. ' value ' .. val:29 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ] ] )...
028|  return (size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ] ] ):1 == 0):false
010| while  not h{'empty'}:sub (  ):0
011|  ... = h{'pop'}:sub (  )...
039|   ... = size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ] ] )...
039|   sz = size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ] ] ):1
040|   if (sz:1 == 0):false
041|   end # if
044|   res = this{'values'}[1]:[ -> 30, -> 30 ]
045|   this{'values'}[1]:Null = this{'values'}[sz:1]:[ -> 30, -> 30 ]
046|   pop( ~array this{'values'}:[ -> Null ] )...
046|   pop( ~array this{'values'}:[ -> Null ] ):-> Null
049|   pos = 1
050|   loop
051|    rightn = (pos:1 * 2):2
052|    leftn = ((pos:1 * 2):2 + 1):3
054|    if (rightn:2 >= sz:1):true
055|     break
055|    end # if
083|   end # finish loop
085|   return res:[ -> 30, -> 30 ]
011|  [ key:-> 30 , val:-> 30]  = h{'pop'}:sub (  ):[ -> 30, -> 30 ]
013|  println( ~msg 'key ' .. key:30 .. ' value ' .. val:30 .. '' )...
014| end
010| while  not h{'empty'}:sub (  )...
028|  return (size( ~arg this{'values'}:[  ] )...
028|  return (size( ~arg this{'values'}:[  ] ):0 == 0):true
010| while  not h{'empty'}:sub (  ):1
014| end # finish loop
016| println( ~msg '*** test max heap ***' )...
017| ... = make_max_heap(  )...
095|  return { 'values' : [ ]  , 'push' : sub (~key , ~data) , 'empty' : sub () , 'top' : sub () , 'pop' : sub () }
017| h = make_max_heap(  ):{ 'pop' : sub , 'values' : -> [  ], 'empty' : sub , 'push' : sub , 'top' : sub  }
019| for ... range( ~from 1 ~to 30 )...
019|  for i = 1
020|   h{'push'}:sub ( ~key i:1 ~data i:1 )...
100|    push( ~array this{'values'}:[  ] ~top [ key:1 , data:1]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ] ] ):1
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 2
020|   h{'push'}:sub ( ~key i:2 ~data i:2 )...
100|    push( ~array this{'values'}:[ -> [ -> 1, -> 1 ] ] ~top [ key:2 , data:2]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ], -> [ -> 2, -> 2 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ], -> [ -> 2, -> 2 ] ] ):2
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:1 < this{'values'}[n:2][1]:2):true
106|      tmp = this{'values'}[parent:1]:[ -> 1, -> 1 ]
107|      this{'values'}[parent:1]:[ -> 2, -> 2 ] = this{'values'}[n:2]:[ -> 2, -> 2 ]
108|      this{'values'}[n:2]:[ -> 1, -> 1 ] = tmp:[ -> 1, -> 1 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 3
020|   h{'push'}:sub ( ~key i:3 ~data i:3 )...
100|    push( ~array this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ] ] ~top [ key:3 , data:3]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ] ] ):3
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:2 < this{'values'}[n:3][1]:3):true
106|      tmp = this{'values'}[parent:1]:[ -> 2, -> 2 ]
107|      this{'values'}[parent:1]:[ -> 3, -> 3 ] = this{'values'}[n:3]:[ -> 3, -> 3 ]
108|      this{'values'}[n:3]:[ -> 2, -> 2 ] = tmp:[ -> 2, -> 2 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 4
020|   h{'push'}:sub ( ~key i:4 ~data i:4 )...
100|    push( ~array this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 1, -> 1 ], -> [ -> 2, -> 2 ] ] ~top [ key:4 , data:4]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 1, -> 1 ], -> [ -> 2, -> 2 ], -> [ -> 4, -> 4 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 1, -> 1 ], -> [ -> 2, -> 2 ], -> [ -> 4, -> 4 ] ] ):4
103|    while (n:4 > 1):true
104|     parent = (n:4 / 2):2
105|     if (this{'values'}[parent:2][1]:1 < this{'values'}[n:4][1]:4):true
106|      tmp = this{'values'}[parent:2]:[ -> 1, -> 1 ]
107|      this{'values'}[parent:2]:[ -> 4, -> 4 ] = this{'values'}[n:4]:[ -> 4, -> 4 ]
108|      this{'values'}[n:4]:[ -> 1, -> 1 ] = tmp:[ -> 1, -> 1 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:3 < this{'values'}[n:2][1]:4):true
106|      tmp = this{'values'}[parent:1]:[ -> 3, -> 3 ]
107|      this{'values'}[parent:1]:[ -> 4, -> 4 ] = this{'values'}[n:2]:[ -> 4, -> 4 ]
108|      this{'values'}[n:2]:[ -> 3, -> 3 ] = tmp:[ -> 3, -> 3 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 5
020|   h{'push'}:sub ( ~key i:5 ~data i:5 )...
100|    push( ~array this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ] ] ~top [ key:5 , data:5]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> 5, -> 5 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> 5, -> 5 ] ] ):5
103|    while (n:5 > 1):true
104|     parent = (n:5 / 2):2
105|     if (this{'values'}[parent:2][1]:3 < this{'values'}[n:5][1]:5):true
106|      tmp = this{'values'}[parent:2]:[ -> 3, -> 3 ]
107|      this{'values'}[parent:2]:[ -> 5, -> 5 ] = this{'values'}[n:5]:[ -> 5, -> 5 ]
108|      this{'values'}[n:5]:[ -> 3, -> 3 ] = tmp:[ -> 3, -> 3 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:4 < this{'values'}[n:2][1]:5):true
106|      tmp = this{'values'}[parent:1]:[ -> 4, -> 4 ]
107|      this{'values'}[parent:1]:[ -> 5, -> 5 ] = this{'values'}[n:2]:[ -> 5, -> 5 ]
108|      this{'values'}[n:2]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 6
020|   h{'push'}:sub ( ~key i:6 ~data i:6 )...
100|    push( ~array this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ] ] ~top [ key:6 , data:6]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 6, -> 6 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 6, -> 6 ] ] ):6
103|    while (n:6 > 1):true
104|     parent = (n:6 / 2):3
105|     if (this{'values'}[parent:3][1]:2 < this{'values'}[n:6][1]:6):true
106|      tmp = this{'values'}[parent:3]:[ -> 2, -> 2 ]
107|      this{'values'}[parent:3]:[ -> 6, -> 6 ] = this{'values'}[n:6]:[ -> 6, -> 6 ]
108|      this{'values'}[n:6]:[ -> 2, -> 2 ] = tmp:[ -> 2, -> 2 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:5 < this{'values'}[n:3][1]:6):true
106|      tmp = this{'values'}[parent:1]:[ -> 5, -> 5 ]
107|      this{'values'}[parent:1]:[ -> 6, -> 6 ] = this{'values'}[n:3]:[ -> 6, -> 6 ]
108|      this{'values'}[n:3]:[ -> 5, -> 5 ] = tmp:[ -> 5, -> 5 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 7
020|   h{'push'}:sub ( ~key i:7 ~data i:7 )...
100|    push( ~array this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ] ] ~top [ key:7 , data:7]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 7, -> 7 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 7, -> 7 ] ] ):7
103|    while (n:7 > 1):true
104|     parent = (n:7 / 2):3
105|     if (this{'values'}[parent:3][1]:5 < this{'values'}[n:7][1]:7):true
106|      tmp = this{'values'}[parent:3]:[ -> 5, -> 5 ]
107|      this{'values'}[parent:3]:[ -> 7, -> 7 ] = this{'values'}[n:7]:[ -> 7, -> 7 ]
108|      this{'values'}[n:7]:[ -> 5, -> 5 ] = tmp:[ -> 5, -> 5 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:6 < this{'values'}[n:3][1]:7):true
106|      tmp = this{'values'}[parent:1]:[ -> 6, -> 6 ]
107|      this{'values'}[parent:1]:[ -> 7, -> 7 ] = this{'values'}[n:3]:[ -> 7, -> 7 ]
108|      this{'values'}[n:3]:[ -> 6, -> 6 ] = tmp:[ -> 6, -> 6 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 8
020|   h{'push'}:sub ( ~key i:8 ~data i:8 )...
100|    push( ~array this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 6, -> 6 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ] ] ~top [ key:8 , data:8]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 6, -> 6 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 8, -> 8 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 6, -> 6 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 8, -> 8 ] ] ):8
103|    while (n:8 > 1):true
104|     parent = (n:8 / 2):4
105|     if (this{'values'}[parent:4][1]:1 < this{'values'}[n:8][1]:8):true
106|      tmp = this{'values'}[parent:4]:[ -> 1, -> 1 ]
107|      this{'values'}[parent:4]:[ -> 8, -> 8 ] = this{'values'}[n:8]:[ -> 8, -> 8 ]
108|      this{'values'}[n:8]:[ -> 1, -> 1 ] = tmp:[ -> 1, -> 1 ]
108|     end # if
112|     n = parent:4
113|    end
103|    while (n:4 > 1):true
104|     parent = (n:4 / 2):2
105|     if (this{'values'}[parent:2][1]:4 < this{'values'}[n:4][1]:8):true
106|      tmp = this{'values'}[parent:2]:[ -> 4, -> 4 ]
107|      this{'values'}[parent:2]:[ -> 8, -> 8 ] = this{'values'}[n:4]:[ -> 8, -> 8 ]
108|      this{'values'}[n:4]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:7 < this{'values'}[n:2][1]:8):true
106|      tmp = this{'values'}[parent:1]:[ -> 7, -> 7 ]
107|      this{'values'}[parent:1]:[ -> 8, -> 8 ] = this{'values'}[n:2]:[ -> 8, -> 8 ]
108|      this{'values'}[n:2]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 9
020|   h{'push'}:sub ( ~key i:9 ~data i:9 )...
100|    push( ~array this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 7, -> 7 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ] ] ~top [ key:9 , data:9]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 7, -> 7 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 9, -> 9 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 7, -> 7 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 9, -> 9 ] ] ):9
103|    while (n:9 > 1):true
104|     parent = (n:9 / 2):4
105|     if (this{'values'}[parent:4][1]:4 < this{'values'}[n:9][1]:9):true
106|      tmp = this{'values'}[parent:4]:[ -> 4, -> 4 ]
107|      this{'values'}[parent:4]:[ -> 9, -> 9 ] = this{'values'}[n:9]:[ -> 9, -> 9 ]
108|      this{'values'}[n:9]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
108|     end # if
112|     n = parent:4
113|    end
103|    while (n:4 > 1):true
104|     parent = (n:4 / 2):2
105|     if (this{'values'}[parent:2][1]:7 < this{'values'}[n:4][1]:9):true
106|      tmp = this{'values'}[parent:2]:[ -> 7, -> 7 ]
107|      this{'values'}[parent:2]:[ -> 9, -> 9 ] = this{'values'}[n:4]:[ -> 9, -> 9 ]
108|      this{'values'}[n:4]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:8 < this{'values'}[n:2][1]:9):true
106|      tmp = this{'values'}[parent:1]:[ -> 8, -> 8 ]
107|      this{'values'}[parent:1]:[ -> 9, -> 9 ] = this{'values'}[n:2]:[ -> 9, -> 9 ]
108|      this{'values'}[n:2]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 10
020|   h{'push'}:sub ( ~key i:10 ~data i:10 )...
100|    push( ~array this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ] ] ~top [ key:10 , data:10]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 10, -> 10 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 10, -> 10 ] ] ):10
103|    while (n:10 > 1):true
104|     parent = (n:10 / 2):5
105|     if (this{'values'}[parent:5][1]:3 < this{'values'}[n:10][1]:10):true
106|      tmp = this{'values'}[parent:5]:[ -> 3, -> 3 ]
107|      this{'values'}[parent:5]:[ -> 10, -> 10 ] = this{'values'}[n:10]:[ -> 10, -> 10 ]
108|      this{'values'}[n:10]:[ -> 3, -> 3 ] = tmp:[ -> 3, -> 3 ]
108|     end # if
112|     n = parent:5
113|    end
103|    while (n:5 > 1):true
104|     parent = (n:5 / 2):2
105|     if (this{'values'}[parent:2][1]:8 < this{'values'}[n:5][1]:10):true
106|      tmp = this{'values'}[parent:2]:[ -> 8, -> 8 ]
107|      this{'values'}[parent:2]:[ -> 10, -> 10 ] = this{'values'}[n:5]:[ -> 10, -> 10 ]
108|      this{'values'}[n:5]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:9 < this{'values'}[n:2][1]:10):true
106|      tmp = this{'values'}[parent:1]:[ -> 9, -> 9 ]
107|      this{'values'}[parent:1]:[ -> 10, -> 10 ] = this{'values'}[n:2]:[ -> 10, -> 10 ]
108|      this{'values'}[n:2]:[ -> 9, -> 9 ] = tmp:[ -> 9, -> 9 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 11
020|   h{'push'}:sub ( ~key i:11 ~data i:11 )...
100|    push( ~array this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ] ] ~top [ key:11 , data:11]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 11, -> 11 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 11, -> 11 ] ] ):11
103|    while (n:11 > 1):true
104|     parent = (n:11 / 2):5
105|     if (this{'values'}[parent:5][1]:8 < this{'values'}[n:11][1]:11):true
106|      tmp = this{'values'}[parent:5]:[ -> 8, -> 8 ]
107|      this{'values'}[parent:5]:[ -> 11, -> 11 ] = this{'values'}[n:11]:[ -> 11, -> 11 ]
108|      this{'values'}[n:11]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
108|     end # if
112|     n = parent:5
113|    end
103|    while (n:5 > 1):true
104|     parent = (n:5 / 2):2
105|     if (this{'values'}[parent:2][1]:9 < this{'values'}[n:5][1]:11):true
106|      tmp = this{'values'}[parent:2]:[ -> 9, -> 9 ]
107|      this{'values'}[parent:2]:[ -> 11, -> 11 ] = this{'values'}[n:5]:[ -> 11, -> 11 ]
108|      this{'values'}[n:5]:[ -> 9, -> 9 ] = tmp:[ -> 9, -> 9 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:10 < this{'values'}[n:2][1]:11):true
106|      tmp = this{'values'}[parent:1]:[ -> 10, -> 10 ]
107|      this{'values'}[parent:1]:[ -> 11, -> 11 ] = this{'values'}[n:2]:[ -> 11, -> 11 ]
108|      this{'values'}[n:2]:[ -> 10, -> 10 ] = tmp:[ -> 10, -> 10 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 12
020|   h{'push'}:sub ( ~key i:12 ~data i:12 )...
100|    push( ~array this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ] ] ~top [ key:12 , data:12]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 12, -> 12 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 12, -> 12 ] ] ):12
103|    while (n:12 > 1):true
104|     parent = (n:12 / 2):6
105|     if (this{'values'}[parent:6][1]:2 < this{'values'}[n:12][1]:12):true
106|      tmp = this{'values'}[parent:6]:[ -> 2, -> 2 ]
107|      this{'values'}[parent:6]:[ -> 12, -> 12 ] = this{'values'}[n:12]:[ -> 12, -> 12 ]
108|      this{'values'}[n:12]:[ -> 2, -> 2 ] = tmp:[ -> 2, -> 2 ]
108|     end # if
112|     n = parent:6
113|    end
103|    while (n:6 > 1):true
104|     parent = (n:6 / 2):3
105|     if (this{'values'}[parent:3][1]:6 < this{'values'}[n:6][1]:12):true
106|      tmp = this{'values'}[parent:3]:[ -> 6, -> 6 ]
107|      this{'values'}[parent:3]:[ -> 12, -> 12 ] = this{'values'}[n:6]:[ -> 12, -> 12 ]
108|      this{'values'}[n:6]:[ -> 6, -> 6 ] = tmp:[ -> 6, -> 6 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:11 < this{'values'}[n:3][1]:12):true
106|      tmp = this{'values'}[parent:1]:[ -> 11, -> 11 ]
107|      this{'values'}[parent:1]:[ -> 12, -> 12 ] = this{'values'}[n:3]:[ -> 12, -> 12 ]
108|      this{'values'}[n:3]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 13
020|   h{'push'}:sub ( ~key i:13 ~data i:13 )...
100|    push( ~array this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ] ] ~top [ key:13 , data:13]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 13, -> 13 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 13, -> 13 ] ] ):13
103|    while (n:13 > 1):true
104|     parent = (n:13 / 2):6
105|     if (this{'values'}[parent:6][1]:6 < this{'values'}[n:13][1]:13):true
106|      tmp = this{'values'}[parent:6]:[ -> 6, -> 6 ]
107|      this{'values'}[parent:6]:[ -> 13, -> 13 ] = this{'values'}[n:13]:[ -> 13, -> 13 ]
108|      this{'values'}[n:13]:[ -> 6, -> 6 ] = tmp:[ -> 6, -> 6 ]
108|     end # if
112|     n = parent:6
113|    end
103|    while (n:6 > 1):true
104|     parent = (n:6 / 2):3
105|     if (this{'values'}[parent:3][1]:11 < this{'values'}[n:6][1]:13):true
106|      tmp = this{'values'}[parent:3]:[ -> 11, -> 11 ]
107|      this{'values'}[parent:3]:[ -> 13, -> 13 ] = this{'values'}[n:6]:[ -> 13, -> 13 ]
108|      this{'values'}[n:6]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:12 < this{'values'}[n:3][1]:13):true
106|      tmp = this{'values'}[parent:1]:[ -> 12, -> 12 ]
107|      this{'values'}[parent:1]:[ -> 13, -> 13 ] = this{'values'}[n:3]:[ -> 13, -> 13 ]
108|      this{'values'}[n:3]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 14
020|   h{'push'}:sub ( ~key i:14 ~data i:14 )...
100|    push( ~array this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 12, -> 12 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ] ] ~top [ key:14 , data:14]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 12, -> 12 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 14, -> 14 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 12, -> 12 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 14, -> 14 ] ] ):14
103|    while (n:14 > 1):true
104|     parent = (n:14 / 2):7
105|     if (this{'values'}[parent:7][1]:5 < this{'values'}[n:14][1]:14):true
106|      tmp = this{'values'}[parent:7]:[ -> 5, -> 5 ]
107|      this{'values'}[parent:7]:[ -> 14, -> 14 ] = this{'values'}[n:14]:[ -> 14, -> 14 ]
108|      this{'values'}[n:14]:[ -> 5, -> 5 ] = tmp:[ -> 5, -> 5 ]
108|     end # if
112|     n = parent:7
113|    end
103|    while (n:7 > 1):true
104|     parent = (n:7 / 2):3
105|     if (this{'values'}[parent:3][1]:12 < this{'values'}[n:7][1]:14):true
106|      tmp = this{'values'}[parent:3]:[ -> 12, -> 12 ]
107|      this{'values'}[parent:3]:[ -> 14, -> 14 ] = this{'values'}[n:7]:[ -> 14, -> 14 ]
108|      this{'values'}[n:7]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:13 < this{'values'}[n:3][1]:14):true
106|      tmp = this{'values'}[parent:1]:[ -> 13, -> 13 ]
107|      this{'values'}[parent:1]:[ -> 14, -> 14 ] = this{'values'}[n:3]:[ -> 14, -> 14 ]
108|      this{'values'}[n:3]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 15
020|   h{'push'}:sub ( ~key i:15 ~data i:15 )...
100|    push( ~array this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ] ] ~top [ key:15 , data:15]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 15, -> 15 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 15, -> 15 ] ] ):15
103|    while (n:15 > 1):true
104|     parent = (n:15 / 2):7
105|     if (this{'values'}[parent:7][1]:12 < this{'values'}[n:15][1]:15):true
106|      tmp = this{'values'}[parent:7]:[ -> 12, -> 12 ]
107|      this{'values'}[parent:7]:[ -> 15, -> 15 ] = this{'values'}[n:15]:[ -> 15, -> 15 ]
108|      this{'values'}[n:15]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
108|     end # if
112|     n = parent:7
113|    end
103|    while (n:7 > 1):true
104|     parent = (n:7 / 2):3
105|     if (this{'values'}[parent:3][1]:13 < this{'values'}[n:7][1]:15):true
106|      tmp = this{'values'}[parent:3]:[ -> 13, -> 13 ]
107|      this{'values'}[parent:3]:[ -> 15, -> 15 ] = this{'values'}[n:7]:[ -> 15, -> 15 ]
108|      this{'values'}[n:7]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:14 < this{'values'}[n:3][1]:15):true
106|      tmp = this{'values'}[parent:1]:[ -> 14, -> 14 ]
107|      this{'values'}[parent:1]:[ -> 15, -> 15 ] = this{'values'}[n:3]:[ -> 15, -> 15 ]
108|      this{'values'}[n:3]:[ -> 14, -> 14 ] = tmp:[ -> 14, -> 14 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 16
020|   h{'push'}:sub ( ~key i:16 ~data i:16 )...
100|    push( ~array this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 10, -> 10 ], -> [ -> 14, -> 14 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ] ] ~top [ key:16 , data:16]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 10, -> 10 ], -> [ -> 14, -> 14 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 16, -> 16 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 10, -> 10 ], -> [ -> 14, -> 14 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 16, -> 16 ] ] ):16
103|    while (n:16 > 1):true
104|     parent = (n:16 / 2):8
105|     if (this{'values'}[parent:8][1]:1 < this{'values'}[n:16][1]:16):true
106|      tmp = this{'values'}[parent:8]:[ -> 1, -> 1 ]
107|      this{'values'}[parent:8]:[ -> 16, -> 16 ] = this{'values'}[n:16]:[ -> 16, -> 16 ]
108|      this{'values'}[n:16]:[ -> 1, -> 1 ] = tmp:[ -> 1, -> 1 ]
108|     end # if
112|     n = parent:8
113|    end
103|    while (n:8 > 1):true
104|     parent = (n:8 / 2):4
105|     if (this{'values'}[parent:4][1]:7 < this{'values'}[n:8][1]:16):true
106|      tmp = this{'values'}[parent:4]:[ -> 7, -> 7 ]
107|      this{'values'}[parent:4]:[ -> 16, -> 16 ] = this{'values'}[n:8]:[ -> 16, -> 16 ]
108|      this{'values'}[n:8]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
108|     end # if
112|     n = parent:4
113|    end
103|    while (n:4 > 1):true
104|     parent = (n:4 / 2):2
105|     if (this{'values'}[parent:2][1]:10 < this{'values'}[n:4][1]:16):true
106|      tmp = this{'values'}[parent:2]:[ -> 10, -> 10 ]
107|      this{'values'}[parent:2]:[ -> 16, -> 16 ] = this{'values'}[n:4]:[ -> 16, -> 16 ]
108|      this{'values'}[n:4]:[ -> 10, -> 10 ] = tmp:[ -> 10, -> 10 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:15 < this{'values'}[n:2][1]:16):true
106|      tmp = this{'values'}[parent:1]:[ -> 15, -> 15 ]
107|      this{'values'}[parent:1]:[ -> 16, -> 16 ] = this{'values'}[n:2]:[ -> 16, -> 16 ]
108|      this{'values'}[n:2]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 17
020|   h{'push'}:sub ( ~key i:17 ~data i:17 )...
100|    push( ~array this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 15, -> 15 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ] ] ~top [ key:17 , data:17]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 15, -> 15 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 17, -> 17 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 15, -> 15 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 17, -> 17 ] ] ):17
103|    while (n:17 > 1):true
104|     parent = (n:17 / 2):8
105|     if (this{'values'}[parent:8][1]:7 < this{'values'}[n:17][1]:17):true
106|      tmp = this{'values'}[parent:8]:[ -> 7, -> 7 ]
107|      this{'values'}[parent:8]:[ -> 17, -> 17 ] = this{'values'}[n:17]:[ -> 17, -> 17 ]
108|      this{'values'}[n:17]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
108|     end # if
112|     n = parent:8
113|    end
103|    while (n:8 > 1):true
104|     parent = (n:8 / 2):4
105|     if (this{'values'}[parent:4][1]:10 < this{'values'}[n:8][1]:17):true
106|      tmp = this{'values'}[parent:4]:[ -> 10, -> 10 ]
107|      this{'values'}[parent:4]:[ -> 17, -> 17 ] = this{'values'}[n:8]:[ -> 17, -> 17 ]
108|      this{'values'}[n:8]:[ -> 10, -> 10 ] = tmp:[ -> 10, -> 10 ]
108|     end # if
112|     n = parent:4
113|    end
103|    while (n:4 > 1):true
104|     parent = (n:4 / 2):2
105|     if (this{'values'}[parent:2][1]:15 < this{'values'}[n:4][1]:17):true
106|      tmp = this{'values'}[parent:2]:[ -> 15, -> 15 ]
107|      this{'values'}[parent:2]:[ -> 17, -> 17 ] = this{'values'}[n:4]:[ -> 17, -> 17 ]
108|      this{'values'}[n:4]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:16 < this{'values'}[n:2][1]:17):true
106|      tmp = this{'values'}[parent:1]:[ -> 16, -> 16 ]
107|      this{'values'}[parent:1]:[ -> 17, -> 17 ] = this{'values'}[n:2]:[ -> 17, -> 17 ]
108|      this{'values'}[n:2]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 18
020|   h{'push'}:sub ( ~key i:18 ~data i:18 )...
100|    push( ~array this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ] ] ~top [ key:18 , data:18]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 18, -> 18 ] ] ):18
103|    while (n:18 > 1):true
104|     parent = (n:18 / 2):9
105|     if (this{'values'}[parent:9][1]:4 < this{'values'}[n:18][1]:18):true
106|      tmp = this{'values'}[parent:9]:[ -> 4, -> 4 ]
107|      this{'values'}[parent:9]:[ -> 18, -> 18 ] = this{'values'}[n:18]:[ -> 18, -> 18 ]
108|      this{'values'}[n:18]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
108|     end # if
112|     n = parent:9
113|    end
103|    while (n:9 > 1):true
104|     parent = (n:9 / 2):4
105|     if (this{'values'}[parent:4][1]:15 < this{'values'}[n:9][1]:18):true
106|      tmp = this{'values'}[parent:4]:[ -> 15, -> 15 ]
107|      this{'values'}[parent:4]:[ -> 18, -> 18 ] = this{'values'}[n:9]:[ -> 18, -> 18 ]
108|      this{'values'}[n:9]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
108|     end # if
112|     n = parent:4
113|    end
103|    while (n:4 > 1):true
104|     parent = (n:4 / 2):2
105|     if (this{'values'}[parent:2][1]:16 < this{'values'}[n:4][1]:18):true
106|      tmp = this{'values'}[parent:2]:[ -> 16, -> 16 ]
107|      this{'values'}[parent:2]:[ -> 18, -> 18 ] = this{'values'}[n:4]:[ -> 18, -> 18 ]
108|      this{'values'}[n:4]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:17 < this{'values'}[n:2][1]:18):true
106|      tmp = this{'values'}[parent:1]:[ -> 17, -> 17 ]
107|      this{'values'}[parent:1]:[ -> 18, -> 18 ] = this{'values'}[n:2]:[ -> 18, -> 18 ]
108|      this{'values'}[n:2]:[ -> 17, -> 17 ] = tmp:[ -> 17, -> 17 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 19
020|   h{'push'}:sub ( ~key i:19 ~data i:19 )...
100|    push( ~array this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ] ] ~top [ key:19 , data:19]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 19, -> 19 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 19, -> 19 ] ] ):19
103|    while (n:19 > 1):true
104|     parent = (n:19 / 2):9
105|     if (this{'values'}[parent:9][1]:15 < this{'values'}[n:19][1]:19):true
106|      tmp = this{'values'}[parent:9]:[ -> 15, -> 15 ]
107|      this{'values'}[parent:9]:[ -> 19, -> 19 ] = this{'values'}[n:19]:[ -> 19, -> 19 ]
108|      this{'values'}[n:19]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
108|     end # if
112|     n = parent:9
113|    end
103|    while (n:9 > 1):true
104|     parent = (n:9 / 2):4
105|     if (this{'values'}[parent:4][1]:16 < this{'values'}[n:9][1]:19):true
106|      tmp = this{'values'}[parent:4]:[ -> 16, -> 16 ]
107|      this{'values'}[parent:4]:[ -> 19, -> 19 ] = this{'values'}[n:9]:[ -> 19, -> 19 ]
108|      this{'values'}[n:9]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
108|     end # if
112|     n = parent:4
113|    end
103|    while (n:4 > 1):true
104|     parent = (n:4 / 2):2
105|     if (this{'values'}[parent:2][1]:17 < this{'values'}[n:4][1]:19):true
106|      tmp = this{'values'}[parent:2]:[ -> 17, -> 17 ]
107|      this{'values'}[parent:2]:[ -> 19, -> 19 ] = this{'values'}[n:4]:[ -> 19, -> 19 ]
108|      this{'values'}[n:4]:[ -> 17, -> 17 ] = tmp:[ -> 17, -> 17 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:18 < this{'values'}[n:2][1]:19):true
106|      tmp = this{'values'}[parent:1]:[ -> 18, -> 18 ]
107|      this{'values'}[parent:1]:[ -> 19, -> 19 ] = this{'values'}[n:2]:[ -> 19, -> 19 ]
108|      this{'values'}[n:2]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 20
020|   h{'push'}:sub ( ~key i:20 ~data i:20 )...
100|    push( ~array this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 18, -> 18 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ] ] ~top [ key:20 , data:20]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 18, -> 18 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 20, -> 20 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 18, -> 18 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 20, -> 20 ] ] ):20
103|    while (n:20 > 1):true
104|     parent = (n:20 / 2):10
105|     if (this{'values'}[parent:10][1]:3 < this{'values'}[n:20][1]:20):true
106|      tmp = this{'values'}[parent:10]:[ -> 3, -> 3 ]
107|      this{'values'}[parent:10]:[ -> 20, -> 20 ] = this{'values'}[n:20]:[ -> 20, -> 20 ]
108|      this{'values'}[n:20]:[ -> 3, -> 3 ] = tmp:[ -> 3, -> 3 ]
108|     end # if
112|     n = parent:10
113|    end
103|    while (n:10 > 1):true
104|     parent = (n:10 / 2):5
105|     if (this{'values'}[parent:5][1]:9 < this{'values'}[n:10][1]:20):true
106|      tmp = this{'values'}[parent:5]:[ -> 9, -> 9 ]
107|      this{'values'}[parent:5]:[ -> 20, -> 20 ] = this{'values'}[n:10]:[ -> 20, -> 20 ]
108|      this{'values'}[n:10]:[ -> 9, -> 9 ] = tmp:[ -> 9, -> 9 ]
108|     end # if
112|     n = parent:5
113|    end
103|    while (n:5 > 1):true
104|     parent = (n:5 / 2):2
105|     if (this{'values'}[parent:2][1]:18 < this{'values'}[n:5][1]:20):true
106|      tmp = this{'values'}[parent:2]:[ -> 18, -> 18 ]
107|      this{'values'}[parent:2]:[ -> 20, -> 20 ] = this{'values'}[n:5]:[ -> 20, -> 20 ]
108|      this{'values'}[n:5]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:19 < this{'values'}[n:2][1]:20):true
106|      tmp = this{'values'}[parent:1]:[ -> 19, -> 19 ]
107|      this{'values'}[parent:1]:[ -> 20, -> 20 ] = this{'values'}[n:2]:[ -> 20, -> 20 ]
108|      this{'values'}[n:2]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 21
020|   h{'push'}:sub ( ~key i:21 ~data i:21 )...
100|    push( ~array this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ] ] ~top [ key:21 , data:21]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 21, -> 21 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 21, -> 21 ] ] ):21
103|    while (n:21 > 1):true
104|     parent = (n:21 / 2):10
105|     if (this{'values'}[parent:10][1]:9 < this{'values'}[n:21][1]:21):true
106|      tmp = this{'values'}[parent:10]:[ -> 9, -> 9 ]
107|      this{'values'}[parent:10]:[ -> 21, -> 21 ] = this{'values'}[n:21]:[ -> 21, -> 21 ]
108|      this{'values'}[n:21]:[ -> 9, -> 9 ] = tmp:[ -> 9, -> 9 ]
108|     end # if
112|     n = parent:10
113|    end
103|    while (n:10 > 1):true
104|     parent = (n:10 / 2):5
105|     if (this{'values'}[parent:5][1]:18 < this{'values'}[n:10][1]:21):true
106|      tmp = this{'values'}[parent:5]:[ -> 18, -> 18 ]
107|      this{'values'}[parent:5]:[ -> 21, -> 21 ] = this{'values'}[n:10]:[ -> 21, -> 21 ]
108|      this{'values'}[n:10]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
108|     end # if
112|     n = parent:5
113|    end
103|    while (n:5 > 1):true
104|     parent = (n:5 / 2):2
105|     if (this{'values'}[parent:2][1]:19 < this{'values'}[n:5][1]:21):true
106|      tmp = this{'values'}[parent:2]:[ -> 19, -> 19 ]
107|      this{'values'}[parent:2]:[ -> 21, -> 21 ] = this{'values'}[n:5]:[ -> 21, -> 21 ]
108|      this{'values'}[n:5]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:20 < this{'values'}[n:2][1]:21):true
106|      tmp = this{'values'}[parent:1]:[ -> 20, -> 20 ]
107|      this{'values'}[parent:1]:[ -> 21, -> 21 ] = this{'values'}[n:2]:[ -> 21, -> 21 ]
108|      this{'values'}[n:2]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 22
020|   h{'push'}:sub ( ~key i:22 ~data i:22 )...
100|    push( ~array this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 19, -> 19 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ] ] ~top [ key:22 , data:22]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 19, -> 19 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 22, -> 22 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 19, -> 19 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 22, -> 22 ] ] ):22
103|    while (n:22 > 1):true
104|     parent = (n:22 / 2):11
105|     if (this{'values'}[parent:11][1]:8 < this{'values'}[n:22][1]:22):true
106|      tmp = this{'values'}[parent:11]:[ -> 8, -> 8 ]
107|      this{'values'}[parent:11]:[ -> 22, -> 22 ] = this{'values'}[n:22]:[ -> 22, -> 22 ]
108|      this{'values'}[n:22]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
108|     end # if
112|     n = parent:11
113|    end
103|    while (n:11 > 1):true
104|     parent = (n:11 / 2):5
105|     if (this{'values'}[parent:5][1]:19 < this{'values'}[n:11][1]:22):true
106|      tmp = this{'values'}[parent:5]:[ -> 19, -> 19 ]
107|      this{'values'}[parent:5]:[ -> 22, -> 22 ] = this{'values'}[n:11]:[ -> 22, -> 22 ]
108|      this{'values'}[n:11]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
108|     end # if
112|     n = parent:5
113|    end
103|    while (n:5 > 1):true
104|     parent = (n:5 / 2):2
105|     if (this{'values'}[parent:2][1]:20 < this{'values'}[n:5][1]:22):true
106|      tmp = this{'values'}[parent:2]:[ -> 20, -> 20 ]
107|      this{'values'}[parent:2]:[ -> 22, -> 22 ] = this{'values'}[n:5]:[ -> 22, -> 22 ]
108|      this{'values'}[n:5]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:21 < this{'values'}[n:2][1]:22):true
106|      tmp = this{'values'}[parent:1]:[ -> 21, -> 21 ]
107|      this{'values'}[parent:1]:[ -> 22, -> 22 ] = this{'values'}[n:2]:[ -> 22, -> 22 ]
108|      this{'values'}[n:2]:[ -> 21, -> 21 ] = tmp:[ -> 21, -> 21 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 23
020|   h{'push'}:sub ( ~key i:23 ~data i:23 )...
100|    push( ~array this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ] ] ~top [ key:23 , data:23]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 23, -> 23 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 23, -> 23 ] ] ):23
103|    while (n:23 > 1):true
104|     parent = (n:23 / 2):11
105|     if (this{'values'}[parent:11][1]:19 < this{'values'}[n:23][1]:23):true
106|      tmp = this{'values'}[parent:11]:[ -> 19, -> 19 ]
107|      this{'values'}[parent:11]:[ -> 23, -> 23 ] = this{'values'}[n:23]:[ -> 23, -> 23 ]
108|      this{'values'}[n:23]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
108|     end # if
112|     n = parent:11
113|    end
103|    while (n:11 > 1):true
104|     parent = (n:11 / 2):5
105|     if (this{'values'}[parent:5][1]:20 < this{'values'}[n:11][1]:23):true
106|      tmp = this{'values'}[parent:5]:[ -> 20, -> 20 ]
107|      this{'values'}[parent:5]:[ -> 23, -> 23 ] = this{'values'}[n:11]:[ -> 23, -> 23 ]
108|      this{'values'}[n:11]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
108|     end # if
112|     n = parent:5
113|    end
103|    while (n:5 > 1):true
104|     parent = (n:5 / 2):2
105|     if (this{'values'}[parent:2][1]:21 < this{'values'}[n:5][1]:23):true
106|      tmp = this{'values'}[parent:2]:[ -> 21, -> 21 ]
107|      this{'values'}[parent:2]:[ -> 23, -> 23 ] = this{'values'}[n:5]:[ -> 23, -> 23 ]
108|      this{'values'}[n:5]:[ -> 21, -> 21 ] = tmp:[ -> 21, -> 21 ]
108|     end # if
112|     n = parent:2
113|    end
103|    while (n:2 > 1):true
104|     parent = (n:2 / 2):1
105|     if (this{'values'}[parent:1][1]:22 < this{'values'}[n:2][1]:23):true
106|      tmp = this{'values'}[parent:1]:[ -> 22, -> 22 ]
107|      this{'values'}[parent:1]:[ -> 23, -> 23 ] = this{'values'}[n:2]:[ -> 23, -> 23 ]
108|      this{'values'}[n:2]:[ -> 22, -> 22 ] = tmp:[ -> 22, -> 22 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 24
020|   h{'push'}:sub ( ~key i:24 ~data i:24 )...
100|    push( ~array this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 22, -> 22 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ] ] ~top [ key:24 , data:24]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 22, -> 22 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 24, -> 24 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 22, -> 22 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 24, -> 24 ] ] ):24
103|    while (n:24 > 1):true
104|     parent = (n:24 / 2):12
105|     if (this{'values'}[parent:12][1]:2 < this{'values'}[n:24][1]:24):true
106|      tmp = this{'values'}[parent:12]:[ -> 2, -> 2 ]
107|      this{'values'}[parent:12]:[ -> 24, -> 24 ] = this{'values'}[n:24]:[ -> 24, -> 24 ]
108|      this{'values'}[n:24]:[ -> 2, -> 2 ] = tmp:[ -> 2, -> 2 ]
108|     end # if
112|     n = parent:12
113|    end
103|    while (n:12 > 1):true
104|     parent = (n:12 / 2):6
105|     if (this{'values'}[parent:6][1]:11 < this{'values'}[n:12][1]:24):true
106|      tmp = this{'values'}[parent:6]:[ -> 11, -> 11 ]
107|      this{'values'}[parent:6]:[ -> 24, -> 24 ] = this{'values'}[n:12]:[ -> 24, -> 24 ]
108|      this{'values'}[n:12]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
108|     end # if
112|     n = parent:6
113|    end
103|    while (n:6 > 1):true
104|     parent = (n:6 / 2):3
105|     if (this{'values'}[parent:3][1]:14 < this{'values'}[n:6][1]:24):true
106|      tmp = this{'values'}[parent:3]:[ -> 14, -> 14 ]
107|      this{'values'}[parent:3]:[ -> 24, -> 24 ] = this{'values'}[n:6]:[ -> 24, -> 24 ]
108|      this{'values'}[n:6]:[ -> 14, -> 14 ] = tmp:[ -> 14, -> 14 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:23 < this{'values'}[n:3][1]:24):true
106|      tmp = this{'values'}[parent:1]:[ -> 23, -> 23 ]
107|      this{'values'}[parent:1]:[ -> 24, -> 24 ] = this{'values'}[n:3]:[ -> 24, -> 24 ]
108|      this{'values'}[n:3]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 25
020|   h{'push'}:sub ( ~key i:25 ~data i:25 )...
100|    push( ~array this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ] ] ~top [ key:25 , data:25]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 25, -> 25 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 25, -> 25 ] ] ):25
103|    while (n:25 > 1):true
104|     parent = (n:25 / 2):12
105|     if (this{'values'}[parent:12][1]:11 < this{'values'}[n:25][1]:25):true
106|      tmp = this{'values'}[parent:12]:[ -> 11, -> 11 ]
107|      this{'values'}[parent:12]:[ -> 25, -> 25 ] = this{'values'}[n:25]:[ -> 25, -> 25 ]
108|      this{'values'}[n:25]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
108|     end # if
112|     n = parent:12
113|    end
103|    while (n:12 > 1):true
104|     parent = (n:12 / 2):6
105|     if (this{'values'}[parent:6][1]:14 < this{'values'}[n:12][1]:25):true
106|      tmp = this{'values'}[parent:6]:[ -> 14, -> 14 ]
107|      this{'values'}[parent:6]:[ -> 25, -> 25 ] = this{'values'}[n:12]:[ -> 25, -> 25 ]
108|      this{'values'}[n:12]:[ -> 14, -> 14 ] = tmp:[ -> 14, -> 14 ]
108|     end # if
112|     n = parent:6
113|    end
103|    while (n:6 > 1):true
104|     parent = (n:6 / 2):3
105|     if (this{'values'}[parent:3][1]:23 < this{'values'}[n:6][1]:25):true
106|      tmp = this{'values'}[parent:3]:[ -> 23, -> 23 ]
107|      this{'values'}[parent:3]:[ -> 25, -> 25 ] = this{'values'}[n:6]:[ -> 25, -> 25 ]
108|      this{'values'}[n:6]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:24 < this{'values'}[n:3][1]:25):true
106|      tmp = this{'values'}[parent:1]:[ -> 24, -> 24 ]
107|      this{'values'}[parent:1]:[ -> 25, -> 25 ] = this{'values'}[n:3]:[ -> 25, -> 25 ]
108|      this{'values'}[n:3]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 26
020|   h{'push'}:sub ( ~key i:26 ~data i:26 )...
100|    push( ~array this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 22, -> 22 ], -> [ -> 24, -> 24 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 23, -> 23 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ] ] ~top [ key:26 , data:26]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 22, -> 22 ], -> [ -> 24, -> 24 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 23, -> 23 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 26, -> 26 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 22, -> 22 ], -> [ -> 24, -> 24 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 23, -> 23 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 26, -> 26 ] ] ):26
103|    while (n:26 > 1):true
104|     parent = (n:26 / 2):13
105|     if (this{'values'}[parent:13][1]:6 < this{'values'}[n:26][1]:26):true
106|      tmp = this{'values'}[parent:13]:[ -> 6, -> 6 ]
107|      this{'values'}[parent:13]:[ -> 26, -> 26 ] = this{'values'}[n:26]:[ -> 26, -> 26 ]
108|      this{'values'}[n:26]:[ -> 6, -> 6 ] = tmp:[ -> 6, -> 6 ]
108|     end # if
112|     n = parent:13
113|    end
103|    while (n:13 > 1):true
104|     parent = (n:13 / 2):6
105|     if (this{'values'}[parent:6][1]:23 < this{'values'}[n:13][1]:26):true
106|      tmp = this{'values'}[parent:6]:[ -> 23, -> 23 ]
107|      this{'values'}[parent:6]:[ -> 26, -> 26 ] = this{'values'}[n:13]:[ -> 26, -> 26 ]
108|      this{'values'}[n:13]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
108|     end # if
112|     n = parent:6
113|    end
103|    while (n:6 > 1):true
104|     parent = (n:6 / 2):3
105|     if (this{'values'}[parent:3][1]:24 < this{'values'}[n:6][1]:26):true
106|      tmp = this{'values'}[parent:3]:[ -> 24, -> 24 ]
107|      this{'values'}[parent:3]:[ -> 26, -> 26 ] = this{'values'}[n:6]:[ -> 26, -> 26 ]
108|      this{'values'}[n:6]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:25 < this{'values'}[n:3][1]:26):true
106|      tmp = this{'values'}[parent:1]:[ -> 25, -> 25 ]
107|      this{'values'}[parent:1]:[ -> 26, -> 26 ] = this{'values'}[n:3]:[ -> 26, -> 26 ]
108|      this{'values'}[n:3]:[ -> 25, -> 25 ] = tmp:[ -> 25, -> 25 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 27
020|   h{'push'}:sub ( ~key i:27 ~data i:27 )...
100|    push( ~array this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ] ] ~top [ key:27 , data:27]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 27, -> 27 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 27, -> 27 ] ] ):27
103|    while (n:27 > 1):true
104|     parent = (n:27 / 2):13
105|     if (this{'values'}[parent:13][1]:23 < this{'values'}[n:27][1]:27):true
106|      tmp = this{'values'}[parent:13]:[ -> 23, -> 23 ]
107|      this{'values'}[parent:13]:[ -> 27, -> 27 ] = this{'values'}[n:27]:[ -> 27, -> 27 ]
108|      this{'values'}[n:27]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
108|     end # if
112|     n = parent:13
113|    end
103|    while (n:13 > 1):true
104|     parent = (n:13 / 2):6
105|     if (this{'values'}[parent:6][1]:24 < this{'values'}[n:13][1]:27):true
106|      tmp = this{'values'}[parent:6]:[ -> 24, -> 24 ]
107|      this{'values'}[parent:6]:[ -> 27, -> 27 ] = this{'values'}[n:13]:[ -> 27, -> 27 ]
108|      this{'values'}[n:13]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
108|     end # if
112|     n = parent:6
113|    end
103|    while (n:6 > 1):true
104|     parent = (n:6 / 2):3
105|     if (this{'values'}[parent:3][1]:25 < this{'values'}[n:6][1]:27):true
106|      tmp = this{'values'}[parent:3]:[ -> 25, -> 25 ]
107|      this{'values'}[parent:3]:[ -> 27, -> 27 ] = this{'values'}[n:6]:[ -> 27, -> 27 ]
108|      this{'values'}[n:6]:[ -> 25, -> 25 ] = tmp:[ -> 25, -> 25 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:26 < this{'values'}[n:3][1]:27):true
106|      tmp = this{'values'}[parent:1]:[ -> 26, -> 26 ]
107|      this{'values'}[parent:1]:[ -> 27, -> 27 ] = this{'values'}[n:3]:[ -> 27, -> 27 ]
108|      this{'values'}[n:3]:[ -> 26, -> 26 ] = tmp:[ -> 26, -> 26 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 28
020|   h{'push'}:sub ( ~key i:28 ~data i:28 )...
100|    push( ~array this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 22, -> 22 ], -> [ -> 26, -> 26 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ] ] ~top [ key:28 , data:28]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 22, -> 22 ], -> [ -> 26, -> 26 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 28, -> 28 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 22, -> 22 ], -> [ -> 26, -> 26 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 28, -> 28 ] ] ):28
103|    while (n:28 > 1):true
104|     parent = (n:28 / 2):14
105|     if (this{'values'}[parent:14][1]:5 < this{'values'}[n:28][1]:28):true
106|      tmp = this{'values'}[parent:14]:[ -> 5, -> 5 ]
107|      this{'values'}[parent:14]:[ -> 28, -> 28 ] = this{'values'}[n:28]:[ -> 28, -> 28 ]
108|      this{'values'}[n:28]:[ -> 5, -> 5 ] = tmp:[ -> 5, -> 5 ]
108|     end # if
112|     n = parent:14
113|    end
103|    while (n:14 > 1):true
104|     parent = (n:14 / 2):7
105|     if (this{'values'}[parent:7][1]:13 < this{'values'}[n:14][1]:28):true
106|      tmp = this{'values'}[parent:7]:[ -> 13, -> 13 ]
107|      this{'values'}[parent:7]:[ -> 28, -> 28 ] = this{'values'}[n:14]:[ -> 28, -> 28 ]
108|      this{'values'}[n:14]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
108|     end # if
112|     n = parent:7
113|    end
103|    while (n:7 > 1):true
104|     parent = (n:7 / 2):3
105|     if (this{'values'}[parent:3][1]:26 < this{'values'}[n:7][1]:28):true
106|      tmp = this{'values'}[parent:3]:[ -> 26, -> 26 ]
107|      this{'values'}[parent:3]:[ -> 28, -> 28 ] = this{'values'}[n:7]:[ -> 28, -> 28 ]
108|      this{'values'}[n:7]:[ -> 26, -> 26 ] = tmp:[ -> 26, -> 26 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:27 < this{'values'}[n:3][1]:28):true
106|      tmp = this{'values'}[parent:1]:[ -> 27, -> 27 ]
107|      this{'values'}[parent:1]:[ -> 28, -> 28 ] = this{'values'}[n:3]:[ -> 28, -> 28 ]
108|      this{'values'}[n:3]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 29
020|   h{'push'}:sub ( ~key i:29 ~data i:29 )...
100|    push( ~array this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 27, -> 27 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ] ] ~top [ key:29 , data:29]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 27, -> 27 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 29, -> 29 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 27, -> 27 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 29, -> 29 ] ] ):29
103|    while (n:29 > 1):true
104|     parent = (n:29 / 2):14
105|     if (this{'values'}[parent:14][1]:13 < this{'values'}[n:29][1]:29):true
106|      tmp = this{'values'}[parent:14]:[ -> 13, -> 13 ]
107|      this{'values'}[parent:14]:[ -> 29, -> 29 ] = this{'values'}[n:29]:[ -> 29, -> 29 ]
108|      this{'values'}[n:29]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
108|     end # if
112|     n = parent:14
113|    end
103|    while (n:14 > 1):true
104|     parent = (n:14 / 2):7
105|     if (this{'values'}[parent:7][1]:26 < this{'values'}[n:14][1]:29):true
106|      tmp = this{'values'}[parent:7]:[ -> 26, -> 26 ]
107|      this{'values'}[parent:7]:[ -> 29, -> 29 ] = this{'values'}[n:14]:[ -> 29, -> 29 ]
108|      this{'values'}[n:14]:[ -> 26, -> 26 ] = tmp:[ -> 26, -> 26 ]
108|     end # if
112|     n = parent:7
113|    end
103|    while (n:7 > 1):true
104|     parent = (n:7 / 2):3
105|     if (this{'values'}[parent:3][1]:27 < this{'values'}[n:7][1]:29):true
106|      tmp = this{'values'}[parent:3]:[ -> 27, -> 27 ]
107|      this{'values'}[parent:3]:[ -> 29, -> 29 ] = this{'values'}[n:7]:[ -> 29, -> 29 ]
108|      this{'values'}[n:7]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:28 < this{'values'}[n:3][1]:29):true
106|      tmp = this{'values'}[parent:1]:[ -> 28, -> 28 ]
107|      this{'values'}[parent:1]:[ -> 29, -> 29 ] = this{'values'}[n:3]:[ -> 29, -> 29 ]
108|      this{'values'}[n:3]:[ -> 28, -> 28 ] = tmp:[ -> 28, -> 28 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  for i = 30
020|   h{'push'}:sub ( ~key i:30 ~data i:30 )...
100|    push( ~array this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 22, -> 22 ], -> [ -> 28, -> 28 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ] ] ~top [ key:30 , data:30]  )...
102|    ... = size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 22, -> 22 ], -> [ -> 28, -> 28 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ], -> [ -> 30, -> 30 ] ] )...
102|    n = size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 22, -> 22 ], -> [ -> 28, -> 28 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ], -> [ -> 30, -> 30 ] ] ):30
103|    while (n:30 > 1):true
104|     parent = (n:30 / 2):15
105|     if (this{'values'}[parent:15][1]:12 < this{'values'}[n:30][1]:30):true
106|      tmp = this{'values'}[parent:15]:[ -> 12, -> 12 ]
107|      this{'values'}[parent:15]:[ -> 30, -> 30 ] = this{'values'}[n:30]:[ -> 30, -> 30 ]
108|      this{'values'}[n:30]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
108|     end # if
112|     n = parent:15
113|    end
103|    while (n:15 > 1):true
104|     parent = (n:15 / 2):7
105|     if (this{'values'}[parent:7][1]:27 < this{'values'}[n:15][1]:30):true
106|      tmp = this{'values'}[parent:7]:[ -> 27, -> 27 ]
107|      this{'values'}[parent:7]:[ -> 30, -> 30 ] = this{'values'}[n:15]:[ -> 30, -> 30 ]
108|      this{'values'}[n:15]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
108|     end # if
112|     n = parent:7
113|    end
103|    while (n:7 > 1):true
104|     parent = (n:7 / 2):3
105|     if (this{'values'}[parent:3][1]:28 < this{'values'}[n:7][1]:30):true
106|      tmp = this{'values'}[parent:3]:[ -> 28, -> 28 ]
107|      this{'values'}[parent:3]:[ -> 30, -> 30 ] = this{'values'}[n:7]:[ -> 30, -> 30 ]
108|      this{'values'}[n:7]:[ -> 28, -> 28 ] = tmp:[ -> 28, -> 28 ]
108|     end # if
112|     n = parent:3
113|    end
103|    while (n:3 > 1):true
104|     parent = (n:3 / 2):1
105|     if (this{'values'}[parent:1][1]:29 < this{'values'}[n:3][1]:30):true
106|      tmp = this{'values'}[parent:1]:[ -> 29, -> 29 ]
107|      this{'values'}[parent:1]:[ -> 30, -> 30 ] = this{'values'}[n:3]:[ -> 30, -> 30 ]
108|      this{'values'}[n:3]:[ -> 29, -> 29 ] = tmp:[ -> 29, -> 29 ]
108|     end # if
112|     n = parent:1
113|    end
103|    while (n:1 > 1):false
113|    end # finish loop
019|  end
019|  for ...
019|  end # finish for loop
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 28, -> 28 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 28, -> 28 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ] ] ):30 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 28, -> 28 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 30, -> 30 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 28, -> 28 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ] ] ):30
129|    if (sz:30 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 30, -> 30 ]
134|    this{'values'}[1]:[ -> 12, -> 12 ] = this{'values'}[sz:30]:[ -> 12, -> 12 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b64cb8)12, -> (0x8b64578)12 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 28, -> 28 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ], -> [ -> <0x8b64cb8> , -> <0x8b64578>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b64cb8)12, -> (0x8b64578)12 ], -> [ -> 22, -> 22 ], -> [ -> 29, -> 29 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 28, -> 28 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 27, -> 27 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ], -> [ -> <0x8b64cb8> , -> <0x8b64578>  ] ] ):-> [ -> 12, -> 12 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:30):false
144|     end # if
147|     if (leftn:3 >= sz:30):false
151|     else
154|      if ((this{'values'}[pos:1][1]:12 > this{'values'}[rightn:2][1]:22):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:22 > this{'values'}[leftn:3][1]:29):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 29, -> 29 ]
168|     this{'values'}[nextn:3]:[ -> 12, -> 12 ] = this{'values'}[pos:1]:[ -> 12, -> 12 ]
169|     this{'values'}[pos:1]:[ -> 29, -> 29 ] = tmp:[ -> 29, -> 29 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:30):false
144|     end # if
147|     if (leftn:7 >= sz:30):false
151|     else
154|      if ((this{'values'}[pos:3][1]:12 > this{'values'}[rightn:6][1]:25):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:6][1]:25 > this{'values'}[leftn:7][1]:28):false
161|      else
163|       nextn = leftn:7
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:7]:[ -> 28, -> 28 ]
168|     this{'values'}[nextn:7]:[ -> 12, -> 12 ] = this{'values'}[pos:3]:[ -> 12, -> 12 ]
169|     this{'values'}[pos:3]:[ -> 28, -> 28 ] = tmp:[ -> 28, -> 28 ]
171|     pos = nextn:7
172|    end
139|    loop
140|     rightn = (pos:7 * 2):14
141|     leftn = ((pos:7 * 2):14 + 1):15
143|     if (rightn:14 >= sz:30):false
144|     end # if
147|     if (leftn:15 >= sz:30):false
151|     else
154|      if ((this{'values'}[pos:7][1]:12 > this{'values'}[rightn:14][1]:26):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:14][1]:26 > this{'values'}[leftn:15][1]:27):false
161|      else
163|       nextn = leftn:15
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:15]:[ -> 27, -> 27 ]
168|     this{'values'}[nextn:15]:[ -> 12, -> 12 ] = this{'values'}[pos:7]:[ -> 12, -> 12 ]
169|     this{'values'}[pos:7]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
171|     pos = nextn:15
172|    end
139|    loop
140|     rightn = (pos:15 * 2):30
141|     leftn = ((pos:15 * 2):30 + 1):31
143|     if (rightn:30 >= sz:30):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 30, -> 30 ]
024|   [ key:-> 30 , val:-> 30]  = h{'pop'}:sub (  ):[ -> 30, -> 30 ]
026|   println( ~msg 'key ' .. key:30 .. ' value ' .. val:30 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 22, -> 22 ], -> [ -> 28, -> 28 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 22, -> 22 ], -> [ -> 28, -> 28 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ] ] ):29 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 22, -> 22 ], -> [ -> 28, -> 28 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 29, -> 29 ], -> [ -> 22, -> 22 ], -> [ -> 28, -> 28 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 13, -> 13 ] ] ):29
129|    if (sz:29 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 29, -> 29 ]
134|    this{'values'}[1]:[ -> 13, -> 13 ] = this{'values'}[sz:29]:[ -> 13, -> 13 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b653e8)13, -> (0x8b64d48)13 ], -> [ -> 22, -> 22 ], -> [ -> 28, -> 28 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> <0x8b653e8> , -> <0x8b64d48>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b653e8)13, -> (0x8b64d48)13 ], -> [ -> 22, -> 22 ], -> [ -> 28, -> 28 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 27, -> 27 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 26, -> 26 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> <0x8b653e8> , -> <0x8b64d48>  ] ] ):-> [ -> 13, -> 13 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:29):false
144|     end # if
147|     if (leftn:3 >= sz:29):false
151|     else
154|      if ((this{'values'}[pos:1][1]:13 > this{'values'}[rightn:2][1]:22):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:22 > this{'values'}[leftn:3][1]:28):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 28, -> 28 ]
168|     this{'values'}[nextn:3]:[ -> 13, -> 13 ] = this{'values'}[pos:1]:[ -> 13, -> 13 ]
169|     this{'values'}[pos:1]:[ -> 28, -> 28 ] = tmp:[ -> 28, -> 28 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:29):false
144|     end # if
147|     if (leftn:7 >= sz:29):false
151|     else
154|      if ((this{'values'}[pos:3][1]:13 > this{'values'}[rightn:6][1]:25):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:6][1]:25 > this{'values'}[leftn:7][1]:27):false
161|      else
163|       nextn = leftn:7
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:7]:[ -> 27, -> 27 ]
168|     this{'values'}[nextn:7]:[ -> 13, -> 13 ] = this{'values'}[pos:3]:[ -> 13, -> 13 ]
169|     this{'values'}[pos:3]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
171|     pos = nextn:7
172|    end
139|    loop
140|     rightn = (pos:7 * 2):14
141|     leftn = ((pos:7 * 2):14 + 1):15
143|     if (rightn:14 >= sz:29):false
144|     end # if
147|     if (leftn:15 >= sz:29):false
151|     else
154|      if ((this{'values'}[pos:7][1]:13 > this{'values'}[rightn:14][1]:26):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:14][1]:26 > this{'values'}[leftn:15][1]:12):true
161|       nextn = rightn:14
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:14]:[ -> 26, -> 26 ]
168|     this{'values'}[nextn:14]:[ -> 13, -> 13 ] = this{'values'}[pos:7]:[ -> 13, -> 13 ]
169|     this{'values'}[pos:7]:[ -> 26, -> 26 ] = tmp:[ -> 26, -> 26 ]
171|     pos = nextn:14
172|    end
139|    loop
140|     rightn = (pos:14 * 2):28
141|     leftn = ((pos:14 * 2):28 + 1):29
143|     if (rightn:28 >= sz:29):false
144|     end # if
147|     if (leftn:29 >= sz:29):true
148|      if (this{'values'}[pos:14][1]:13 > this{'values'}[rightn:28][1]:5):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 29, -> 29 ]
024|   [ key:-> 29 , val:-> 29]  = h{'pop'}:sub (  ):[ -> 29, -> 29 ]
026|   println( ~msg 'key ' .. key:29 .. ' value ' .. val:29 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 27, -> 27 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 27, -> 27 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ] ] ):28 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 27, -> 27 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 28, -> 28 ], -> [ -> 22, -> 22 ], -> [ -> 27, -> 27 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ] ] ):28
129|    if (sz:28 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 28, -> 28 ]
134|    this{'values'}[1]:[ -> 5, -> 5 ] = this{'values'}[sz:28]:[ -> 5, -> 5 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61fa8)5, -> (0x8b61ff8)5 ], -> [ -> 22, -> 22 ], -> [ -> 27, -> 27 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> <0x8b61fa8> , -> <0x8b61ff8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61fa8)5, -> (0x8b61ff8)5 ], -> [ -> 22, -> 22 ], -> [ -> 27, -> 27 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 26, -> 26 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ], -> [ -> <0x8b61fa8> , -> <0x8b61ff8>  ] ] ):-> [ -> 5, -> 5 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:28):false
144|     end # if
147|     if (leftn:3 >= sz:28):false
151|     else
154|      if ((this{'values'}[pos:1][1]:5 > this{'values'}[rightn:2][1]:22):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:22 > this{'values'}[leftn:3][1]:27):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 27, -> 27 ]
168|     this{'values'}[nextn:3]:[ -> 5, -> 5 ] = this{'values'}[pos:1]:[ -> 5, -> 5 ]
169|     this{'values'}[pos:1]:[ -> 27, -> 27 ] = tmp:[ -> 27, -> 27 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:28):false
144|     end # if
147|     if (leftn:7 >= sz:28):false
151|     else
154|      if ((this{'values'}[pos:3][1]:5 > this{'values'}[rightn:6][1]:25):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:6][1]:25 > this{'values'}[leftn:7][1]:26):false
161|      else
163|       nextn = leftn:7
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:7]:[ -> 26, -> 26 ]
168|     this{'values'}[nextn:7]:[ -> 5, -> 5 ] = this{'values'}[pos:3]:[ -> 5, -> 5 ]
169|     this{'values'}[pos:3]:[ -> 26, -> 26 ] = tmp:[ -> 26, -> 26 ]
171|     pos = nextn:7
172|    end
139|    loop
140|     rightn = (pos:7 * 2):14
141|     leftn = ((pos:7 * 2):14 + 1):15
143|     if (rightn:14 >= sz:28):false
144|     end # if
147|     if (leftn:15 >= sz:28):false
151|     else
154|      if ((this{'values'}[pos:7][1]:5 > this{'values'}[rightn:14][1]:13):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:14][1]:13 > this{'values'}[leftn:15][1]:12):true
161|       nextn = rightn:14
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:14]:[ -> 13, -> 13 ]
168|     this{'values'}[nextn:14]:[ -> 5, -> 5 ] = this{'values'}[pos:7]:[ -> 5, -> 5 ]
169|     this{'values'}[pos:7]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
171|     pos = nextn:14
172|    end
139|    loop
140|     rightn = (pos:14 * 2):28
141|     leftn = ((pos:14 * 2):28 + 1):29
143|     if (rightn:28 >= sz:28):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 28, -> 28 ]
024|   [ key:-> 28 , val:-> 28]  = h{'pop'}:sub (  ):[ -> 28, -> 28 ]
026|   println( ~msg 'key ' .. key:28 .. ' value ' .. val:28 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 22, -> 22 ], -> [ -> 26, -> 26 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 22, -> 22 ], -> [ -> 26, -> 26 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ] ] ):27 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 22, -> 22 ], -> [ -> 26, -> 26 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 27, -> 27 ], -> [ -> 22, -> 22 ], -> [ -> 26, -> 26 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 23, -> 23 ] ] ):27
129|    if (sz:27 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 27, -> 27 ]
134|    this{'values'}[1]:[ -> 23, -> 23 ] = this{'values'}[sz:27]:[ -> 23, -> 23 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b69de8)23, -> (0x8b69e38)23 ], -> [ -> 22, -> 22 ], -> [ -> 26, -> 26 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> <0x8b69de8> , -> <0x8b69e38>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b69de8)23, -> (0x8b69e38)23 ], -> [ -> 22, -> 22 ], -> [ -> 26, -> 26 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 25, -> 25 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 24, -> 24 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> <0x8b69de8> , -> <0x8b69e38>  ] ] ):-> [ -> 23, -> 23 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:27):false
144|     end # if
147|     if (leftn:3 >= sz:27):false
151|     else
154|      if ((this{'values'}[pos:1][1]:23 > this{'values'}[rightn:2][1]:22):true and (this{'values'}[pos:1][1]:23 > this{'values'}[leftn:3][1]:26):false):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:22 > this{'values'}[leftn:3][1]:26):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 26, -> 26 ]
168|     this{'values'}[nextn:3]:[ -> 23, -> 23 ] = this{'values'}[pos:1]:[ -> 23, -> 23 ]
169|     this{'values'}[pos:1]:[ -> 26, -> 26 ] = tmp:[ -> 26, -> 26 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:27):false
144|     end # if
147|     if (leftn:7 >= sz:27):false
151|     else
154|      if ((this{'values'}[pos:3][1]:23 > this{'values'}[rightn:6][1]:25):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:6][1]:25 > this{'values'}[leftn:7][1]:13):true
161|       nextn = rightn:6
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:6]:[ -> 25, -> 25 ]
168|     this{'values'}[nextn:6]:[ -> 23, -> 23 ] = this{'values'}[pos:3]:[ -> 23, -> 23 ]
169|     this{'values'}[pos:3]:[ -> 25, -> 25 ] = tmp:[ -> 25, -> 25 ]
171|     pos = nextn:6
172|    end
139|    loop
140|     rightn = (pos:6 * 2):12
141|     leftn = ((pos:6 * 2):12 + 1):13
143|     if (rightn:12 >= sz:27):false
144|     end # if
147|     if (leftn:13 >= sz:27):false
151|     else
154|      if ((this{'values'}[pos:6][1]:23 > this{'values'}[rightn:12][1]:14):true and (this{'values'}[pos:6][1]:23 > this{'values'}[leftn:13][1]:24):false):false
156|      end # if
160|      if (this{'values'}[rightn:12][1]:14 > this{'values'}[leftn:13][1]:24):false
161|      else
163|       nextn = leftn:13
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:13]:[ -> 24, -> 24 ]
168|     this{'values'}[nextn:13]:[ -> 23, -> 23 ] = this{'values'}[pos:6]:[ -> 23, -> 23 ]
169|     this{'values'}[pos:6]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
171|     pos = nextn:13
172|    end
139|    loop
140|     rightn = (pos:13 * 2):26
141|     leftn = ((pos:13 * 2):26 + 1):27
143|     if (rightn:26 >= sz:27):false
144|     end # if
147|     if (leftn:27 >= sz:27):true
148|      if (this{'values'}[pos:13][1]:23 > this{'values'}[rightn:26][1]:6):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 27, -> 27 ]
024|   [ key:-> 27 , val:-> 27]  = h{'pop'}:sub (  ):[ -> 27, -> 27 ]
026|   println( ~msg 'key ' .. key:27 .. ' value ' .. val:27 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ] ] ):26 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 26, -> 26 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ] ] ):26
129|    if (sz:26 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 26, -> 26 ]
134|    this{'values'}[1]:[ -> 6, -> 6 ] = this{'values'}[sz:26]:[ -> 6, -> 6 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b625f8)6, -> (0x8b620b8)6 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> <0x8b625f8> , -> <0x8b620b8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b625f8)6, -> (0x8b620b8)6 ], -> [ -> 22, -> 22 ], -> [ -> 25, -> 25 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 24, -> 24 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 23, -> 23 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ], -> [ -> <0x8b625f8> , -> <0x8b620b8>  ] ] ):-> [ -> 6, -> 6 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:26):false
144|     end # if
147|     if (leftn:3 >= sz:26):false
151|     else
154|      if ((this{'values'}[pos:1][1]:6 > this{'values'}[rightn:2][1]:22):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:22 > this{'values'}[leftn:3][1]:25):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 25, -> 25 ]
168|     this{'values'}[nextn:3]:[ -> 6, -> 6 ] = this{'values'}[pos:1]:[ -> 6, -> 6 ]
169|     this{'values'}[pos:1]:[ -> 25, -> 25 ] = tmp:[ -> 25, -> 25 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:26):false
144|     end # if
147|     if (leftn:7 >= sz:26):false
151|     else
154|      if ((this{'values'}[pos:3][1]:6 > this{'values'}[rightn:6][1]:24):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:6][1]:24 > this{'values'}[leftn:7][1]:13):true
161|       nextn = rightn:6
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:6]:[ -> 24, -> 24 ]
168|     this{'values'}[nextn:6]:[ -> 6, -> 6 ] = this{'values'}[pos:3]:[ -> 6, -> 6 ]
169|     this{'values'}[pos:3]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
171|     pos = nextn:6
172|    end
139|    loop
140|     rightn = (pos:6 * 2):12
141|     leftn = ((pos:6 * 2):12 + 1):13
143|     if (rightn:12 >= sz:26):false
144|     end # if
147|     if (leftn:13 >= sz:26):false
151|     else
154|      if ((this{'values'}[pos:6][1]:6 > this{'values'}[rightn:12][1]:14):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:12][1]:14 > this{'values'}[leftn:13][1]:23):false
161|      else
163|       nextn = leftn:13
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:13]:[ -> 23, -> 23 ]
168|     this{'values'}[nextn:13]:[ -> 6, -> 6 ] = this{'values'}[pos:6]:[ -> 6, -> 6 ]
169|     this{'values'}[pos:6]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
171|     pos = nextn:13
172|    end
139|    loop
140|     rightn = (pos:13 * 2):26
141|     leftn = ((pos:13 * 2):26 + 1):27
143|     if (rightn:26 >= sz:26):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 26, -> 26 ]
024|   [ key:-> 26 , val:-> 26]  = h{'pop'}:sub (  ):[ -> 26, -> 26 ]
026|   println( ~msg 'key ' .. key:26 .. ' value ' .. val:26 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 22, -> 22 ], -> [ -> 24, -> 24 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 23, -> 23 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 22, -> 22 ], -> [ -> 24, -> 24 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 23, -> 23 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ] ] ):25 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 22, -> 22 ], -> [ -> 24, -> 24 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 23, -> 23 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 25, -> 25 ], -> [ -> 22, -> 22 ], -> [ -> 24, -> 24 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 23, -> 23 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 11, -> 11 ] ] ):25
129|    if (sz:25 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 25, -> 25 ]
134|    this{'values'}[1]:[ -> 11, -> 11 ] = this{'values'}[sz:25]:[ -> 11, -> 11 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b644e8)11, -> (0x8b63e98)11 ], -> [ -> 22, -> 22 ], -> [ -> 24, -> 24 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 23, -> 23 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> <0x8b644e8> , -> <0x8b63e98>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b644e8)11, -> (0x8b63e98)11 ], -> [ -> 22, -> 22 ], -> [ -> 24, -> 24 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 23, -> 23 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> <0x8b644e8> , -> <0x8b63e98>  ] ] ):-> [ -> 11, -> 11 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:25):false
144|     end # if
147|     if (leftn:3 >= sz:25):false
151|     else
154|      if ((this{'values'}[pos:1][1]:11 > this{'values'}[rightn:2][1]:22):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:22 > this{'values'}[leftn:3][1]:24):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 24, -> 24 ]
168|     this{'values'}[nextn:3]:[ -> 11, -> 11 ] = this{'values'}[pos:1]:[ -> 11, -> 11 ]
169|     this{'values'}[pos:1]:[ -> 24, -> 24 ] = tmp:[ -> 24, -> 24 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:25):false
144|     end # if
147|     if (leftn:7 >= sz:25):false
151|     else
154|      if ((this{'values'}[pos:3][1]:11 > this{'values'}[rightn:6][1]:23):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:6][1]:23 > this{'values'}[leftn:7][1]:13):true
161|       nextn = rightn:6
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:6]:[ -> 23, -> 23 ]
168|     this{'values'}[nextn:6]:[ -> 11, -> 11 ] = this{'values'}[pos:3]:[ -> 11, -> 11 ]
169|     this{'values'}[pos:3]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
171|     pos = nextn:6
172|    end
139|    loop
140|     rightn = (pos:6 * 2):12
141|     leftn = ((pos:6 * 2):12 + 1):13
143|     if (rightn:12 >= sz:25):false
144|     end # if
147|     if (leftn:13 >= sz:25):false
151|     else
154|      if ((this{'values'}[pos:6][1]:11 > this{'values'}[rightn:12][1]:14):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:12][1]:14 > this{'values'}[leftn:13][1]:6):true
161|       nextn = rightn:12
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:12]:[ -> 14, -> 14 ]
168|     this{'values'}[nextn:12]:[ -> 11, -> 11 ] = this{'values'}[pos:6]:[ -> 11, -> 11 ]
169|     this{'values'}[pos:6]:[ -> 14, -> 14 ] = tmp:[ -> 14, -> 14 ]
171|     pos = nextn:12
172|    end
139|    loop
140|     rightn = (pos:12 * 2):24
141|     leftn = ((pos:12 * 2):24 + 1):25
143|     if (rightn:24 >= sz:25):false
144|     end # if
147|     if (leftn:25 >= sz:25):true
148|      if (this{'values'}[pos:12][1]:11 > this{'values'}[rightn:24][1]:2):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 25, -> 25 ]
024|   [ key:-> 25 , val:-> 25]  = h{'pop'}:sub (  ):[ -> 25, -> 25 ]
026|   println( ~msg 'key ' .. key:25 .. ' value ' .. val:25 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ] ] ):24 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 24, -> 24 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ] ] ):24
129|    if (sz:24 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 24, -> 24 ]
134|    this{'values'}[1]:[ -> 2, -> 2 ] = this{'values'}[sz:24]:[ -> 2, -> 2 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61330)2, -> (0x8b61380)2 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> <0x8b61330> , -> <0x8b61380>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61330)2, -> (0x8b61380)2 ], -> [ -> 22, -> 22 ], -> [ -> 23, -> 23 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ], -> [ -> <0x8b61330> , -> <0x8b61380>  ] ] ):-> [ -> 2, -> 2 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:24):false
144|     end # if
147|     if (leftn:3 >= sz:24):false
151|     else
154|      if ((this{'values'}[pos:1][1]:2 > this{'values'}[rightn:2][1]:22):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:22 > this{'values'}[leftn:3][1]:23):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 23, -> 23 ]
168|     this{'values'}[nextn:3]:[ -> 2, -> 2 ] = this{'values'}[pos:1]:[ -> 2, -> 2 ]
169|     this{'values'}[pos:1]:[ -> 23, -> 23 ] = tmp:[ -> 23, -> 23 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:24):false
144|     end # if
147|     if (leftn:7 >= sz:24):false
151|     else
154|      if ((this{'values'}[pos:3][1]:2 > this{'values'}[rightn:6][1]:14):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:6][1]:14 > this{'values'}[leftn:7][1]:13):true
161|       nextn = rightn:6
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:6]:[ -> 14, -> 14 ]
168|     this{'values'}[nextn:6]:[ -> 2, -> 2 ] = this{'values'}[pos:3]:[ -> 2, -> 2 ]
169|     this{'values'}[pos:3]:[ -> 14, -> 14 ] = tmp:[ -> 14, -> 14 ]
171|     pos = nextn:6
172|    end
139|    loop
140|     rightn = (pos:6 * 2):12
141|     leftn = ((pos:6 * 2):12 + 1):13
143|     if (rightn:12 >= sz:24):false
144|     end # if
147|     if (leftn:13 >= sz:24):false
151|     else
154|      if ((this{'values'}[pos:6][1]:2 > this{'values'}[rightn:12][1]:11):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:12][1]:11 > this{'values'}[leftn:13][1]:6):true
161|       nextn = rightn:12
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:12]:[ -> 11, -> 11 ]
168|     this{'values'}[nextn:12]:[ -> 2, -> 2 ] = this{'values'}[pos:6]:[ -> 2, -> 2 ]
169|     this{'values'}[pos:6]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
171|     pos = nextn:12
172|    end
139|    loop
140|     rightn = (pos:12 * 2):24
141|     leftn = ((pos:12 * 2):24 + 1):25
143|     if (rightn:24 >= sz:24):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 24, -> 24 ]
024|   [ key:-> 24 , val:-> 24]  = h{'pop'}:sub (  ):[ -> 24, -> 24 ]
026|   println( ~msg 'key ' .. key:24 .. ' value ' .. val:24 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 22, -> 22 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 22, -> 22 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ] ] ):23 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 22, -> 22 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 23, -> 23 ], -> [ -> 22, -> 22 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 19, -> 19 ] ] ):23
129|    if (sz:23 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 23, -> 23 ]
134|    this{'values'}[1]:[ -> 19, -> 19 ] = this{'values'}[sz:23]:[ -> 19, -> 19 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b68340)19, -> (0x8b67b10)19 ], -> [ -> 22, -> 22 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> <0x8b68340> , -> <0x8b67b10>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b68340)19, -> (0x8b67b10)19 ], -> [ -> 22, -> 22 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 21, -> 21 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 20, -> 20 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> <0x8b68340> , -> <0x8b67b10>  ] ] ):-> [ -> 19, -> 19 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:23):false
144|     end # if
147|     if (leftn:3 >= sz:23):false
151|     else
154|      if ((this{'values'}[pos:1][1]:19 > this{'values'}[rightn:2][1]:22):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:22 > this{'values'}[leftn:3][1]:14):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 22, -> 22 ]
168|     this{'values'}[nextn:2]:[ -> 19, -> 19 ] = this{'values'}[pos:1]:[ -> 19, -> 19 ]
169|     this{'values'}[pos:1]:[ -> 22, -> 22 ] = tmp:[ -> 22, -> 22 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:23):false
144|     end # if
147|     if (leftn:5 >= sz:23):false
151|     else
154|      if ((this{'values'}[pos:2][1]:19 > this{'values'}[rightn:4][1]:17):true and (this{'values'}[pos:2][1]:19 > this{'values'}[leftn:5][1]:21):false):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:17 > this{'values'}[leftn:5][1]:21):false
161|      else
163|       nextn = leftn:5
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:5]:[ -> 21, -> 21 ]
168|     this{'values'}[nextn:5]:[ -> 19, -> 19 ] = this{'values'}[pos:2]:[ -> 19, -> 19 ]
169|     this{'values'}[pos:2]:[ -> 21, -> 21 ] = tmp:[ -> 21, -> 21 ]
171|     pos = nextn:5
172|    end
139|    loop
140|     rightn = (pos:5 * 2):10
141|     leftn = ((pos:5 * 2):10 + 1):11
143|     if (rightn:10 >= sz:23):false
144|     end # if
147|     if (leftn:11 >= sz:23):false
151|     else
154|      if ((this{'values'}[pos:5][1]:19 > this{'values'}[rightn:10][1]:18):true and (this{'values'}[pos:5][1]:19 > this{'values'}[leftn:11][1]:20):false):false
156|      end # if
160|      if (this{'values'}[rightn:10][1]:18 > this{'values'}[leftn:11][1]:20):false
161|      else
163|       nextn = leftn:11
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:11]:[ -> 20, -> 20 ]
168|     this{'values'}[nextn:11]:[ -> 19, -> 19 ] = this{'values'}[pos:5]:[ -> 19, -> 19 ]
169|     this{'values'}[pos:5]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
171|     pos = nextn:11
172|    end
139|    loop
140|     rightn = (pos:11 * 2):22
141|     leftn = ((pos:11 * 2):22 + 1):23
143|     if (rightn:22 >= sz:23):false
144|     end # if
147|     if (leftn:23 >= sz:23):true
148|      if (this{'values'}[pos:11][1]:19 > this{'values'}[rightn:22][1]:8):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 23, -> 23 ]
024|   [ key:-> 23 , val:-> 23]  = h{'pop'}:sub (  ):[ -> 23, -> 23 ]
026|   println( ~msg 'key ' .. key:23 .. ' value ' .. val:23 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ] ] ):22 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 22, -> 22 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ] ] ):22
129|    if (sz:22 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 22, -> 22 ]
134|    this{'values'}[1]:[ -> 8, -> 8 ] = this{'values'}[sz:22]:[ -> 8, -> 8 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b63048)8, -> (0x8b62bb0)8 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> <0x8b63048> , -> <0x8b62bb0>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b63048)8, -> (0x8b62bb0)8 ], -> [ -> 21, -> 21 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 20, -> 20 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 19, -> 19 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ], -> [ -> <0x8b63048> , -> <0x8b62bb0>  ] ] ):-> [ -> 8, -> 8 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:22):false
144|     end # if
147|     if (leftn:3 >= sz:22):false
151|     else
154|      if ((this{'values'}[pos:1][1]:8 > this{'values'}[rightn:2][1]:21):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:21 > this{'values'}[leftn:3][1]:14):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 21, -> 21 ]
168|     this{'values'}[nextn:2]:[ -> 8, -> 8 ] = this{'values'}[pos:1]:[ -> 8, -> 8 ]
169|     this{'values'}[pos:1]:[ -> 21, -> 21 ] = tmp:[ -> 21, -> 21 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:22):false
144|     end # if
147|     if (leftn:5 >= sz:22):false
151|     else
154|      if ((this{'values'}[pos:2][1]:8 > this{'values'}[rightn:4][1]:17):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:17 > this{'values'}[leftn:5][1]:20):false
161|      else
163|       nextn = leftn:5
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:5]:[ -> 20, -> 20 ]
168|     this{'values'}[nextn:5]:[ -> 8, -> 8 ] = this{'values'}[pos:2]:[ -> 8, -> 8 ]
169|     this{'values'}[pos:2]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
171|     pos = nextn:5
172|    end
139|    loop
140|     rightn = (pos:5 * 2):10
141|     leftn = ((pos:5 * 2):10 + 1):11
143|     if (rightn:10 >= sz:22):false
144|     end # if
147|     if (leftn:11 >= sz:22):false
151|     else
154|      if ((this{'values'}[pos:5][1]:8 > this{'values'}[rightn:10][1]:18):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:10][1]:18 > this{'values'}[leftn:11][1]:19):false
161|      else
163|       nextn = leftn:11
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:11]:[ -> 19, -> 19 ]
168|     this{'values'}[nextn:11]:[ -> 8, -> 8 ] = this{'values'}[pos:5]:[ -> 8, -> 8 ]
169|     this{'values'}[pos:5]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
171|     pos = nextn:11
172|    end
139|    loop
140|     rightn = (pos:11 * 2):22
141|     leftn = ((pos:11 * 2):22 + 1):23
143|     if (rightn:22 >= sz:22):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 22, -> 22 ]
024|   [ key:-> 22 , val:-> 22]  = h{'pop'}:sub (  ):[ -> 22, -> 22 ]
026|   println( ~msg 'key ' .. key:22 .. ' value ' .. val:22 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 19, -> 19 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 19, -> 19 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ] ] ):21 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 19, -> 19 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 21, -> 21 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 19, -> 19 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 9, -> 9 ] ] ):21
129|    if (sz:21 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 21, -> 21 ]
134|    this{'values'}[1]:[ -> 9, -> 9 ] = this{'values'}[sz:21]:[ -> 9, -> 9 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b63728)9, -> (0x8b630d8)9 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 19, -> 19 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> <0x8b63728> , -> <0x8b630d8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b63728)9, -> (0x8b630d8)9 ], -> [ -> 20, -> 20 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 19, -> 19 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 18, -> 18 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> <0x8b63728> , -> <0x8b630d8>  ] ] ):-> [ -> 9, -> 9 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:21):false
144|     end # if
147|     if (leftn:3 >= sz:21):false
151|     else
154|      if ((this{'values'}[pos:1][1]:9 > this{'values'}[rightn:2][1]:20):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:20 > this{'values'}[leftn:3][1]:14):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 20, -> 20 ]
168|     this{'values'}[nextn:2]:[ -> 9, -> 9 ] = this{'values'}[pos:1]:[ -> 9, -> 9 ]
169|     this{'values'}[pos:1]:[ -> 20, -> 20 ] = tmp:[ -> 20, -> 20 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:21):false
144|     end # if
147|     if (leftn:5 >= sz:21):false
151|     else
154|      if ((this{'values'}[pos:2][1]:9 > this{'values'}[rightn:4][1]:17):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:17 > this{'values'}[leftn:5][1]:19):false
161|      else
163|       nextn = leftn:5
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:5]:[ -> 19, -> 19 ]
168|     this{'values'}[nextn:5]:[ -> 9, -> 9 ] = this{'values'}[pos:2]:[ -> 9, -> 9 ]
169|     this{'values'}[pos:2]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
171|     pos = nextn:5
172|    end
139|    loop
140|     rightn = (pos:5 * 2):10
141|     leftn = ((pos:5 * 2):10 + 1):11
143|     if (rightn:10 >= sz:21):false
144|     end # if
147|     if (leftn:11 >= sz:21):false
151|     else
154|      if ((this{'values'}[pos:5][1]:9 > this{'values'}[rightn:10][1]:18):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:10][1]:18 > this{'values'}[leftn:11][1]:8):true
161|       nextn = rightn:10
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:10]:[ -> 18, -> 18 ]
168|     this{'values'}[nextn:10]:[ -> 9, -> 9 ] = this{'values'}[pos:5]:[ -> 9, -> 9 ]
169|     this{'values'}[pos:5]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
171|     pos = nextn:10
172|    end
139|    loop
140|     rightn = (pos:10 * 2):20
141|     leftn = ((pos:10 * 2):20 + 1):21
143|     if (rightn:20 >= sz:21):false
144|     end # if
147|     if (leftn:21 >= sz:21):true
148|      if (this{'values'}[pos:10][1]:9 > this{'values'}[rightn:20][1]:3):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 21, -> 21 ]
024|   [ key:-> 21 , val:-> 21]  = h{'pop'}:sub (  ):[ -> 21, -> 21 ]
026|   println( ~msg 'key ' .. key:21 .. ' value ' .. val:21 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ] ] ):20 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 20, -> 20 ], -> [ -> 19, -> 19 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ] ] ):20
129|    if (sz:20 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 20, -> 20 ]
134|    this{'values'}[1]:[ -> 3, -> 3 ] = this{'values'}[sz:20]:[ -> 3, -> 3 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61410)3, -> (0x8b61728)3 ], -> [ -> 19, -> 19 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> <0x8b61410> , -> <0x8b61728>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61410)3, -> (0x8b61728)3 ], -> [ -> 19, -> 19 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 18, -> 18 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ], -> [ -> <0x8b61410> , -> <0x8b61728>  ] ] ):-> [ -> 3, -> 3 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:20):false
144|     end # if
147|     if (leftn:3 >= sz:20):false
151|     else
154|      if ((this{'values'}[pos:1][1]:3 > this{'values'}[rightn:2][1]:19):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:19 > this{'values'}[leftn:3][1]:14):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 19, -> 19 ]
168|     this{'values'}[nextn:2]:[ -> 3, -> 3 ] = this{'values'}[pos:1]:[ -> 3, -> 3 ]
169|     this{'values'}[pos:1]:[ -> 19, -> 19 ] = tmp:[ -> 19, -> 19 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:20):false
144|     end # if
147|     if (leftn:5 >= sz:20):false
151|     else
154|      if ((this{'values'}[pos:2][1]:3 > this{'values'}[rightn:4][1]:17):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:17 > this{'values'}[leftn:5][1]:18):false
161|      else
163|       nextn = leftn:5
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:5]:[ -> 18, -> 18 ]
168|     this{'values'}[nextn:5]:[ -> 3, -> 3 ] = this{'values'}[pos:2]:[ -> 3, -> 3 ]
169|     this{'values'}[pos:2]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
171|     pos = nextn:5
172|    end
139|    loop
140|     rightn = (pos:5 * 2):10
141|     leftn = ((pos:5 * 2):10 + 1):11
143|     if (rightn:10 >= sz:20):false
144|     end # if
147|     if (leftn:11 >= sz:20):false
151|     else
154|      if ((this{'values'}[pos:5][1]:3 > this{'values'}[rightn:10][1]:9):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:10][1]:9 > this{'values'}[leftn:11][1]:8):true
161|       nextn = rightn:10
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:10]:[ -> 9, -> 9 ]
168|     this{'values'}[nextn:10]:[ -> 3, -> 3 ] = this{'values'}[pos:5]:[ -> 3, -> 3 ]
169|     this{'values'}[pos:5]:[ -> 9, -> 9 ] = tmp:[ -> 9, -> 9 ]
171|     pos = nextn:10
172|    end
139|    loop
140|     rightn = (pos:10 * 2):20
141|     leftn = ((pos:10 * 2):20 + 1):21
143|     if (rightn:20 >= sz:20):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 20, -> 20 ]
024|   [ key:-> 20 , val:-> 20]  = h{'pop'}:sub (  ):[ -> 20, -> 20 ]
026|   println( ~msg 'key ' .. key:20 .. ' value ' .. val:20 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 18, -> 18 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 18, -> 18 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ] ] ):19 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 18, -> 18 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 19, -> 19 ], -> [ -> 18, -> 18 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 15, -> 15 ] ] ):19
129|    if (sz:19 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 19, -> 19 ]
134|    this{'values'}[1]:[ -> 15, -> 15 ] = this{'values'}[sz:19]:[ -> 15, -> 15 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b661f8)15, -> (0x8b65b80)15 ], -> [ -> 18, -> 18 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> <0x8b661f8> , -> <0x8b65b80>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b661f8)15, -> (0x8b65b80)15 ], -> [ -> 18, -> 18 ], -> [ -> 14, -> 14 ], -> [ -> 17, -> 17 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 16, -> 16 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> <0x8b661f8> , -> <0x8b65b80>  ] ] ):-> [ -> 15, -> 15 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:19):false
144|     end # if
147|     if (leftn:3 >= sz:19):false
151|     else
154|      if ((this{'values'}[pos:1][1]:15 > this{'values'}[rightn:2][1]:18):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:18 > this{'values'}[leftn:3][1]:14):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 18, -> 18 ]
168|     this{'values'}[nextn:2]:[ -> 15, -> 15 ] = this{'values'}[pos:1]:[ -> 15, -> 15 ]
169|     this{'values'}[pos:1]:[ -> 18, -> 18 ] = tmp:[ -> 18, -> 18 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:19):false
144|     end # if
147|     if (leftn:5 >= sz:19):false
151|     else
154|      if ((this{'values'}[pos:2][1]:15 > this{'values'}[rightn:4][1]:17):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:17 > this{'values'}[leftn:5][1]:9):true
161|       nextn = rightn:4
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:4]:[ -> 17, -> 17 ]
168|     this{'values'}[nextn:4]:[ -> 15, -> 15 ] = this{'values'}[pos:2]:[ -> 15, -> 15 ]
169|     this{'values'}[pos:2]:[ -> 17, -> 17 ] = tmp:[ -> 17, -> 17 ]
171|     pos = nextn:4
172|    end
139|    loop
140|     rightn = (pos:4 * 2):8
141|     leftn = ((pos:4 * 2):8 + 1):9
143|     if (rightn:8 >= sz:19):false
144|     end # if
147|     if (leftn:9 >= sz:19):false
151|     else
154|      if ((this{'values'}[pos:4][1]:15 > this{'values'}[rightn:8][1]:10):true and (this{'values'}[pos:4][1]:15 > this{'values'}[leftn:9][1]:16):false):false
156|      end # if
160|      if (this{'values'}[rightn:8][1]:10 > this{'values'}[leftn:9][1]:16):false
161|      else
163|       nextn = leftn:9
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:9]:[ -> 16, -> 16 ]
168|     this{'values'}[nextn:9]:[ -> 15, -> 15 ] = this{'values'}[pos:4]:[ -> 15, -> 15 ]
169|     this{'values'}[pos:4]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
171|     pos = nextn:9
172|    end
139|    loop
140|     rightn = (pos:9 * 2):18
141|     leftn = ((pos:9 * 2):18 + 1):19
143|     if (rightn:18 >= sz:19):false
144|     end # if
147|     if (leftn:19 >= sz:19):true
148|      if (this{'values'}[pos:9][1]:15 > this{'values'}[rightn:18][1]:4):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 19, -> 19 ]
024|   [ key:-> 19 , val:-> 19]  = h{'pop'}:sub (  ):[ -> 19, -> 19 ]
026|   println( ~msg 'key ' .. key:19 .. ' value ' .. val:19 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ] ] ):18 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 18, -> 18 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ] ] ):18
129|    if (sz:18 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 18, -> 18 ]
134|    this{'values'}[1]:[ -> 4, -> 4 ] = this{'values'}[sz:18]:[ -> 4, -> 4 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61a68)4, -> (0x8b61ab8)4 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> <0x8b61a68> , -> <0x8b61ab8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61a68)4, -> (0x8b61ab8)4 ], -> [ -> 17, -> 17 ], -> [ -> 14, -> 14 ], -> [ -> 16, -> 16 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 15, -> 15 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ], -> [ -> <0x8b61a68> , -> <0x8b61ab8>  ] ] ):-> [ -> 4, -> 4 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:18):false
144|     end # if
147|     if (leftn:3 >= sz:18):false
151|     else
154|      if ((this{'values'}[pos:1][1]:4 > this{'values'}[rightn:2][1]:17):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:17 > this{'values'}[leftn:3][1]:14):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 17, -> 17 ]
168|     this{'values'}[nextn:2]:[ -> 4, -> 4 ] = this{'values'}[pos:1]:[ -> 4, -> 4 ]
169|     this{'values'}[pos:1]:[ -> 17, -> 17 ] = tmp:[ -> 17, -> 17 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:18):false
144|     end # if
147|     if (leftn:5 >= sz:18):false
151|     else
154|      if ((this{'values'}[pos:2][1]:4 > this{'values'}[rightn:4][1]:16):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:16 > this{'values'}[leftn:5][1]:9):true
161|       nextn = rightn:4
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:4]:[ -> 16, -> 16 ]
168|     this{'values'}[nextn:4]:[ -> 4, -> 4 ] = this{'values'}[pos:2]:[ -> 4, -> 4 ]
169|     this{'values'}[pos:2]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
171|     pos = nextn:4
172|    end
139|    loop
140|     rightn = (pos:4 * 2):8
141|     leftn = ((pos:4 * 2):8 + 1):9
143|     if (rightn:8 >= sz:18):false
144|     end # if
147|     if (leftn:9 >= sz:18):false
151|     else
154|      if ((this{'values'}[pos:4][1]:4 > this{'values'}[rightn:8][1]:10):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:8][1]:10 > this{'values'}[leftn:9][1]:15):false
161|      else
163|       nextn = leftn:9
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:9]:[ -> 15, -> 15 ]
168|     this{'values'}[nextn:9]:[ -> 4, -> 4 ] = this{'values'}[pos:4]:[ -> 4, -> 4 ]
169|     this{'values'}[pos:4]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
171|     pos = nextn:9
172|    end
139|    loop
140|     rightn = (pos:9 * 2):18
141|     leftn = ((pos:9 * 2):18 + 1):19
143|     if (rightn:18 >= sz:18):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 18, -> 18 ]
024|   [ key:-> 18 , val:-> 18]  = h{'pop'}:sub (  ):[ -> 18, -> 18 ]
026|   println( ~msg 'key ' .. key:18 .. ' value ' .. val:18 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ] ] ):17 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 17, -> 17 ], -> [ -> 16, -> 16 ], -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 7, -> 7 ] ] ):17
129|    if (sz:17 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 17, -> 17 ]
134|    this{'values'}[1]:[ -> 7, -> 7 ] = this{'values'}[sz:17]:[ -> 7, -> 7 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b62b20)7, -> (0x8b62688)7 ], -> [ -> 16, -> 16 ], -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> <0x8b62b20> , -> <0x8b62688>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b62b20)7, -> (0x8b62688)7 ], -> [ -> 16, -> 16 ], -> [ -> 14, -> 14 ], -> [ -> 15, -> 15 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> <0x8b62b20> , -> <0x8b62688>  ] ] ):-> [ -> 7, -> 7 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:17):false
144|     end # if
147|     if (leftn:3 >= sz:17):false
151|     else
154|      if ((this{'values'}[pos:1][1]:7 > this{'values'}[rightn:2][1]:16):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:16 > this{'values'}[leftn:3][1]:14):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 16, -> 16 ]
168|     this{'values'}[nextn:2]:[ -> 7, -> 7 ] = this{'values'}[pos:1]:[ -> 7, -> 7 ]
169|     this{'values'}[pos:1]:[ -> 16, -> 16 ] = tmp:[ -> 16, -> 16 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:17):false
144|     end # if
147|     if (leftn:5 >= sz:17):false
151|     else
154|      if ((this{'values'}[pos:2][1]:7 > this{'values'}[rightn:4][1]:15):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:15 > this{'values'}[leftn:5][1]:9):true
161|       nextn = rightn:4
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:4]:[ -> 15, -> 15 ]
168|     this{'values'}[nextn:4]:[ -> 7, -> 7 ] = this{'values'}[pos:2]:[ -> 7, -> 7 ]
169|     this{'values'}[pos:2]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
171|     pos = nextn:4
172|    end
139|    loop
140|     rightn = (pos:4 * 2):8
141|     leftn = ((pos:4 * 2):8 + 1):9
143|     if (rightn:8 >= sz:17):false
144|     end # if
147|     if (leftn:9 >= sz:17):false
151|     else
154|      if ((this{'values'}[pos:4][1]:7 > this{'values'}[rightn:8][1]:10):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:8][1]:10 > this{'values'}[leftn:9][1]:4):true
161|       nextn = rightn:8
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:8]:[ -> 10, -> 10 ]
168|     this{'values'}[nextn:8]:[ -> 7, -> 7 ] = this{'values'}[pos:4]:[ -> 7, -> 7 ]
169|     this{'values'}[pos:4]:[ -> 10, -> 10 ] = tmp:[ -> 10, -> 10 ]
171|     pos = nextn:8
172|    end
139|    loop
140|     rightn = (pos:8 * 2):16
141|     leftn = ((pos:8 * 2):16 + 1):17
143|     if (rightn:16 >= sz:17):false
144|     end # if
147|     if (leftn:17 >= sz:17):true
148|      if (this{'values'}[pos:8][1]:7 > this{'values'}[rightn:16][1]:1):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 17, -> 17 ]
024|   [ key:-> 17 , val:-> 17]  = h{'pop'}:sub (  ):[ -> 17, -> 17 ]
026|   println( ~msg 'key ' .. key:17 .. ' value ' .. val:17 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 15, -> 15 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 15, -> 15 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ] ] ):16 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 15, -> 15 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 16, -> 16 ], -> [ -> 15, -> 15 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ] ] ):16
129|    if (sz:16 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 16, -> 16 ]
134|    this{'values'}[1]:[ -> 1, -> 1 ] = this{'values'}[sz:16]:[ -> 1, -> 1 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61198)1, -> (0x8b611e8)1 ], -> [ -> 15, -> 15 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> <0x8b61198> , -> <0x8b611e8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61198)1, -> (0x8b611e8)1 ], -> [ -> 15, -> 15 ], -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ], -> [ -> <0x8b61198> , -> <0x8b611e8>  ] ] ):-> [ -> 1, -> 1 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:16):false
144|     end # if
147|     if (leftn:3 >= sz:16):false
151|     else
154|      if ((this{'values'}[pos:1][1]:1 > this{'values'}[rightn:2][1]:15):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:15 > this{'values'}[leftn:3][1]:14):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 15, -> 15 ]
168|     this{'values'}[nextn:2]:[ -> 1, -> 1 ] = this{'values'}[pos:1]:[ -> 1, -> 1 ]
169|     this{'values'}[pos:1]:[ -> 15, -> 15 ] = tmp:[ -> 15, -> 15 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:16):false
144|     end # if
147|     if (leftn:5 >= sz:16):false
151|     else
154|      if ((this{'values'}[pos:2][1]:1 > this{'values'}[rightn:4][1]:10):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:10 > this{'values'}[leftn:5][1]:9):true
161|       nextn = rightn:4
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:4]:[ -> 10, -> 10 ]
168|     this{'values'}[nextn:4]:[ -> 1, -> 1 ] = this{'values'}[pos:2]:[ -> 1, -> 1 ]
169|     this{'values'}[pos:2]:[ -> 10, -> 10 ] = tmp:[ -> 10, -> 10 ]
171|     pos = nextn:4
172|    end
139|    loop
140|     rightn = (pos:4 * 2):8
141|     leftn = ((pos:4 * 2):8 + 1):9
143|     if (rightn:8 >= sz:16):false
144|     end # if
147|     if (leftn:9 >= sz:16):false
151|     else
154|      if ((this{'values'}[pos:4][1]:1 > this{'values'}[rightn:8][1]:7):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:8][1]:7 > this{'values'}[leftn:9][1]:4):true
161|       nextn = rightn:8
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:8]:[ -> 7, -> 7 ]
168|     this{'values'}[nextn:8]:[ -> 1, -> 1 ] = this{'values'}[pos:4]:[ -> 1, -> 1 ]
169|     this{'values'}[pos:4]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
171|     pos = nextn:8
172|    end
139|    loop
140|     rightn = (pos:8 * 2):16
141|     leftn = ((pos:8 * 2):16 + 1):17
143|     if (rightn:16 >= sz:16):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 16, -> 16 ]
024|   [ key:-> 16 , val:-> 16]  = h{'pop'}:sub (  ):[ -> 16, -> 16 ]
026|   println( ~msg 'key ' .. key:16 .. ' value ' .. val:16 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 10, -> 10 ], -> [ -> 14, -> 14 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 10, -> 10 ], -> [ -> 14, -> 14 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ] ] ):15 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 10, -> 10 ], -> [ -> 14, -> 14 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 15, -> 15 ], -> [ -> 10, -> 10 ], -> [ -> 14, -> 14 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 12, -> 12 ] ] ):15
129|    if (sz:15 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 15, -> 15 ]
134|    this{'values'}[1]:[ -> 12, -> 12 ] = this{'values'}[sz:15]:[ -> 12, -> 12 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b64cb8)12, -> (0x8b64578)12 ], -> [ -> 10, -> 10 ], -> [ -> 14, -> 14 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> <0x8b64cb8> , -> <0x8b64578>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b64cb8)12, -> (0x8b64578)12 ], -> [ -> 10, -> 10 ], -> [ -> 14, -> 14 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 13, -> 13 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> <0x8b64cb8> , -> <0x8b64578>  ] ] ):-> [ -> 12, -> 12 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:15):false
144|     end # if
147|     if (leftn:3 >= sz:15):false
151|     else
154|      if ((this{'values'}[pos:1][1]:12 > this{'values'}[rightn:2][1]:10):true and (this{'values'}[pos:1][1]:12 > this{'values'}[leftn:3][1]:14):false):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:10 > this{'values'}[leftn:3][1]:14):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 14, -> 14 ]
168|     this{'values'}[nextn:3]:[ -> 12, -> 12 ] = this{'values'}[pos:1]:[ -> 12, -> 12 ]
169|     this{'values'}[pos:1]:[ -> 14, -> 14 ] = tmp:[ -> 14, -> 14 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:15):false
144|     end # if
147|     if (leftn:7 >= sz:15):false
151|     else
154|      if ((this{'values'}[pos:3][1]:12 > this{'values'}[rightn:6][1]:11):true and (this{'values'}[pos:3][1]:12 > this{'values'}[leftn:7][1]:13):false):false
156|      end # if
160|      if (this{'values'}[rightn:6][1]:11 > this{'values'}[leftn:7][1]:13):false
161|      else
163|       nextn = leftn:7
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:7]:[ -> 13, -> 13 ]
168|     this{'values'}[nextn:7]:[ -> 12, -> 12 ] = this{'values'}[pos:3]:[ -> 12, -> 12 ]
169|     this{'values'}[pos:3]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
171|     pos = nextn:7
172|    end
139|    loop
140|     rightn = (pos:7 * 2):14
141|     leftn = ((pos:7 * 2):14 + 1):15
143|     if (rightn:14 >= sz:15):false
144|     end # if
147|     if (leftn:15 >= sz:15):true
148|      if (this{'values'}[pos:7][1]:12 > this{'values'}[rightn:14][1]:5):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 15, -> 15 ]
024|   [ key:-> 15 , val:-> 15]  = h{'pop'}:sub (  ):[ -> 15, -> 15 ]
026|   println( ~msg 'key ' .. key:15 .. ' value ' .. val:15 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ] ] ):14 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 14, -> 14 ], -> [ -> 10, -> 10 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ] ] ):14
129|    if (sz:14 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 14, -> 14 ]
134|    this{'values'}[1]:[ -> 5, -> 5 ] = this{'values'}[sz:14]:[ -> 5, -> 5 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61fa8)5, -> (0x8b61ff8)5 ], -> [ -> 10, -> 10 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> <0x8b61fa8> , -> <0x8b61ff8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61fa8)5, -> (0x8b61ff8)5 ], -> [ -> 10, -> 10 ], -> [ -> 13, -> 13 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 12, -> 12 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ], -> [ -> <0x8b61fa8> , -> <0x8b61ff8>  ] ] ):-> [ -> 5, -> 5 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:14):false
144|     end # if
147|     if (leftn:3 >= sz:14):false
151|     else
154|      if ((this{'values'}[pos:1][1]:5 > this{'values'}[rightn:2][1]:10):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:10 > this{'values'}[leftn:3][1]:13):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 13, -> 13 ]
168|     this{'values'}[nextn:3]:[ -> 5, -> 5 ] = this{'values'}[pos:1]:[ -> 5, -> 5 ]
169|     this{'values'}[pos:1]:[ -> 13, -> 13 ] = tmp:[ -> 13, -> 13 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:14):false
144|     end # if
147|     if (leftn:7 >= sz:14):false
151|     else
154|      if ((this{'values'}[pos:3][1]:5 > this{'values'}[rightn:6][1]:11):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:6][1]:11 > this{'values'}[leftn:7][1]:12):false
161|      else
163|       nextn = leftn:7
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:7]:[ -> 12, -> 12 ]
168|     this{'values'}[nextn:7]:[ -> 5, -> 5 ] = this{'values'}[pos:3]:[ -> 5, -> 5 ]
169|     this{'values'}[pos:3]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
171|     pos = nextn:7
172|    end
139|    loop
140|     rightn = (pos:7 * 2):14
141|     leftn = ((pos:7 * 2):14 + 1):15
143|     if (rightn:14 >= sz:14):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 14, -> 14 ]
024|   [ key:-> 14 , val:-> 14]  = h{'pop'}:sub (  ):[ -> 14, -> 14 ]
026|   println( ~msg 'key ' .. key:14 .. ' value ' .. val:14 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 12, -> 12 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 12, -> 12 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ] ] ):13 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 12, -> 12 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 13, -> 13 ], -> [ -> 10, -> 10 ], -> [ -> 12, -> 12 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 6, -> 6 ] ] ):13
129|    if (sz:13 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 13, -> 13 ]
134|    this{'values'}[1]:[ -> 6, -> 6 ] = this{'values'}[sz:13]:[ -> 6, -> 6 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b625f8)6, -> (0x8b620b8)6 ], -> [ -> 10, -> 10 ], -> [ -> 12, -> 12 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> <0x8b625f8> , -> <0x8b620b8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b625f8)6, -> (0x8b620b8)6 ], -> [ -> 10, -> 10 ], -> [ -> 12, -> 12 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 11, -> 11 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> <0x8b625f8> , -> <0x8b620b8>  ] ] ):-> [ -> 6, -> 6 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:13):false
144|     end # if
147|     if (leftn:3 >= sz:13):false
151|     else
154|      if ((this{'values'}[pos:1][1]:6 > this{'values'}[rightn:2][1]:10):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:10 > this{'values'}[leftn:3][1]:12):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 12, -> 12 ]
168|     this{'values'}[nextn:3]:[ -> 6, -> 6 ] = this{'values'}[pos:1]:[ -> 6, -> 6 ]
169|     this{'values'}[pos:1]:[ -> 12, -> 12 ] = tmp:[ -> 12, -> 12 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:13):false
144|     end # if
147|     if (leftn:7 >= sz:13):false
151|     else
154|      if ((this{'values'}[pos:3][1]:6 > this{'values'}[rightn:6][1]:11):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:6][1]:11 > this{'values'}[leftn:7][1]:5):true
161|       nextn = rightn:6
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:6]:[ -> 11, -> 11 ]
168|     this{'values'}[nextn:6]:[ -> 6, -> 6 ] = this{'values'}[pos:3]:[ -> 6, -> 6 ]
169|     this{'values'}[pos:3]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
171|     pos = nextn:6
172|    end
139|    loop
140|     rightn = (pos:6 * 2):12
141|     leftn = ((pos:6 * 2):12 + 1):13
143|     if (rightn:12 >= sz:13):false
144|     end # if
147|     if (leftn:13 >= sz:13):true
148|      if (this{'values'}[pos:6][1]:6 > this{'values'}[rightn:12][1]:2):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 13, -> 13 ]
024|   [ key:-> 13 , val:-> 13]  = h{'pop'}:sub (  ):[ -> 13, -> 13 ]
026|   println( ~msg 'key ' .. key:13 .. ' value ' .. val:13 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ] ] ):12 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 12, -> 12 ], -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ] ] ):12
129|    if (sz:12 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 12, -> 12 ]
134|    this{'values'}[1]:[ -> 2, -> 2 ] = this{'values'}[sz:12]:[ -> 2, -> 2 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61330)2, -> (0x8b61380)2 ], -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> <0x8b61330> , -> <0x8b61380>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61330)2, -> (0x8b61380)2 ], -> [ -> 10, -> 10 ], -> [ -> 11, -> 11 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ], -> [ -> <0x8b61330> , -> <0x8b61380>  ] ] ):-> [ -> 2, -> 2 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:12):false
144|     end # if
147|     if (leftn:3 >= sz:12):false
151|     else
154|      if ((this{'values'}[pos:1][1]:2 > this{'values'}[rightn:2][1]:10):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:10 > this{'values'}[leftn:3][1]:11):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 11, -> 11 ]
168|     this{'values'}[nextn:3]:[ -> 2, -> 2 ] = this{'values'}[pos:1]:[ -> 2, -> 2 ]
169|     this{'values'}[pos:1]:[ -> 11, -> 11 ] = tmp:[ -> 11, -> 11 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:12):false
144|     end # if
147|     if (leftn:7 >= sz:12):false
151|     else
154|      if ((this{'values'}[pos:3][1]:2 > this{'values'}[rightn:6][1]:6):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:6][1]:6 > this{'values'}[leftn:7][1]:5):true
161|       nextn = rightn:6
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:6]:[ -> 6, -> 6 ]
168|     this{'values'}[nextn:6]:[ -> 2, -> 2 ] = this{'values'}[pos:3]:[ -> 2, -> 2 ]
169|     this{'values'}[pos:3]:[ -> 6, -> 6 ] = tmp:[ -> 6, -> 6 ]
171|     pos = nextn:6
172|    end
139|    loop
140|     rightn = (pos:6 * 2):12
141|     leftn = ((pos:6 * 2):12 + 1):13
143|     if (rightn:12 >= sz:12):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 12, -> 12 ]
024|   [ key:-> 12 , val:-> 12]  = h{'pop'}:sub (  ):[ -> 12, -> 12 ]
026|   println( ~msg 'key ' .. key:12 .. ' value ' .. val:12 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ] ] ):11 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 11, -> 11 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 8, -> 8 ] ] ):11
129|    if (sz:11 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 11, -> 11 ]
134|    this{'values'}[1]:[ -> 8, -> 8 ] = this{'values'}[sz:11]:[ -> 8, -> 8 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b63048)8, -> (0x8b62bb0)8 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> <0x8b63048> , -> <0x8b62bb0>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b63048)8, -> (0x8b62bb0)8 ], -> [ -> 10, -> 10 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 9, -> 9 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> <0x8b63048> , -> <0x8b62bb0>  ] ] ):-> [ -> 8, -> 8 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:11):false
144|     end # if
147|     if (leftn:3 >= sz:11):false
151|     else
154|      if ((this{'values'}[pos:1][1]:8 > this{'values'}[rightn:2][1]:10):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:10 > this{'values'}[leftn:3][1]:6):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 10, -> 10 ]
168|     this{'values'}[nextn:2]:[ -> 8, -> 8 ] = this{'values'}[pos:1]:[ -> 8, -> 8 ]
169|     this{'values'}[pos:1]:[ -> 10, -> 10 ] = tmp:[ -> 10, -> 10 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:11):false
144|     end # if
147|     if (leftn:5 >= sz:11):false
151|     else
154|      if ((this{'values'}[pos:2][1]:8 > this{'values'}[rightn:4][1]:7):true and (this{'values'}[pos:2][1]:8 > this{'values'}[leftn:5][1]:9):false):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:7 > this{'values'}[leftn:5][1]:9):false
161|      else
163|       nextn = leftn:5
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:5]:[ -> 9, -> 9 ]
168|     this{'values'}[nextn:5]:[ -> 8, -> 8 ] = this{'values'}[pos:2]:[ -> 8, -> 8 ]
169|     this{'values'}[pos:2]:[ -> 9, -> 9 ] = tmp:[ -> 9, -> 9 ]
171|     pos = nextn:5
172|    end
139|    loop
140|     rightn = (pos:5 * 2):10
141|     leftn = ((pos:5 * 2):10 + 1):11
143|     if (rightn:10 >= sz:11):false
144|     end # if
147|     if (leftn:11 >= sz:11):true
148|      if (this{'values'}[pos:5][1]:8 > this{'values'}[rightn:10][1]:3):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 11, -> 11 ]
024|   [ key:-> 11 , val:-> 11]  = h{'pop'}:sub (  ):[ -> 11, -> 11 ]
026|   println( ~msg 'key ' .. key:11 .. ' value ' .. val:11 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ] ] ):10 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 10, -> 10 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ] ] ):10
129|    if (sz:10 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 10, -> 10 ]
134|    this{'values'}[1]:[ -> 3, -> 3 ] = this{'values'}[sz:10]:[ -> 3, -> 3 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61410)3, -> (0x8b61728)3 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> <0x8b61410> , -> <0x8b61728>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61410)3, -> (0x8b61728)3 ], -> [ -> 9, -> 9 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 8, -> 8 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ], -> [ -> <0x8b61410> , -> <0x8b61728>  ] ] ):-> [ -> 3, -> 3 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:10):false
144|     end # if
147|     if (leftn:3 >= sz:10):false
151|     else
154|      if ((this{'values'}[pos:1][1]:3 > this{'values'}[rightn:2][1]:9):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:9 > this{'values'}[leftn:3][1]:6):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 9, -> 9 ]
168|     this{'values'}[nextn:2]:[ -> 3, -> 3 ] = this{'values'}[pos:1]:[ -> 3, -> 3 ]
169|     this{'values'}[pos:1]:[ -> 9, -> 9 ] = tmp:[ -> 9, -> 9 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:10):false
144|     end # if
147|     if (leftn:5 >= sz:10):false
151|     else
154|      if ((this{'values'}[pos:2][1]:3 > this{'values'}[rightn:4][1]:7):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:7 > this{'values'}[leftn:5][1]:8):false
161|      else
163|       nextn = leftn:5
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:5]:[ -> 8, -> 8 ]
168|     this{'values'}[nextn:5]:[ -> 3, -> 3 ] = this{'values'}[pos:2]:[ -> 3, -> 3 ]
169|     this{'values'}[pos:2]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
171|     pos = nextn:5
172|    end
139|    loop
140|     rightn = (pos:5 * 2):10
141|     leftn = ((pos:5 * 2):10 + 1):11
143|     if (rightn:10 >= sz:10):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 10, -> 10 ]
024|   [ key:-> 10 , val:-> 10]  = h{'pop'}:sub (  ):[ -> 10, -> 10 ]
026|   println( ~msg 'key ' .. key:10 .. ' value ' .. val:10 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ] ] ):9 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 9, -> 9 ], -> [ -> 8, -> 8 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 4, -> 4 ] ] ):9
129|    if (sz:9 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 9, -> 9 ]
134|    this{'values'}[1]:[ -> 4, -> 4 ] = this{'values'}[sz:9]:[ -> 4, -> 4 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61a68)4, -> (0x8b61ab8)4 ], -> [ -> 8, -> 8 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> <0x8b61a68> , -> <0x8b61ab8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61a68)4, -> (0x8b61ab8)4 ], -> [ -> 8, -> 8 ], -> [ -> 6, -> 6 ], -> [ -> 7, -> 7 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> <0x8b61a68> , -> <0x8b61ab8>  ] ] ):-> [ -> 4, -> 4 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:9):false
144|     end # if
147|     if (leftn:3 >= sz:9):false
151|     else
154|      if ((this{'values'}[pos:1][1]:4 > this{'values'}[rightn:2][1]:8):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:8 > this{'values'}[leftn:3][1]:6):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 8, -> 8 ]
168|     this{'values'}[nextn:2]:[ -> 4, -> 4 ] = this{'values'}[pos:1]:[ -> 4, -> 4 ]
169|     this{'values'}[pos:1]:[ -> 8, -> 8 ] = tmp:[ -> 8, -> 8 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:9):false
144|     end # if
147|     if (leftn:5 >= sz:9):false
151|     else
154|      if ((this{'values'}[pos:2][1]:4 > this{'values'}[rightn:4][1]:7):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:7 > this{'values'}[leftn:5][1]:3):true
161|       nextn = rightn:4
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:4]:[ -> 7, -> 7 ]
168|     this{'values'}[nextn:4]:[ -> 4, -> 4 ] = this{'values'}[pos:2]:[ -> 4, -> 4 ]
169|     this{'values'}[pos:2]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
171|     pos = nextn:4
172|    end
139|    loop
140|     rightn = (pos:4 * 2):8
141|     leftn = ((pos:4 * 2):8 + 1):9
143|     if (rightn:8 >= sz:9):false
144|     end # if
147|     if (leftn:9 >= sz:9):true
148|      if (this{'values'}[pos:4][1]:4 > this{'values'}[rightn:8][1]:1):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 9, -> 9 ]
024|   [ key:-> 9 , val:-> 9]  = h{'pop'}:sub (  ):[ -> 9, -> 9 ]
026|   println( ~msg 'key ' .. key:9 .. ' value ' .. val:9 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 7, -> 7 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 7, -> 7 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ] ] ):8 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 7, -> 7 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 8, -> 8 ], -> [ -> 7, -> 7 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ] ] ):8
129|    if (sz:8 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 8, -> 8 ]
134|    this{'values'}[1]:[ -> 1, -> 1 ] = this{'values'}[sz:8]:[ -> 1, -> 1 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61198)1, -> (0x8b611e8)1 ], -> [ -> 7, -> 7 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> <0x8b61198> , -> <0x8b611e8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61198)1, -> (0x8b611e8)1 ], -> [ -> 7, -> 7 ], -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ], -> [ -> <0x8b61198> , -> <0x8b611e8>  ] ] ):-> [ -> 1, -> 1 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:8):false
144|     end # if
147|     if (leftn:3 >= sz:8):false
151|     else
154|      if ((this{'values'}[pos:1][1]:1 > this{'values'}[rightn:2][1]:7):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:7 > this{'values'}[leftn:3][1]:6):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 7, -> 7 ]
168|     this{'values'}[nextn:2]:[ -> 1, -> 1 ] = this{'values'}[pos:1]:[ -> 1, -> 1 ]
169|     this{'values'}[pos:1]:[ -> 7, -> 7 ] = tmp:[ -> 7, -> 7 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:8):false
144|     end # if
147|     if (leftn:5 >= sz:8):false
151|     else
154|      if ((this{'values'}[pos:2][1]:1 > this{'values'}[rightn:4][1]:4):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:4][1]:4 > this{'values'}[leftn:5][1]:3):true
161|       nextn = rightn:4
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:4]:[ -> 4, -> 4 ]
168|     this{'values'}[nextn:4]:[ -> 1, -> 1 ] = this{'values'}[pos:2]:[ -> 1, -> 1 ]
169|     this{'values'}[pos:2]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
171|     pos = nextn:4
172|    end
139|    loop
140|     rightn = (pos:4 * 2):8
141|     leftn = ((pos:4 * 2):8 + 1):9
143|     if (rightn:8 >= sz:8):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 8, -> 8 ]
024|   [ key:-> 8 , val:-> 8]  = h{'pop'}:sub (  ):[ -> 8, -> 8 ]
026|   println( ~msg 'key ' .. key:8 .. ' value ' .. val:8 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 6, -> 6 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 6, -> 6 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ] ] ):7 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 6, -> 6 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 7, -> 7 ], -> [ -> 4, -> 4 ], -> [ -> 6, -> 6 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 5, -> 5 ] ] ):7
129|    if (sz:7 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 7, -> 7 ]
134|    this{'values'}[1]:[ -> 5, -> 5 ] = this{'values'}[sz:7]:[ -> 5, -> 5 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61fa8)5, -> (0x8b61ff8)5 ], -> [ -> 4, -> 4 ], -> [ -> 6, -> 6 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> <0x8b61fa8> , -> <0x8b61ff8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61fa8)5, -> (0x8b61ff8)5 ], -> [ -> 4, -> 4 ], -> [ -> 6, -> 6 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> <0x8b61fa8> , -> <0x8b61ff8>  ] ] ):-> [ -> 5, -> 5 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:7):false
144|     end # if
147|     if (leftn:3 >= sz:7):false
151|     else
154|      if ((this{'values'}[pos:1][1]:5 > this{'values'}[rightn:2][1]:4):true and (this{'values'}[pos:1][1]:5 > this{'values'}[leftn:3][1]:6):false):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:4 > this{'values'}[leftn:3][1]:6):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 6, -> 6 ]
168|     this{'values'}[nextn:3]:[ -> 5, -> 5 ] = this{'values'}[pos:1]:[ -> 5, -> 5 ]
169|     this{'values'}[pos:1]:[ -> 6, -> 6 ] = tmp:[ -> 6, -> 6 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:7):false
144|     end # if
147|     if (leftn:7 >= sz:7):true
148|      if (this{'values'}[pos:3][1]:5 > this{'values'}[rightn:6][1]:2):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 7, -> 7 ]
024|   [ key:-> 7 , val:-> 7]  = h{'pop'}:sub (  ):[ -> 7, -> 7 ]
026|   println( ~msg 'key ' .. key:7 .. ' value ' .. val:7 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ] ] ):6 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 6, -> 6 ], -> [ -> 4, -> 4 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ] ] ):6
129|    if (sz:6 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 6, -> 6 ]
134|    this{'values'}[1]:[ -> 2, -> 2 ] = this{'values'}[sz:6]:[ -> 2, -> 2 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61330)2, -> (0x8b61380)2 ], -> [ -> 4, -> 4 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> <0x8b61330> , -> <0x8b61380>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61330)2, -> (0x8b61380)2 ], -> [ -> 4, -> 4 ], -> [ -> 5, -> 5 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ], -> [ -> <0x8b61330> , -> <0x8b61380>  ] ] ):-> [ -> 2, -> 2 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:6):false
144|     end # if
147|     if (leftn:3 >= sz:6):false
151|     else
154|      if ((this{'values'}[pos:1][1]:2 > this{'values'}[rightn:2][1]:4):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:4 > this{'values'}[leftn:3][1]:5):false
161|      else
163|       nextn = leftn:3
163|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:3]:[ -> 5, -> 5 ]
168|     this{'values'}[nextn:3]:[ -> 2, -> 2 ] = this{'values'}[pos:1]:[ -> 2, -> 2 ]
169|     this{'values'}[pos:1]:[ -> 5, -> 5 ] = tmp:[ -> 5, -> 5 ]
171|     pos = nextn:3
172|    end
139|    loop
140|     rightn = (pos:3 * 2):6
141|     leftn = ((pos:3 * 2):6 + 1):7
143|     if (rightn:6 >= sz:6):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 6, -> 6 ]
024|   [ key:-> 6 , val:-> 6]  = h{'pop'}:sub (  ):[ -> 6, -> 6 ]
026|   println( ~msg 'key ' .. key:6 .. ' value ' .. val:6 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ] ] ):5 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 5, -> 5 ], -> [ -> 4, -> 4 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> 3, -> 3 ] ] ):5
129|    if (sz:5 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 5, -> 5 ]
134|    this{'values'}[1]:[ -> 3, -> 3 ] = this{'values'}[sz:5]:[ -> 3, -> 3 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61410)3, -> (0x8b61728)3 ], -> [ -> 4, -> 4 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> <0x8b61410> , -> <0x8b61728>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61410)3, -> (0x8b61728)3 ], -> [ -> 4, -> 4 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ], -> [ -> <0x8b61410> , -> <0x8b61728>  ] ] ):-> [ -> 3, -> 3 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:5):false
144|     end # if
147|     if (leftn:3 >= sz:5):false
151|     else
154|      if ((this{'values'}[pos:1][1]:3 > this{'values'}[rightn:2][1]:4):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:4 > this{'values'}[leftn:3][1]:2):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 4, -> 4 ]
168|     this{'values'}[nextn:2]:[ -> 3, -> 3 ] = this{'values'}[pos:1]:[ -> 3, -> 3 ]
169|     this{'values'}[pos:1]:[ -> 4, -> 4 ] = tmp:[ -> 4, -> 4 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:5):false
144|     end # if
147|     if (leftn:5 >= sz:5):true
148|      if (this{'values'}[pos:2][1]:3 > this{'values'}[rightn:4][1]:1):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 5, -> 5 ]
024|   [ key:-> 5 , val:-> 5]  = h{'pop'}:sub (  ):[ -> 5, -> 5 ]
026|   println( ~msg 'key ' .. key:5 .. ' value ' .. val:5 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ] ] ):4 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 4, -> 4 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ] ] ):4
129|    if (sz:4 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 4, -> 4 ]
134|    this{'values'}[1]:[ -> 1, -> 1 ] = this{'values'}[sz:4]:[ -> 1, -> 1 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61198)1, -> (0x8b611e8)1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> <0x8b61198> , -> <0x8b611e8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61198)1, -> (0x8b611e8)1 ], -> [ -> 3, -> 3 ], -> [ -> 2, -> 2 ], -> [ -> <0x8b61198> , -> <0x8b611e8>  ] ] ):-> [ -> 1, -> 1 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:4):false
144|     end # if
147|     if (leftn:3 >= sz:4):false
151|     else
154|      if ((this{'values'}[pos:1][1]:1 > this{'values'}[rightn:2][1]:3):false and _ ):):false
156|      end # if
160|      if (this{'values'}[rightn:2][1]:3 > this{'values'}[leftn:3][1]:2):true
161|       nextn = rightn:2
161|      end # if
164|     end # if
167|     tmp = this{'values'}[nextn:2]:[ -> 3, -> 3 ]
168|     this{'values'}[nextn:2]:[ -> 1, -> 1 ] = this{'values'}[pos:1]:[ -> 1, -> 1 ]
169|     this{'values'}[pos:1]:[ -> 3, -> 3 ] = tmp:[ -> 3, -> 3 ]
171|     pos = nextn:2
172|    end
139|    loop
140|     rightn = (pos:2 * 2):4
141|     leftn = ((pos:2 * 2):4 + 1):5
143|     if (rightn:4 >= sz:4):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 4, -> 4 ]
024|   [ key:-> 4 , val:-> 4]  = h{'pop'}:sub (  ):[ -> 4, -> 4 ]
026|   println( ~msg 'key ' .. key:4 .. ' value ' .. val:4 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 1, -> 1 ], -> [ -> 2, -> 2 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 1, -> 1 ], -> [ -> 2, -> 2 ] ] ):3 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 1, -> 1 ], -> [ -> 2, -> 2 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 3, -> 3 ], -> [ -> 1, -> 1 ], -> [ -> 2, -> 2 ] ] ):3
129|    if (sz:3 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 3, -> 3 ]
134|    this{'values'}[1]:[ -> 2, -> 2 ] = this{'values'}[sz:3]:[ -> 2, -> 2 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61330)2, -> (0x8b61380)2 ], -> [ -> 1, -> 1 ], -> [ -> <0x8b61330> , -> <0x8b61380>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61330)2, -> (0x8b61380)2 ], -> [ -> 1, -> 1 ], -> [ -> <0x8b61330> , -> <0x8b61380>  ] ] ):-> [ -> 2, -> 2 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:3):false
144|     end # if
147|     if (leftn:3 >= sz:3):true
148|      if (this{'values'}[pos:1][1]:2 > this{'values'}[rightn:2][1]:1):true
149|       break
149|      end # if
151|     end # if
172|    end # finish loop
174|    return res:[ -> 3, -> 3 ]
024|   [ key:-> 3 , val:-> 3]  = h{'pop'}:sub (  ):[ -> 3, -> 3 ]
026|   println( ~msg 'key ' .. key:3 .. ' value ' .. val:3 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ] ] ):2 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 2, -> 2 ], -> [ -> 1, -> 1 ] ] ):2
129|    if (sz:2 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 2, -> 2 ]
134|    this{'values'}[1]:[ -> 1, -> 1 ] = this{'values'}[sz:2]:[ -> 1, -> 1 ]
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61198)1, -> (0x8b611e8)1 ], -> [ -> <0x8b61198> , -> <0x8b611e8>  ] ] )...
135|    pop( ~array this{'values'}:[ -> [ -> (0x8b61198)1, -> (0x8b611e8)1 ], -> [ -> <0x8b61198> , -> <0x8b611e8>  ] ] ):-> [ -> 1, -> 1 ]
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:2):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 2, -> 2 ]
024|   [ key:-> 2 , val:-> 2]  = h{'pop'}:sub (  ):[ -> 2, -> 2 ]
026|   println( ~msg 'key ' .. key:2 .. ' value ' .. val:2 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ] ] )...
117|   return (size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ] ] ):1 == 0):false
023|  while  not h{'empty'}:sub (  ):0
024|   ... = h{'pop'}:sub (  )...
128|    ... = size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ] ] )...
128|    sz = size( ~arg this{'values'}:[ -> [ -> 1, -> 1 ] ] ):1
129|    if (sz:1 == 0):false
130|    end # if
133|    res = this{'values'}[1]:[ -> 1, -> 1 ]
134|    this{'values'}[1]:Null = this{'values'}[sz:1]:[ -> 1, -> 1 ]
135|    pop( ~array this{'values'}:[ -> Null ] )...
135|    pop( ~array this{'values'}:[ -> Null ] ):-> Null
138|    pos = 1
139|    loop
140|     rightn = (pos:1 * 2):2
141|     leftn = ((pos:1 * 2):2 + 1):3
143|     if (rightn:2 >= sz:1):true
144|      break
144|     end # if
172|    end # finish loop
174|    return res:[ -> 1, -> 1 ]
024|   [ key:-> 1 , val:-> 1]  = h{'pop'}:sub (  ):[ -> 1, -> 1 ]
026|   println( ~msg 'key ' .. key:1 .. ' value ' .. val:1 .. '' )...
027|  end
023|  while  not h{'empty'}:sub (  )...
117|   return (size( ~arg this{'values'}:[  ] )...
117|   return (size( ~arg this{'values'}:[  ] ):0 == 0):true
023|  while  not h{'empty'}:sub (  ):1
027|  end # finish loop