; Recursive @var rec &[a v l h] [ @if < h l @return null @var m @/ +h l 2 @? { > `m a v @!rec[a v l -m 1] < `m a v @!rec[a v +1 m h] m } ] ; Iterative @var itr &[a v] [ @vars{l 0 h #-a} @while <= l h [ @var m @/ +l h 2 @iff { > `m a v :h -m 1 < `m a v :l +m 1 @return m } ] null ]