MonoshiTonmoy/Code_Statement_Prediction_Dataset huggingface dataset:
Project Name: WattTime+pyiso
Language: Python
Statement Type: Assignment

Source Code:
def client_factory(client_name, **kwargs):
    """Return a client for an external data set"""
    # set up
    dir_name = os.path.dirname(os.path.abspath(__file__))
    error_msg = 'No client found for name %s' % client_name
    client_key = client_name.upper()

    # find client
    try:
        client_vals = BALANCING_AUTHORITIES[client_key]
        module_name = client_vals['module']

        class_name = client_vals['class']
    except KeyError:
        raise ValueError(error_msg)

    # find module
    try:
        fp, pathname, description = imp.find_module(module_name, [dir_name])
    except ImportError:
        raise ValueError(error_msg)

    # load
    try:
        mod = imp.load_module(module_name, fp, pathname, description)
    finally:
        # Since we may exit via an exception, close fp explicitly.
        if fp:
            fp.close()

    # instantiate class
    try:
        client_inst = getattr(mod, class_name)(**kwargs)
    except AttributeError:
        raise ValueError(error_msg)

    # set name
    client_inst.NAME = client_name

    return client_inst

client_factory(client_name='MISO', kwargs={})

Selected Statement: error_msg = 'No client found for name %s' % client_name

Function Input:
client_name: 'MISO'

Variable Values Before Statement:
client_name: 'MISO'

Value After Statement Execution: 'No client found for name MISO'

Variable States During Runtime (line, value):
client_name: 1
'MISO'
kwargs: 1
dir_name: 4
'/local/rcs/jinjun/code/pytrace-collector/logs/pypibugs/tried/WattTime+pyiso/WattTime+pyiso/pyiso'
error_msg: 5
'No client found for name MISO'
client_key: 6
'MISO'
client_vals: 10
module: miso
class: MISOClient
module_name: 11
'miso'
class_name: 13
'MISOClient'
fp: 19
<_io.TextIOWrapper name='/local/rcs/jinjun/code/pytrace-collector/logs/pypibugs/tried/WattTime+pyiso/WattTime+pyiso/pyiso/miso.py' mode='r' encoding='utf-8'>
pathname: 19
'/local/rcs/jinjun/code/pytrace-collector/logs/pypibugs/tried/WattTime+pyiso/WattTime+pyiso/pyiso/miso.py'
description: 19
('.py', 'r', 1)
Project Name: chen0040+pycompressor
Language: Python
Statement Type: Assignment

Source Code:
def exchange(a, i, j):
    temp = a[i]
    a[i] = a[j]
    a[j] = temp

exchange(a=[0, 100, 200, 0, 0, 0, 0, 0, 0, 0], i=2, j=1)

Selected Statement: temp = a[i]

Function Input:
a: [0, 100, 200, 0, 0, 0, 0, 0, 0, 0]
i: 2
j: 1

Variable Values Before Statement:
a: [0, 100, 200, 0, 0, 0, 0, 0, 0, 0]
i: 2

Value After Statement Execution: 200

Variable States During Runtime (line, value):
a: 1
[0, 100, 200, 0, 0, 0, 0, 0, 0, 0]
3
[0, 100, 100, 0, 0, 0, 0, 0, 0, 0]
4
[0, 200, 100, 0, 0, 0, 0, 0, 0, 0]
i: 1
2
j: 1
1
temp: 2
200
Project Name: djerbic+xlrd-ignore-writeaccess-corruption
Language: Python
Statement Type: Assignment

Source Code:
def xldate_as_tuple(xldate, datemode):
    if datemode not in (0, 1):
        raise XLDateBadDatemode(datemode)
    if xldate == 0.00:
        return (0, 0, 0, 0, 0, 0)
    if xldate < 0.00:
        raise XLDateNegative(xldate)
    xldays = int(xldate)
    frac = xldate - xldays
    seconds = int(round(frac * 86400.0))
    assert 0 <= seconds <= 86400
    if seconds == 86400:
        hour = minute = second = 0
        xldays += 1
    else:
        # second = seconds % 60; minutes = seconds // 60
        minutes, second = divmod(seconds, 60)
        # minute = minutes % 60; hour    = minutes // 60
        hour, minute = divmod(minutes, 60)
    if xldays >= _XLDAYS_TOO_LARGE[datemode]:
        raise XLDateTooLarge(xldate)

    if xldays == 0:
        return (0, 0, 0, hour, minute, second)

    if xldays < 61 and datemode == 0:
        raise XLDateAmbiguous(xldate)

    jdn = xldays + _JDN_delta[datemode]
    yreg = (ifd(ifd(jdn * 4 + 274277, 146097) * 3, 4) + jdn + 1363) * 4 + 3
    mp = ifd(yreg % 1461, 4) * 535 + 333
    d = ifd(mp % 16384, 535) + 1
    # mp /= 16384
    mp >>= 14
    if mp >= 10:
        return (ifd(yreg, 1461) - 4715, mp - 9, d, hour, minute, second)
    else:
        return (ifd(yreg, 1461) - 4716, mp + 3, d, hour, minute, second)

xldate_as_tuple(xldate=2741.0, datemode=0)

Selected Statement: frac = xldate - xldays

Function Input:
xldate: 2741.0
datemode: 0

Variable Values Before Statement:
xldate: 2741.0
xldays: 2741

Value After Statement Execution: 0.0

Variable States During Runtime (line, value):
xldate: 1
2741.0
datemode: 1
0
xldays: 8
2741
frac: 9
0.0
seconds: 10
0
second: 17
0
minutes: 17
0
hour: 19
0
minute: 19
0
jdn: 29
2417760
yreg: 30
9676699
mp: 31
66673
34
4
d: 32
3
Project Name: djerbic+xlrd-ignore-writeaccess-corruption
Language: Python
Statement Type: Assignment

Source Code:
def xldate_from_date_tuple(date_tuple, datemode):
    """Create an excel date from a tuple of (year, month, day)"""
    year, month, day = date_tuple

    if datemode not in (0, 1):
        raise XLDateBadDatemode(datemode)

    if year == 0 and month == 0 and day == 0:
        return 0.00

    if not (1900 <= year <= 9999):
        raise XLDateBadTuple("Invalid year: %r" % ((year, month, day),))
    if not (1 <= month <= 12):
        raise XLDateBadTuple("Invalid month: %r" % ((year, month, day),))
    if  day < 1 \
    or (day > _days_in_month[month] and not(day == 29 and month == 2 and _leap(year))):
        raise XLDateBadTuple("Invalid day: %r" % ((year, month, day),))

    Yp = year + 4716
    M = month
    if M <= 2:
        Yp = Yp - 1
        Mp = M + 9
    else:
        Mp = M - 3
    jdn = ifd(1461 * Yp, 4) + ifd(979 * Mp + 16, 32) + \
        day - 1364 - ifd(ifd(Yp + 184, 100) * 3, 4)
    xldays = jdn - _JDN_delta[datemode]
    if xldays <= 0:
        raise XLDateBadTuple("Invalid (year, month, day): %r" % ((year, month, day),))
    if xldays < 61 and datemode == 0:
        raise XLDateAmbiguous("Before 1900-03-01: %r" % ((year, month, day),))
    return float(xldays)

xldate_from_date_tuple(date_tuple=(1907, 7, 3), datemode=0)

Selected Statement: Yp = year + 4716

Function Input:
date_tuple: (1907, 7, 3)
datemode: 0

Variable Values Before Statement:
year: 1907

Value After Statement Execution: 6623

Variable States During Runtime (line, value):
date_tuple: 1
(1907, 7, 3)
datemode: 1
0
year: 3
1907
month: 3
7
day: 3
3
Yp: 19
6623
M: 20
7
Mp: 25
4
jdn: 26
2417760
xldays: 28
2741
Project Name: tensorlayer+TensorLayer
Language: Python
Statement Type: Assignment

Source Code:
def _add_notice_to_docstring(doc, no_doc_str, notice):
    """Adds a deprecation notice to a docstring."""
    if not doc:
        lines = [no_doc_str]

    else:
        lines = _normalize_docstring(doc).splitlines()

    notice = [''] + notice

    if len(lines) > 1:
        # Make sure that we keep our distance from the main body
        if lines[1].strip():
            notice.append('')

        lines[1:1] = notice
    else:
        lines += notice

    return '\n'.join(lines)

_add_notice_to_docstring(doc=None, no_doc_str='DEPRECATED FUNCTION', notice=['\n            .. warning::\n                **THIS FUNCTION IS DEPRECATED:** It will be removed after after 2018-09-30.\n                *Instructions for updating:* This API is deprecated. Please use as `tl.logging.warning`.\n        '])

Selected Statement: lines = [no_doc_str]

Function Input:
doc: None
no_doc_str: 'DEPRECATED FUNCTION'
notice: 
            .. warning::
                **THIS FUNCTION IS DEPRECATED:** It will be removed after after 2018-09-30.
                *Instructions for updating:* This API is deprecated. Please use as `tl.logging.warning`.
        

Variable Values Before Statement:
no_doc_str: 'DEPRECATED FUNCTION'

Value After Statement Execution: DEPRECATED FUNCTION

Variable States During Runtime (line, value):
doc: 1
None
no_doc_str: 1
'DEPRECATED FUNCTION'
notice: 1

            .. warning::
                **THIS FUNCTION IS DEPRECATED:** It will be removed after after 2018-09-30.
                *Instructions for updating:* This API is deprecated. Please use as `tl.logging.warning`.
        
9

            .. warning::
                **THIS FUNCTION IS DEPRECATED:** It will be removed after after 2018-09-30.
                *Instructions for updating:* This API is deprecated. Please use as `tl.logging.warning`.
        
lines: 4
DEPRECATED FUNCTION
18
DEPRECATED FUNCTION

            .. warning::
                **THIS FUNCTION IS DEPRECATED:** It will be removed after after 2018-09-30.
                *Instructions for updating:* This API is deprecated. Please use as `tl.logging.warning`.
Project Name: smacke+ffsubsync
Language: Python
Statement Type: Assignment

Source Code:
def make_version_tuple(vstr=None):
    if vstr is None:
        vstr = __version__
    if vstr[0] == "v":
        vstr = vstr[1:]
    components = []
    for component in vstr.split("+")[0].split("."):
        try:
            components.append(int(component))
        except ValueError:
            break
    return tuple(components)

make_version_tuple(vstr='v0.1.1')

Selected Statement: vstr = vstr[1:]

Function Input:
vstr: 'v0.1.1'

Variable Values Before Statement:
vstr: 'v0.1.1'

Value After Statement Execution: '0.1.1'

Variable States During Runtime (line, value):
vstr: 1
'v0.1.1'
5
'0.1.1'
components: 6
9
[0]
9
[0, 1]
9
[0, 1, 1]
component: 7
'0'
7
'1'
Project Name: JRCSTU+co2mpas-ta
Language: Python
Statement Type: Assignment

Source Code:
def calculate_r_wheels(tyre_dimensions):
    """
    Calculates the radius of the wheels [m] from the tyre dimensions.

    :param tyre_dimensions:
        Tyre dimensions.

        .. note:: The fields are : use, nominal_section_width, aspect_ratio,
           carcass, diameter, load_index, speed_rating, and additional_marks.
    :type tyre_dimensions: dict

    :return:
        Radius of the wheels [m].
    :rtype: float
    """
    if 'diameter' in tyre_dimensions:
        if tyre_dimensions['code'] == 'pax':
            return tyre_dimensions['diameter'] / 2000  # Diameter is in mm.
        return tyre_dimensions['diameter'] * 0.0254  # Diameter is in inches.
    a = tyre_dimensions['aspect_ratio'] / 100  # Aspect ratio is Height/Width.
    w = tyre_dimensions['nominal_section_width']
    if tyre_dimensions.get('code', 'iso') == 'iso':
        w /= 1000  # Width is in mm.
    else:
        w *= 0.0254  # Width is in inches.

    dr = tyre_dimensions['rim_diameter'] * 0.0254  # Rim is in inches.
    return a * w + dr / 2

calculate_r_wheels(tyre_dimensions={'code': 'iso', 'carcass': 'R', 'nominal_section_width': 265.0, 'use': 'LT', 'load_range': 'D', 'rim_diameter': 15.0, 'aspect_ratio': 75.0})

Selected Statement: w = tyre_dimensions['nominal_section_width']

Function Input:
tyre_dimensions: code: iso
carcass: R
nominal_section_width: 265
use: LT
load_range: D
rim_diameter: 15
aspect_ratio: 75

Variable Values Before Statement:
tyre_dimensions: code: iso
carcass: R
nominal_section_width: 265
use: LT
load_range: D
rim_diameter: 15
aspect_ratio: 75

Value After Statement Execution: 265.0

Variable States During Runtime (line, value):
tyre_dimensions: 1
code: iso
carcass: R
nominal_section_width: 265
use: LT
load_range: D
rim_diameter: 15
aspect_ratio: 75
a: 20
0.75
w: 21
265.0
23
0.265
dr: 27
0.381
Project Name: facebookresearch+detectron2
Language: Python
Statement Type: Assignment

Source Code:
def create_dummy_class(klass, dependency, message=""):
    """
    When a dependency of a class is not available, create a dummy class which throws ImportError
    when used.

    Args:
        klass (str): name of the class.
        dependency (str): name of the dependency.
        message: extra message to print
    Returns:
        class: a class object
    """
    err = "Cannot import '{}', therefore '{}' is not available.".format(dependency, klass)
    if message:
        err = err + " " + message

    class _DummyMetaClass(type):
        # throw error on class attribute access
        def __getattr__(_, __):  # noqa: B902
            raise ImportError(err)

    class _Dummy(object, metaclass=_DummyMetaClass):
        # throw error on constructor
        def __init__(self, *args, **kwargs):
            raise ImportError(err)

    return _Dummy

create_dummy_class(klass='DeformConv', dependency='detectron2._C', message='detectron2 is not compiled successfully, please build following the instructions!')

Selected Statement: err = err + " " + message

Function Input:
klass: 'DeformConv'
dependency: 'detectron2._C'
message: 'detectron2 is not compiled successfully, please build following the instructions!'

Variable Values Before Statement:
message: 'detectron2 is not compiled successfully, please build following the instructions!'

Value After Statement Execution: "Cannot import 'detectron2._C', therefore 'DeformConv' is not available. detectron2 is not compiled successfully, please build following the instructions!"

Variable States During Runtime (line, value):
klass: 1
'DeformConv'
dependency: 1
'detectron2._C'
message: 1
'detectron2 is not compiled successfully, please build following the instructions!'
err: 13
"Cannot import 'detectron2._C', therefore 'DeformConv' is not available."
15
"Cannot import 'detectron2._C', therefore 'DeformConv' is not available. detectron2 is not compiled successfully, please build following the instructions!"
_DummyMetaClass: 17
<class 'detectron2.utils.develop.create_dummy_class.<locals>._DummyMetaClass'>
_Dummy: 22
<class 'detectron2.utils.develop.create_dummy_class.<locals>._Dummy'>
Project Name: facebookresearch+detectron2
Language: Python
Statement Type: Assignment

Source Code:
def create_dummy_func(func, dependency, message=""):
    """
    When a dependency of a function is not available, create a dummy function which throws
    ImportError when used.

    Args:
        func (str): name of the function.
        dependency (str or list[str]): name(s) of the dependency.
        message: extra message to print
    Returns:
        function: a function object
    """
    err = "Cannot import '{}', therefore '{}' is not available.".format(dependency, func)
    if message:
        err = err + " " + message

    if isinstance(dependency, (list, tuple)):
        dependency = ",".join(dependency)

    def _dummy(*args, **kwargs):
        raise ImportError(err)

    return _dummy

create_dummy_func(func='deform_conv', dependency='detectron2._C', message='detectron2 is not compiled successfully, please build following the instructions!')

Selected Statement: err = err + " " + message

Function Input:
func: 'deform_conv'
dependency: 'detectron2._C'
message: 'detectron2 is not compiled successfully, please build following the instructions!'

Variable Values Before Statement:
message: 'detectron2 is not compiled successfully, please build following the instructions!'

Value After Statement Execution: "Cannot import 'detectron2._C', therefore 'deform_conv' is not available. detectron2 is not compiled successfully, please build following the instructions!"

Variable States During Runtime (line, value):
func: 1
'deform_conv'
dependency: 1
'detectron2._C'
message: 1
'detectron2 is not compiled successfully, please build following the instructions!'
err: 13
"Cannot import 'detectron2._C', therefore 'deform_conv' is not available."
15
"Cannot import 'detectron2._C', therefore 'deform_conv' is not available. detectron2 is not compiled successfully, please build following the instructions!"
_dummy: 20
<function create_dummy_func.<locals>._dummy at 0x7f3337cdfd30>
Project Name: Aareon+rtv
Language: Python
Statement Type: Assignment

Source Code:
def normalize_url(url):
    """Return url after stripping trailing .json and trailing slashes."""
    if url.endswith('.json'):
        url = url[:-5]
    if url.endswith('/'):
        url = url[:-1]
    return url

normalize_url(url='https://www.reddit.com/r/CollegeBasketball/comments/31owr1.json')

Selected Statement: url = url[:-5]

Function Input:
url: 'https://www.reddit.com/r/CollegeBasketball/comments/31owr1.json'

Variable Values Before Statement:
url: 'https://www.reddit.com/r/CollegeBasketball/comments/31owr1.json'

Value After Statement Execution: 'https://www.reddit.com/r/CollegeBasketball/comments/31owr1'

Variable States During Runtime (line, value):
url: 1
'https://www.reddit.com/r/CollegeBasketball/comments/31owr1.json'
4
'https://www.reddit.com/r/CollegeBasketball/comments/31owr1'
Project Name: spesmilo+electrum
Language: Python
Statement Type: Assignment

Source Code:
def get_logger(name: str) -> logging.Logger:
    if name.startswith("electrum."):
        name = name[9:]
    return electrum_logger.getChild(name)

get_logger(name='electrum.logging')

Selected Statement: name = name[9:]

Function Input:
name: 'electrum.logging'

Variable Values Before Statement:
name: 'electrum.logging'

Value After Statement Execution: 'logging'

Variable States During Runtime (line, value):
name: 1
'electrum.logging'
3
'logging'
Project Name: gruns+icecream
Language: Python
Statement Type: Assignment

Source Code:
def format_pair(prefix, arg, value):
    if arg is _arg_source_missing:
        arg_lines = []
        value_prefix = prefix
    else:
        arg_lines = indented_lines(prefix, arg)
        value_prefix = arg_lines[-1] + ': '

    looksLikeAString = value[0] + value[-1] in ["''", '""']
    if looksLikeAString:  # Align the start of multiline strings.
        value = prefixLinesAfterFirst(' ', value)

    value_lines = indented_lines(value_prefix, value)
    lines = arg_lines[:-1] + value_lines
    return '\n'.join(lines)

format_pair(prefix='    ', arg='multilineStr', value="'line1\nline2'")

Selected Statement: lines = arg_lines[:-1] + value_lines

Function Input:
prefix: '    '
arg: 'multilineStr'
value: "'line1\nline2'"

Variable Values Before Statement:
value_lines:     multilineStr: 'line1,                    line2'

Value After Statement Execution:     multilineStr: 'line1,                    line2'

Variable States During Runtime (line, value):
prefix: 1
'    '
arg: 1
'multilineStr'
value: 1
"'line1\nline2'"
11
"'line1\n line2'"
arg_lines: 6
    multilineStr
value_prefix: 7
'    multilineStr: '
looksLikeAString: 9
True
value_lines: 13
    multilineStr: 'line1,                    line2'
lines: 14
    multilineStr: 'line1,                    line2'
Project Name: gruns+icecream
Language: Python
Statement Type: Assignment

Source Code:
def prefixLinesAfterFirst(prefix, s):
    lines = s.splitlines(True)

    for i in range(1, len(lines)):
        lines[i] = prefix + lines[i]

    return ''.join(lines)

prefixLinesAfterFirst(prefix=' ', s="'line1\nline2'")

Selected Statement: lines[i] = prefix + lines[i]

Function Input:
prefix: ' '
s: "'line1\nline2'"

Variable Values Before Statement:
prefix: ' '

Value After Statement Execution: 'line1

 line2'

Variable States During Runtime (line, value):
prefix: 1
' '
s: 1
"'line1\nline2'"
lines: 2
'line1

line2'
5
'line1

 line2'
i: 4
1
Project Name: sweepai+sweep
Language: Python
Statement Type: Assignment

Source Code:
def call_on_comment(*args, **kwargs):
    global events
    repo_full_name = kwargs["repo_full_name"]
    pr_id = kwargs["pr_number"]
    key = f"{repo_full_name}-{pr_id}"

    # Check if a previous process exists for the same key, cancel it
    thread = events.get(key, None)
    if thread:
        terminate_thread(thread)

    thread = threading.Thread(target=run_comment, args=args, kwargs=kwargs)
    events[key] = thread
    thread.start()

call_on_comment(args=(), kwargs={'repo_full_name': 'exampleRepo', 'pr_number': 1})

Selected Statement: repo_full_name = kwargs["repo_full_name"]

Function Input:
args: ()
kwargs: repo_full_name: exampleRepo
pr_number: 1

Variable Values Before Statement:
kwargs: repo_full_name: exampleRepo
pr_number: 1

Value After Statement Execution: 'exampleRepo'

Variable States During Runtime (line, value):
args: 1
()
kwargs: 1
repo_full_name: exampleRepo
pr_number: 1
repo_full_name: 3
'exampleRepo'
pr_id: 4
1
key: 5
'exampleRepo-1'
thread: 8
None
12
<Thread(Thread-1, initial)>
14
<Thread(Thread-1, started 140445971379776)>
Project Name: jaakkopasanen+AutoEq
Language: Python
Statement Type: Assignment

Source Code:
def find_csv_columns(csv, column_separator):
    lines = csv.strip().split('\n')
    numeric_lines = [line for line in lines if column_separator in line and numeric_start.search(line)]
    n_columns = list(set([len(line.split(column_separator)) for line in numeric_lines]))
    if len(n_columns) != 1:
        raise CsvParseError('Numeric lines have different number of columns')
    n_columns = n_columns[0]
    for line in lines:
        if not numeric_start.search(line) and len(line.split(column_separator)) == n_columns:
            return [cell.strip() for cell in line.split(column_separator)]

find_csv_columns(csv='20.000\t68.334\t0\n20.250\t68.335\t0\n19998.498\t27.402\t0', column_separator='\t')

Selected Statement: n_columns = n_columns[0]

Function Input:
csv: '20.000\t68.334\t0\n20.250\t68.335\t0\n19998.498\t27.402\t0'
column_separator: '\t'

Variable Values Before Statement:
n_columns: [3]

Value After Statement Execution: 3

Variable States During Runtime (line, value):
csv: 1
'20.000\t68.334\t0\n20.250\t68.335\t0\n19998.498\t27.402\t0'
column_separator: 1
'\t'
lines: 2
20.000	68.334	0, 20.250	68.335	0, 19998.498	27.402	0
numeric_lines: 3
20.000	68.334	0, 20.250	68.335	0, 19998.498	27.402	0
n_columns: 4
[3]
7
3
line: 8
'20.000\t68.334\t0'
8
'20.250\t68.335\t0'
8
'19998.498\t27.402\t0'
Project Name: chen0040+pyalgs
Language: Python
Statement Type: Assignment

Source Code:
def exchange(a, i, j):
    tmp = a[j]
    a[j] = a[i]
    a[i] = tmp

exchange(a=[1, 2, 13, 22, 123], i=0, j=1)

Selected Statement: tmp = a[j]

Function Input:
a: [1, 2, 13, 22, 123]
i: 0
j: 1

Variable Values Before Statement:
a: [1, 2, 13, 22, 123]
j: 1

Value After Statement Execution: 2

Variable States During Runtime (line, value):
a: 1
[1, 2, 13, 22, 123]
3
[1, 1, 13, 22, 123]
4
[2, 1, 13, 22, 123]
i: 1
0
j: 1
1
tmp: 2
2
Project Name: chen0040+pyalgs
Language: Python
Statement Type: Assignment

Source Code:
def _merge(a, aux, lo, mid, hi):
        i = lo
        j = mid + 1

        for k in range(lo, hi + 1):
            aux[k] = a[k]

        for k in range(lo, hi + 1):
            if i > mid:
                a[k] = aux[j]
                j += 1
            elif j > hi:
                a[k] = aux[i]
                i += 1
            elif util.less(aux[i], aux[j]):
                a[k] = aux[i]
                i += 1
            else:
                a[k] = aux[j]
                j += 1

_merge(a=[1, 2, 4, 4, 5, 6, 7, 23, 8, 9, 20, 11, 13, 34, 66], aux=[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], lo=0, mid=3, hi=7)

Selected Statement: j = mid + 1

Function Input:
a: [1, 2, 4, 4, 5, 6, 7, 23, 8, 9, 20, 11, 13, 34, 66]
aux: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
lo: 0
mid: 3
hi: 7

Variable Values Before Statement:
mid: 3

Value After Statement Execution: 4

Variable States During Runtime (line, value):
a: 1
[1, 2, 4, 4, 5, 6, 7, 23, 8, 9, 20, 11, 13, 34, 66]
aux: 1
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
6
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
6
[1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
6
[1, 2, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
6
[1, 2, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
6
[1, 2, 4, 4, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
6
[1, 2, 4, 4, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0]
6
[1, 2, 4, 4, 5, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0]
6
[1, 2, 4, 4, 5, 6, 7, 23, 0, 0, 0, 0, 0, 0, 0]
lo: 1
0
mid: 1
3
hi: 1
7
i: 2
0
17
1
17
2
17
3
17
4
j: 3
4
11
5
11
6
11
7
11
8
k: 5
0
5
1
5
2
5
3
5
4
5
5
5
6
5
7
8
0
8
1
8
2
8
3
8
4
8
5
8
6
8
7